Postfix - Host o dominio non trovato


22

Ho appena installato Postfix sul mio Ubuntu, su una rete locale.

Su questa rete, ho un Exchange Server (usando il dominio mail.example.com). Ho avuto un problema con l'invio di un'e-mail a un indirizzo locale adress@example.com::

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)

Ho risolto questo problema usando relay_domainnel mio Postfix main.cf:

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

E nel mio /etc/postfix/transport:

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

Ora posso inviare e-mail @example.come ho testato alcune e-mail importanti (Gmail, Yahoo, Hotmail ...). Funziona. Ma perché ho riscontrato questo errore sui miei indirizzi @example.com? Come posso essere sicuro di non aver mai trovato questo errore su un altro dominio?

La mia configurazione Postfix è:

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

Potresti aggiungere l'output di postconf -n alla domanda?
ALex_hha,

Stai usando ipv6?
ALex_hha,

Ho cambiato la configurazione di postfix per usare solo ipv4 per ora. Aspetta e vedi ...
Vincent LITUR,

Risposte:


33

Il tuo server sta tentando di utilizzare IPv6 durante l'invio della posta. Dal momento mail.example.comche non ha un record AAAA (che è lo stesso di un record A, ma per IPv6), non funziona.

Se vuoi che Postfix non usi mai IPv6, puoi cambiarlo nel file di configurazione, come spiegato nella pagina 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

Se si desidera modificarlo solo per questo dominio, modificare la mappa di trasporto in modo da leggere

example.com smtp-ipv4:[mail.domain.com]

Grazie per questa spiegazione! Ho letto una documentazione in francese che diceva che ipv4 era la configurazione DEFAULT .. Ho messo ipv4 ora e ho ricaricato Postfix, sembra funzionare. Grazie ancora !
Vincent LITUR,

Dipende da quale versione di Postfix stai usando - non ricordo quale versione predefinita è impostata su quale, ma so che l'hanno cambiata almeno una volta.
Jenny D dice di reintegrare Monica il

7
Non è la connessione a fallire, ma la ricerca DNS che la precede. Quando ce l'ho inet_protocols = allnon tenta una Aricerca se una AAAAricerca fallisce, il che sembra inutile. Inoltre, se si modifica questo valore, è necessario riavviare postfix, non solo ricaricare.
Synchro,

0

La semplice configurazione di Postfix che ha funzionato per me.

/etc/postfix/main.cf

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

-5

La seguente modifica in /etc/postfix/main.cf ha risolto il problema per me.

inet_protocols = ipv6 

Cambia quanto sopra in

inet_protocols = all

9
Non aggiunge molto alla risposta accettata e, ad essere sinceri, è inutile senza il post di JennyD che fornisce la spiegazione .
Deer Hunter,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.