SMTPとは

/システム

SMTP(Simple Mail Transfer Protocol)とは、インターネットで電子メール(以下、メール)を転送するプロトコルです。

メッセージ形式

メールメッセージはヘッダとボディに分かれます。ヘッダは複数のヘッダフィールドで構成され、件名や宛先などの情報が含まれています。ボディはメール本文に当ります。

ヘッダフィールドの情報は以下になります。

Date: 曜日・日・月・年・時・分・秒・タイムゾーンを表示。
[Date: WW, DD MM YYYY HH:MM:SS +0900]
From: メールの作成者の名前・メールアドレスを表示。
[From: “NAME” <NNNN@XXXX.co.jp>]
Message-ID: メールを一意に識別する「msg-id」が指定。
TO:/CC:/BCC: メールの宛先を表示。
Received: トレースフィールド、経由したメールサーバの処理の記録。
[Received: from XXXX.co.jp ([***.***.***.***])]

通信手順

メールクライアント(MUA:Mail User Agent)がメールサーバ(MTA:Mail Transfer Agent)にメ-ルを送信する手順は以下になります。

メールクライアント 方向 メールサーバ
メールサーバへ接続(Connected to -)


オープニングメッセージを応答
クライアント情報を送信[EHLO]


サポートしている拡張機能を応答
メッセージの差出人を指定[MAIL FROM]


確認を応答
メッセージの宛先を指定[RCPT TO]


確認を応答
メッセージの送信開始を要求[DATA]


確認を応答
メッセージの送信


確認を応答
切断を要求[QUIT]


確認を応答
切断(Connection closed by -)

SMTPコマンド

SMTPコマンドは、メールの送信や情報の確認に使われます。主なSMTPコマンドは以下になります。

コマンド 内容
HELO(Hello)
EHLO(Extended Hello)
クライアントの接続元の確認
MAIL(Mail) メッセージの送信者の指定
RCPT(Recipitent) メッセージの受信者の指定
DATA(Data) メッセージの送信開始を指定
RSET(Reset) 接続状態のリセット
QUIT(Quit) セッションの切断

SMTP応答コード

SMTP応答コードは3桁で構成され、最初の1桁目は応答が成功/失敗したといったコマンドの結果が分かるようになっています。

コード 内容
1yz コマンドの確認待ち
2yz コマンドの成功
・220:サービスの準備完了(Service ready)
・221:転送チャネルを閉じる(Service closing transmission channel)
・250:正常終了(Requested mail action okay, completed)
3yz コマンド途中の応答
・354:メールメッセージの入力(Start mail input; end with <CRLF>)
4yz 一時的なエラー
・451:コマンドが中断(Requested action aborted; error in processing)
5yz 恒久的なエラー
・500:構文エラー(Syntax error, command unrecognized)

 

IT
マネジメント、セキュリティ、ネットワーク、システム
散策路TOP
古典物理、量子力学、物性論、数学、応用数学、力学、電磁気学、相対論、熱・統計力学、解析学、代数学、幾何学、統計分析、情報

Wikipedia

 

タイトルとURLをコピーしました