outlocallogやsenderlogでメッセージIDの連番が飛んでいるがなぜか?また上限に達した場合はどうなるか? new!
メッセージIDの連番が飛んで見える場合があるのは正常な動作であり、問題ありません。
以下にメッセージIDの採番ルールを示します。
【メッセージIDが採番されるケース】
a. エンベロープ送信元(MAIL FROM)がOK判定の場合 ... 採番されます
【メッセージIDが採番されないケース】
b. エンベロープ送信元(MAIL FROM)がNG判定の場合 ... 採番されません
c. グリーティングやSMTP認証の段階で失敗した場合 ... 採番されません
上記 a. の後の処理でも採番済みのメッセージIDが使われます。
d. エンベロープの送信先(RCPT TO)でNG判定の場合
e. DATA命令以降の本文途中でNGになった場合
新しい接続があると次のメッセージIDに進むため、b. や c. のように採番されない拒絶が発生した分だけ連番が飛びます。
【連番が飛んでいる場合の調査手順】
outlocallogで番号が飛んでいる場合、以下のログを調べることで所在を確認できます。
1. SMTP受領段階で拒絶(abort)された場合
→ inlog(SMTP受信ログ)を確認し、拒絶の詳細は receivelog(SMTP受信詳細ログ)を参照
2. SMTP受領はOKだが外部アカウント宛に配送された、または配送失敗した場合
→ outlog(SMTP送信ログ)または faillog(配送失敗ログ)を参照
いずれかのログに該当するメッセージIDが見つかれば問題ありません。
なお、acceptlogに採番済みのメッセージIDが記録されているのにreceivelogに見当たらないケースもあります(下記FAQ参照)。
【メッセージIDが上限に達した場合】
メッセージIDの数字は10桁(B0000000000〜B4294967295)あります。上限に達した後は再びB0000000000からカウントアップされます。
(関連FAQ)
●acceptlogにメッセージIDが出ているのにreceivelogに見つからないケースがある理由
●ログに記録されるメッセージIDの後の枝番種類について