Impedir que o sendmail faça pesquisas de DNS antes de retransmitir

Impedir que o sendmail faça pesquisas de DNS antes de retransmitir

Minha máquina (CentOS, sendmail-8.14.7-5.el7) aceita e-mails de máquinas e encaminha todos eles para meu smarthost my-smarthost.mydomain.com, que por sua vez possui vários registros MX dinâmicos). O correio local permanece local (usando o arquivo de alias).

sendmail.mc:
define(`SMART_HOST', `smtp:my-smarthost.mydomain.com')dnl

Hoje notei um problema:

# 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

Por que o sendmail tenta pesquisar no DNS os endereços dentro dos e-mails? Achei que apenas encaminhasse tudo que não fosse local para o smarthost!

Tentei usar o truque para desativar a pesquisa de DNS com

define(`confSERVICE_SWITCH_FILE',`/etc/mail/service.switch')dnl

e assim por diante, mas há um problema com isso: isso também desativa a pesquisa MX para o smarthost! Portanto, os registros MX dinâmicos do meu smarthost não são mais encontrados/usados!

Alguma idéia de como impedir que o sendmail faça qualquer coisa, exceto retransmitir para o smarthost?

Responder1

Considere usarFEATURE(nocanonify)

nocanonificarNão passe endereços para $[ ... $] para canonização por padrão, ou seja, nomes de host/domínio são considerados canônicos, exceto nomes não qualificados, que não devem ser usados ​​neste modo (violação do padrão). […]

Isso deve impedir o sendmail de perguntar ao DNS sobre domínios em endereços de cabeçalho.

informação relacionada