Postfix - Host o dominio no encontrado

22

Acabo de instalar Postfix en mi Ubuntu, en una red local.

En esta red, tengo un servidor de Exchange (usando el dominio mail.example.com). Tuve un problema al enviar un correo electrónico a una dirección local [email protected]:

relay=none, delay=0.01, delays=0.01/0/0/0, dsn=4.3.5, status=deferred 
(Host or domain name not found. Name service error for name=example.com
type=AAAA: Host found but no data record of requested type)

Resolví este problema usando relay_domainen mi Postfix main.cf:

relay_domains = example.com
transport_maps = hash:/etc/postfix/transport

Y en mi /etc/postfix/transport:

example.com smtp:[mail.example.com]

Ahora puedo enviar correos @example.comy he probado algunos de los principales correos web (Gmail, Yahoo, Hotmail ...). Funciona. ¿Pero por qué recibí este error en mis direcciones @example.com? ¿Cómo puedo estar seguro de que nunca encuentro este error en otro dominio?

Mi configuración de Postfix es:

postconf -n

alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
inet_interfaces = all
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
mydestination = SRVWEB, localhost.localdomain, localhost
myhostname = SRVWEB
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
myorigin = /etc/mailname
readme_directory = no
recipient_delimiter = +
relay_domains = mutuelle-var.fr
relayhost =
smtp_generic_maps = hash:/etc/postfix/generic
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_use_tls = yes
transport_maps = hash:/etc/postfix/transport
Vincent LITUR
fuente
¿Podría agregar salida de postconf -n a la pregunta?
ALex_hha
¿Estás usando ipv6?
ALex_hha
Cambié la configuración de postfix para usar solo ipv4 por ahora. Espere y vea ..
Vincent LITUR

Respuestas:

33

Su servidor está intentando usar IPv6 cuando envía el correo. Dado mail.example.comque no tiene un registro AAAA (que es lo mismo que un registro A, pero para IPv6), eso no funciona.

Si desea que Postfix nunca use IPv6, puede cambiar eso en el archivo de configuración, como se explica en la página del comando man postconf (5):

When IPv6 support is enabled via the inet_protocols parameter,  Post-
fix will do DNS type AAAA record lookups.

When  both IPv4 and IPv6 support are enabled, the Postfix SMTP client
will attempt to connect via IPv6 before attempting to use IPv4.

Examples:

inet_protocols = ipv4
inet_protocols = all (DEFAULT)
inet_protocols = ipv6
inet_protocols = ipv4, ipv6

Si desea cambiarlo solo para este dominio, cambie su mapa de transporte para leer

example.com smtp-ipv4:[mail.domain.com]
Jenny D dice Reinstate Monica
fuente
¡Gracias por esta explicación! Leí una documentación en francés que decía que ipv4 era la configuración PREDETERMINADA. Pongo ipv4 ahora, y he recargado Postfix, parece funcionar. Gracias de nuevo !
Vincent LITUR
Depende de la versión de Postfix que esté utilizando; no recuerdo qué versión predeterminada tiene cuál, pero sé que la cambiaron al menos una vez.
Jenny D dice Reinstate Monica
77
No es la conexión la que falla, sino la búsqueda de DNS que la precede. Cuando lo tengo inet_protocols = all, no intenta una Abúsqueda si AAAAfalla una búsqueda, lo que parece inútil. Además, si cambia este valor, debe reiniciar postfix, no solo recargar.
Sincronización del
0

La configuración simple de Postfix que funcionó para mí.

/etc/postfix/main.cf

myhostname = localhost.testing.com
myorigin = testing.com
relayhost =
inet_protocols = ipv4
inet_interfaces = loopback-only
mydestination =
Joseph
fuente
-5

El siguiente cambio en /etc/postfix/main.cf me resolvió el problema.

inet_protocols = ipv6 

Cambie lo anterior a

inet_protocols = all
selche
fuente
99
No agrega mucho a la respuesta aceptada y, para ser sincero, es inútil sin la publicación de JennyD que proporciona la explicación .
Deer Hunter