マイコンピュータ(CentOS、sendmail-8.14.7-5.el7)は、コンピュータから電子メールを受け入れ、それらをすべて自分のスマートホストに転送します。my-smarthost.mydomain.com
スマートホストには複数の動的MXレコードがあります。ローカルメールは、エイリアスファイルを使用してローカルにアーカイブされます。
sendmail.mc:
define(`SMART_HOST', `smtp:my-smarthost.mydomain.com')dnl
今日私は問題を見つけました:
# mailq
/var/spool/mqueue (1 request)
-----Q-ID----- --Size-- -----Q-Time----- ------------Sender/Recipient-----------
02AG1YBC023172 1239 Tue Mar 10 17:01 <[email protected]>
8BITMIME (host map: lookup (non-domain.com): deferred)
<[email protected]>
# sendmail -v -q
Running /var/spool/mqueue/02AG1YBC023172 (sequence 1 of 1)
non-domain.com: Name server timeout
<[email protected]>... Transient parse error -- message queued for future delivery
sendmailがDNSを介して電子メールのアドレスを見つけようとしているのはなぜですか?私の考えでは、ローカルではないすべてのコンテンツをスマートホストに配信していると思います!
このトリックを使ってDNSルックアップを無効にしてみました。
define(`confSERVICE_SWITCH_FILE',`/etc/mail/service.switch')dnl
ちょっと待ってください。しかし、問題があります。これにより、スマートホストのMX検索も無効になります。その結果、私のスマートホストの動的MXレコードは検索/使用されなくなりました!
sendmailがスマートホストに中継する以外の何もしないようにする方法についてのアイデアはありますか?
答え1
使用を検討してくださいFEATURE(nocanonify)
標準化されていないデフォルトでは、正規化のためにアドレスを $[...$] に渡さないでください。つまり、ホスト/ドメイン名は、このモードで使用してはならない正規化されていない名前を除いて正規と見なされます(標準違反)。 [… ]
Sendmailがヘッダーアドレスのドメインに対してDNSを要求するのを防ぐ必要があります。