SMTPエラー/ステータスコード

メールサーバーのセッションログや、エラーメッセージの件名や本文で「550 The email account does not exist.」のように、メッセージの最初に3ケタの数字が入っているのを見た事はありませんか?

この3ケタの数字は、SMTP Status Codeと呼ばれていて、それぞれの意味はRFCに準拠しています。
異常時の原因切り分けの目安としてご利用ください。

・SMTPステータスコード

ステータスコードは3桁の数字で構成され、その1桁目で、大きく5種類に分けられます。

コード番号 エラー内容
2XX コマンド成功
3XX コマンド成功->続きのデータ要求
4XX 一時的なエラー
5XX コマンドエラー

・SMTPの応答コード

以下、SMTPの応答コードについて説明します。

応答コード RFC原文 日本語訳
421 (domain) Service not available,closing transmission channel [This may be a reply to any command if the service knows it must shutdown] (ドメイン)サービスが提供されていません。送信チャネルが閉じています。サービス側はサーバーのシャットダウンによりコマンドに応答する場合があります。
450 Requested mail action not taken: mailbox unavailable[E.g., mailbox busy] 要求された動作が実行できませんでした。メールボックスが利用できない状態など。
451 Requested action aborted: local error in processing 要求された処理が中断しました。処理中にサーバーでエラーが発生しました。
452 Requested action not taken: insufficient system storage 要求された処理が実行されませんでした。システムに十分なメモリー容量がありません。
500 Syntax error, command unrecognized [This may include errors such as command line too long] 引数やパラメータに構文エラーがあります。これには、コマンド行が長すぎる等も含まれます。
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 [E.g., mailbox not found, no access] 要求されたメール処理は実行されませんでした。メールボックスが提供されていません。(例:メールボックスが存在しない、アクセスできないなど)
551 User not local; please try ユーザーが正しくありません。パスを確認してください。
552 Requested mail action aborted: exceeded storage allocation 要求されたメール処理は中断されました。メモリーの割り当てを超えました。
553 Requested action not taken: mailbox name not allowed [E.g., mailbox syntax incorrect] 要求された動作が実行できませんでした。メールボックスの名前が許可されたものでないなど(メールボックスの構文が不正確)
554 Transaction failed 処理が失敗しました。