SMTPプロトコル

|

ポート番号25
行単位での通信を基本とし、行末はCRLF
改行する場合は行の最後に(-)を入れる。

■SMTPのやり取りの様子
220 dns1.hogehoge.local Microsoft ESMTP MAIL Service, Version: 5.0.2195.5329 ready at Wed, 16 Apr 2003 15:30:41 +0900
helo hogehoge.local               // 受信側に伝えるためのホスト名
250 dns1.hogehoge.local Hello [192.168.0.4]
mail from:<user01@hogehoge.local>        // 差出人
250 2.1.0 user01@hogehoge.local....Sender OK
rcpt to:<hogeo@example.local>         // あて先
250 2.1.5 hogeo@example.local
data                    // メッセージ本文
354 Start mail input; end with <CRLF>.<CRLF>
hogehoge
ugougo
.                      // 「.」で終了
250 2.6.0 <DNS1Fut2aRzhPhN1z1r00000003@dns1.hogehoge.local> Queued mail for delivery
quit                    // コネクション切断
221 hogehoge.local closing connection
■その他のコマンド
・NOOP   肯定応答をもとめるコマンド
・RSET   DATAコマンドを発行するまえなら、これでリセットできる。
・SEND   ユーザーにローカル配信するときに使用する。

■ESMTP

ehlo hogehoge.local           // EHLO で挨拶すると拡張コマンドが表示される
250-dns1.hogehoge.local Hello [192.168.0.4]

250-AUTH GSSAPI NTLM LOGIN 250-AUTH=LOGIN 250-TURN 250-ATRN 250-SIZE 2097152         // メッセージの最大サイズを教えてくれてる 250-ETRN 250-PIPELINING          // レシーバからの応答を待たずに連続してコマンドを発行できる 250-DSN             // DSNが宣言あるとMAILとRCPTで拡張が使える 250-ENHANCEDSTATUSCODES 250-8bitmime 250-BINARYMIME 250-CHUNKING 250-VRFY 250 OK

■リプライコードの例
250 コマンド完了
220 コネクション確立成功
221 コネクション正常切断
354 DATAコマンド受理、メッセージ待ち
※特に55xのエラーはメールシステムに関するエラーなので要注意
500 コマンド構文エラー
550 アドレスエラー。メールボックスが利用できない。
551 ユーザーがローカルではない;<順パス>を試せ
552 記憶領域の割り当てを超えたため、要求された動作を中止した。
553 メールボックス名が不正なものであるため、要求された動作を中止した。
554 トランザクションが失敗した。

このブログ記事について

このページは、くわぞうが2006年4月22日 17:31に書いたブログ記事です。

ひとつ前のブログ記事は「sendmail コマンドヘルプ」です。

次のブログ記事は「POP3プロトコル」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 4.1