Come appare il messaggio
postfix/smtp[2314]: 4F1A2B3C4D: to=<kunde@example.net>, relay=none, delay=0.5, dsn=4.4.3, status=deferred (Host or domain name not found. Name service error for name=example.net type=MX: Host not found, try again)Cause frequenti
- Il resolver DNS è irraggiungibile o configurato male:
/etc/resolv.conf, systemd-resolved o una porta 53 bloccata. - Postfix gira in chroot e lì non trova una copia di
resolv.conf. - Il dominio del destinatario ha un errore di battitura, nessun record MX o A, oppure i suoi name server non rispondono.
- Un firewall locale blocca le query DNS in uscita.
- Un'interruzione DNS breve: “try again” significa che l'errore è temporaneo.
Verifica
- La query funziona dalla shell?
- Quale resolver è configurato?
cat /etc/resolv.conf - Il chroot di Postfix ha una copia propria?
ls -l /var/spool/postfix/etc/resolv.conf - Impostazioni Postfix collegate
postconf -n | grep -E 'disable_dns_lookups|smtp_host_lookup|myhostname'
Soluzione
- Ripara il resolver, oppure installa un resolver locale con cache come unbound, così il DNS non fallisce più.
- Aggiorna la copia nel chroot e riavvia:
cp /etc/resolv.conf /var/spool/postfix/etc/resolv.conf && systemctl restart postfix. - Controlla l'indirizzo del destinatario per errori di battitura e il dominio con
dig MX. - Consenti nel firewall la porta 53 UDP e TCP in uscita.
- Dopo la correzione rilancia la coda:
postqueue -f.
Domande frequenti
“try again” è un errore permanente?
No. È un errore temporaneo (4.x.x). Postfix conserva il messaggio e riprova per diversi giorni.
Come controllo il DNS di posta del mio dominio?
Usa il controllo DNS della posta gratuito per MX, SPF, DKIM, DMARC e PTR.