SMTPとは? コマンドと応答コード (ステータスコード, response code) の一覧

ITで知っておくべき知識
スポンサーリンク

SMTPコマンドと応答コードの一覧をまとめてみました。

スポンサーリンク

SMTPとは

SMTPとは、Simple Mail Transfer Protocol(シンプル メール トランスファー プロトコル)の略です。

インターネットで電子メールを転送するプロトコルです。

ポート番号としては25, 465, 587を使用します。

各ポートの意味は次の通りです。

 

25番ポート
暗号化なしの通信で使います。

465番ポート
SMTPS(over SSL)を使用するときに使います。

587番ポート
STARTTLSを使用するときに使います。

SMTPコマンド 一覧

SMTPコマンドの一覧は以下の通りです。

SMTPコマンドを使うと、WindowsやLinuxのコマンドプロンプトからメール送信テストが可能です。

コード 書式 意味 対応する応答コード
成功 失敗
HELO HELO <SP> <domain> <CRLF> 肯定的事前応答 250 504, 550
MAIL MAIL <SP> FROM:<reverse-path> <CRLF> 発信者の指定 250 552, 451, 452, 550,
553, 503
RCPT RCPT <SP> TO:<forward-path> <CRLF> 受信者の指定 250, 251 550, 551, 552, 553,
450, 451, 452, 503
DATA DATA <CRLF> 本文の送信 250, 354 451, 554, 503, 552,
554, 451, 452
RSET RSET <CRLF> 処理の中断 250
SEND SEND <SP> FROM:<reverse-path> <CRLF> 発信者の指定 250 450, 552, 451, 452,
550, 553, 503
SOML SOML <SP> FROM:<reverse-path> <CRLF> 発信者の指定 250 450, 552, 451, 452,
550, 553, 503
SAML SAML <SP> FROM:<reverse-path> <CRLF> 発信者の指定 250 450, 552, 451, 452,
550, 553, 503
VRFY VRFY <SP> <string> <CRLF> 受信者の確認 250, 251, 252 550, 551, 553, 502,
504,
EXPN EXPN <SP> <string> <CRLF> メーリングリストの会員アドレスの要求 250, 252 550, 500, 502, 504
HELP HELP [<SP> <string>] <CRLF> ヘルプメッセージの要求 211, 214 502, 504
NOOP NOOP <CRLF> ダミーコマンド 250
QUIT QUIT <CRLF> 処理の終了 221
TURN TURN <CRLF> クライアントとサーバの役割の逆転 250 502, 500, 503

各記号は以下の意味です。

<domain> = ドメイン名
<forward-path> = 順方向パス
<reverse-path> = 逆方向パス
<string> = 文字列
<SP> = スペース
<CRLF> = 改行

SMTP応答コード (ステータスコード、response code) 一覧

SMTPの応答コード一覧をまとめますが、SMTP応答コードの2桁目の数字は、次の意味を持っています。

コード ステータス 意味
x0x Syntax 文法 文法エラーまたは未実装や不適切なコマンド
x1x Information 情報 ステータスやヘルプ要求への応答
x2x Connections 接続 通信チャネルに関する応答
x5x Mail system メールシステム 受信側メールシステムの問題等のステータス

x3x、x4xは未定義です。

 

SMTP応答コード 一覧は、次の通りです。

コード ステータス
意味
1xx Positive Preliminary reply 肯定的事前応答
2xx Positive Completion reply 肯定的完了応答
211 System status, or system help reply システム・ステータスまたはシステム・ヘルプ応答
ステータスやヘルプ要求への応答。
214 Help message ヘルプ・メッセージ
利用方法、特定の非標準コマンドの意味などの、人間にとってのみ有用な情報。
220 <domain> Service ready サービス準備完了
通信が正常終了し、サービスの準備が完了した。
221 <domain> Service closing transmission channel サービスは通信チャネルを閉じている
通信が正常終了し、サービスを閉じます。
235 Authentication successful 認証成功
クライアントの認証に成功した。
250 Requested mail action okay, completed 要求されたメール処理可能、完了
要求された処理が実行可能となり、完了した。
251 User not local; will forward to [forward-path] ユーザはローカルに存在せず;[forward-path]に転送
受信者が存在しないため、[forward-path]に転送される。
252 Cannot VRFY user, but will accept message and attempt delivery ユーザを確認できないが、メッセージを受け入れて配送を試みる
3xx Positive Intermediate reply 肯定的中間応答
354 Start mail input; end with <CRLF>.<CRLF> メールの入力を開始せよ;<改行>.<改行>で終了
メールの入力を開始する。「改行」.「改行」で終了する。
4xx Transient Negative Completion reply 一時的な否定的完了応答
421 <domain> Service not available, closing transmission channel サービスは利用不可、通信チャネルを閉じる
サービスが利用できないため、通信を閉じる。
450 Requested mail action not taken: mailbox unavailable 要求されたメール処理は実行されない;メールボックス利用不可
メールボックスが利用できないため、要求された処理は実行できない。
451 Requested action aborted: local error in processing 要求された処理を中断:処理中にローカル・エラー
処理中にエラーが発生したため、要求された処理は失敗した。
452 Requested action not taken: insufficient system storage 要求された処理は実行されない;システム記憶装置不足
システム容量が不十分なため、要求された処理は実行できない。
5xx Permanent Negative Completion reply 恒久的な否定的完了応答
500 Syntax error, command unrecognized 文法エラー、コマンドが理解不能
文法に間違いがあるため、コマンドが理解できない。長すぎるコマンドによるエラーを含む。
501 Syntax error in parameters or arguments パラメータまたは引数の文法エラー
パラメータまたは引数の文法に誤りがある。
502 Command not implemented コマンド未実装
指示されたコマンドが実装されていない。
503 Bad sequence of commands 不正なコマンド順序
コマンドの発行順序が間違っている。
504 Command parameter not implemented コマンド・パラメータ未実装
コマンドのパラメータが実装されていない。
550 Requested action not taken: mailbox unavailable 要求された処理は実行されない;メールボックス利用不可
メールボックスが利用できないため、要求された処理は実行できない。
551 User not local; please try [forward-path] ユーザはローカルに存在せず;[forward-path]を試行せよ
受信者が存在しないため、[forward-path]への転送を試してみる必要がある。
552 Requested mail action aborted: exceeded storage allocation 要求されたメール処理を中断:記憶装置の割り当て超過
メールボックスの容量超過のため、要求された処理は失敗した。
553 Requested action not taken: mailbox name not allowed 要求された処理は実行されない;メールボックス名は不許可
メールボックスの名前が不適切なため、要求された処理は実行できない。
554 Transaction failed 処理失敗
処理に失敗したか、接続開始時の応答の場合は「SMTPサービスが存在しない」。

 

コメント