Evite que sendmail realice búsquedas de DNS antes de transmitir

Evite que sendmail realice búsquedas de DNS antes de transmitir

Mi máquina (CentOS, sendmail-8.14.7-5.el7) acepta correos electrónicos de las máquinas y los reenvía todos a mi smarthost my-smarthost.mydomain.com, que a su vez tiene varios registros MX dinámicos). El correo local permanece local (usando el archivo alias).

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

Hoy noté un 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 qué sendmail intenta buscar DNS en las direcciones dentro de los correos? ¡Pensé que simplemente reenviaba todo lo que no fuera local al smarthost!

Intenté usar el truco para deshabilitar la búsqueda de DNS con

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

y así sucesivamente, pero hay un problema con eso: ¡Esto también deshabilita la búsqueda MX para el host inteligente! ¡Así que los registros MX dinámicos para mi host inteligente ya no se encuentran ni se utilizan!

¿Alguna idea de cómo evitar que sendmail haga algo más que transmitir al host inteligente?

Respuesta1

Considere usarFEATURE(nocanonify)

no canonificarNo pase direcciones a $[ ... $] para la canonificación de forma predeterminada, es decir, los nombres de host/dominio se consideran canónicos, excepto los nombres no calificados, que no deben usarse en este modo (violación del estándar). […]

Debería evitar que sendmail pregunte a DNS sobre dominios en las direcciones de encabezado.

información relacionada