たとえば、postmaster @ grassvalley.comと[email protected]に電子メールを送信しようとしています。どちらの場合も、これらはOutlookメールボックスです。
接尾辞の返信:
(ipv6が有効な場合):
06F908112E 606 Thu Jun 19 10:20:40 [email protected]
(Host or domain name not found. Name service error for name=grassvalley-com.mail.protection.Outlook.com type=AAAA: Host not found, try again)
[email protected]
(ipv4のみ):
6946720087D 3117 Tue Jun 17 21:41:07 [email protected]
(delivery temporarily suspended: Host or domain name not found. Name service error for name=grassvalley-com.mail.protection.Outlook.com type=A: Host not found, try again)
[email protected]
DNSをチェックすると、応答があります(Google DNS、IPv6のみのDNS、Leaseweb DNS、OpenDNSを試しましたが、常に同じです)。
grassvalley-com.mail.protection.Outlook.com. 7 IN A 207.46.163.138
grassvalley-com.mail.protection.Outlook.com. 7 IN A 207.46.163.170
grassvalley-com.mail.protection.Outlook.com. 7 IN A 207.46.163.247
したがって、正しいA応答があります。
さて、問題を引き起こしていると思われるのは、7秒という途方もなく低いTTL)であり、これらのOutlookドメインへのすべてのDNS応答に2秒以上かかることです:Query time: 2039 msec.
これにより、Postfixがタイムアウトし、電子メールが送信されなくなります。
このコマンドを実行するとDig grassvalley-com.mail.protection.Outlook.com && postfix flush
電子メールは実際に送信されます。これは7秒の時間枠内に発生するためです(DNSはまだキャッシュされています)。
Postfixにタイムアウトをそれほど速くしないように指示できますか?バインドにOutlookからTTL <7秒を無視して、たとえば2時間キャッシュするように指示できますか?
options timeout:1 attempts:1
にresolv.conf
がありました。タイムアウトを1秒ではなく3秒に変更すると、問題が解決しました。
options timeout:3 attempts:1
そして、必ずnotこの行をmain.cf
構成に含めるようにしてください。
smtp_Host_lookup = dns, native