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
この記事は役に立ちましたか?