Deliverability Centerを利用してバウンスメールの理由を確かめる

この記事は Introducing the Deliverability Center の抄訳です。

個人、業務利用に限らずメールを日常的に送信している場合、メールサーバからのレスポンスコードの意味がわからず困ったことがあるのではないでしょうか。
送信したメールが宛先サーバに受理されなかった場合、レスポンスコードが送り返されます。送り返してくるのは、Yahoo!やGmailなどのISPや、自前で構築したMTAですが、大抵の場合、分かりにくく、何が起こっているか理解するのに苦労します。
どんなものがあるか見てみましょう。

550 5.7.1 RESOLVER.RST.NotAuthorized; not authorized
ん?何が認証されていない?誰に?どこで?

554 Reject by behaviour spam
“behaviour spam”って誰?なんで自分のメールが拒否されたんだ?

500 SMTP Error: Data not accepted
・・・・

Deliverability Centerのススメ

Deliverability Center
こういったほとんど暗号を読み解くような作業に苦労している方々に朗報です。SendGridでは新プロジェクトとして”Deliverability Center”をリリースしました。Deliverability Centerは最小限の労力で問題を理解し、解決するための知見を提供することを目的として作成されたツールです。
Deliverability Centerは各種MTAからのレスポンスコードのレポジトリのようなもので、それぞれを解決するための最善の方法を探すことが出来ます。SendGridサポートのこれまでの経験、ノウハウが蓄積されていますので意味の分からなかったエラーコードを理解する手助けとなるでしょう。

一つ例にとって見ます。
421 Too many concurrent SMTP connections; please try again later.

Our suggestion:
At any one time, SendGrid’s servers are establishing connections to mail servers across the world. Some mail servers have a connection limitation to “throttle” the amount of incoming mail in order to keep their servers from crashing. If too many connections attempt to be established, the recipient server can initiate a control that terminates existing and new connections. SendGrid is not able to limit the number of connections made to a recipient mail server. Our recommendation here would be to either contact the IT admin or postmaster of the respective server to see if the maximum connection limitation can be increased, or to slow down the rate of sending to this domain from the sender from your sending application.

(要約)
メールサーバの中には、クラッシュを防ぐためにコネクション数を制限し、流入するメールの量を抑制する動作をするものがあります。SendGridでは相手側のサーバに対するコネクション数をコントロールすることは出来ないので、制限の緩和をリクエストするか、当該のメールサーバへの時間あたりの送信数を抑えるといった対策をとって下さい。

どうでしょうか、かなりわかりやすくなったと思いませんか?もちろんメールの世界は日々進化していますので、SendGridでは継続的に新しいレスポンスコードや対策案を追加していきます。現状はメジャーなMTAの情報しか確認は出来ませんが、今後増強していきますのでご期待下さい。
もし、意味の分からないレスポンスコードがあった場合は、こちらからご連絡下さい。調査、確認ののち、対策案も含め追加します。

【構造計画研究所SendGridチームよりコメント】
Deliverability Centerは英語での確認となっていますが、バウンス、ブロックの原因究明がかなりやりやすくなります。
バウンス対策に苦労されているユーザの皆様是非ご活用下さい!

参考