Describe SMTP/一時エラー here.
1. SMTP 一時エラー返答とは
spam が疑わしい接続に対して、一時的エラー返答を返す戦術です。
SMTP サーバから一時エラー(4xx reply)の返事を受け取った SMTP クライアント は 30 分以上待って再送信することになっています。 しかし、spam の多くは再送信してきません。
返答コード 4xx は一時的にメイルを受信できない状況にあることを示すものであり、 恒久的に受信しないことを示す 5xx とは区別すべきものです。
一時エラーに対して、直ちに再接続してくるものは spam です。
また、過去の観察データによると、 再送する spam でも 23 分間以上接続させないと 多くは送信を諦めるようです。
通常のサーバは 30分以上待ってから再送信しますから、影響を受けません。
[http://im.qmail.jp/ignorant/ SMTP reply を理解しない送信サーバ] はインターネットに接続する資格はありません。
1.1. 再送信
お馴染さん方式などで spam 判別のために利用します。 多くの spam は再送してきません。
[http://www.zvon.org/tmRFC/RFC2821/Output/chapter4.html#sub5 RFC 2821 4.5.4. Retry Strategies]
SMTP の RFC (2821, 821, 1123)
1.2. 再送してこないホストについて
再送しないホストは確実に送信するよりも、 高速に多数のメイルを送信することを目的にしていると想像できます。
再送しないホストからのメイルを確実に受信する方法はありません。
- ホワイトリストに登録しても確実とは言えません。
- ネットワークがあふれたことがないなら幸せです。(相手の環境も含む)
- DNS が常に確実に動作すると思っているなら幸せです。
- 受信側のメイルボックスのあふれでエラーを返すことがない環境にいるなら幸せです。
- メイル爆弾やバウンスメイルに悩まされたことがないなら幸せです。
- メイルが遅延なく受信できるなら幸せです。
1.3. サーバプール問題
大規模サイトに多いのですが、 別のホストからメイルを再送してくるケースがあります。
よく知られているドメインは greylisting の whitelist にありますので、 事前に whitelist を作っておくのがいいでしょう。