SMTP (Simple Mail Transfer Protocol)
SMTPとは
SMTP (Simple Mail Transfer Protocolの略、読み:エスエムティーピー)は、電子メールを送信する際に使用するプロトコルです。
SMTPはIETF(Internet Engineering Task Forceの略、読み:アイイーティーエフ)において標準化されたメール転送のためのプロトコルであり、2回の改訂を経て1982年8月に簡易メール転送プロトコル(SMTP)という名称で標準化されています。

IETFとは、インターネットで利用される技術の標準化を推進する任意団体の一つです。
OSI参照モデル そして TCP/IP のアプリケーション層 で動作し、トランスポート層 では TCP を使用、そしてメールサーバにアクセスするために使用しているポート番号は「25」です。
メール送受信の流れ
SMTPを利用したメール送受信の簡単な流れを説明します。
送信者はメーラーと呼ばれるメールソフトやWebメールからメールを送信します。この時に使用するプロトコルのがSMTPです。送信したメールは、まず送信側のメールを管理しているメールサーバに送られます。
スポンサーリンク
そして、受信側のメールを管理しているメールサーバへとメールを転送します。ここまででSMTPの役割は終了です。
あとは、受信者がメールサーバにPOP3 もしくは IMAPを利用して受信者のメールを管理しているメールサーバにメールがないかの問い合わせを行います。(メールの問い合わせを行う際は「ユーザ名」と「パスワード」情報を送り認証を行う)
問い合わせの結果、メールがあればメールを受信できます。
SMTPコマンド
SMTPの主なコマンドは次の通りです。
| コマンド名 | 説明 | 
| EHLO | メールサーバに対して応答の確認をし、接続を開始する | 
| FROM:<送信元メールアドレス>の形式で送信元のメールアドレスをメールサーバに送る | |
| RCPT | TO:<宛先メールアドレス>の形式で送信先のメールアドレスをメールサーバに送る。宛先が複数存在する場合は、その回数分コマンドを実行する | 
| DATA | メール本文をメールサーバに送る | 
| QUIT | メールサーバとの接続を終了する | 
| RSET | メールサーバとの接続を中断・中止する | 
SMTPのコマンドに対する主な応答コードは次の通りです。
| 応答コード | 説明 | 
| 200番台 | 成功 | 
| 300番台 | コマンドは成功し、追加の情報を待っている状態。DATAコマンドへの応答に354(Start mail input; end with <CRLF>.<CRLF>)が使われる | 
| 400番台 | 一時的なエラー | 
| 500番台 | 永続的なエラー | 
helpful
 この記事は役に立ちましたか?
 
 
