tutte le guide

// come risolvere

"4.4.7 Message expired" e "Delivery Status Notification (Delay)" ("451 4.4.0 DNS query failed"): cause e soluzioni

Il tuo server ha provato a consegnare per ore o giorni, poi ha rinunciato. Perché le email vengono ritardate e scadono, e come trovare e correggere la causa.

Cosa significa

Quando un'email non può essere consegnata subito, il server di invio la tiene in coda e riprova a intervalli regolari. Durante l'attesa potresti ricevere un avviso intitolato "Delivery Status Notification (Delay)" o "Consegna ritardata". Se il problema dura troppo, il server rinuncia e invia un rifiuto definitivo. Questo periodo di tentativi dura in genere da uno a cinque giorni, a seconda del server. I messaggi di solito sono simili a questi:

Delivery to the following recipient has been delayed: user@example.com
Status: 4.4.7

550 4.4.7 QUEUE.Expired; message expired

451 4.4.0 DNS query failed

Il codice 4.4.7 significa "tempo di consegna scaduto". Non è la vera causa. Il vero motivo è l'ultimo errore che il server ha visto durante i tentativi. Cercalo nel messaggio di errore: spesso è scritto sotto "Diagnostic code", "Remote server returned" o "Last error".

Perché succede

  • Il server di posta del destinatario non funziona o non è raggiungibile, quindi ogni tentativo fallisce.
  • Problemi DNS. Il dominio del destinatario non ha un record MX, i suoi name server non rispondono, oppure il resolver DNS del tuo server non funziona. 451 4.4.0 DNS query failed (una formulazione di Microsoft 365 / Exchange) indica questo caso.
  • La porta 25 in uscita è bloccata sulla tua rete. Molti provider internet, cloud e VPS la bloccano per impostazione predefinita, quindi il tuo server non riesce a connettersi a nessuno.
  • Il greylisting non è mai stato superato. Alcuni server rifiutano di proposito il primo tentativo e accettano quelli successivi. Se il tuo server non riprova correttamente, o riprova ogni volta da un IP diverso, non passa mai.
  • Limitazione (throttling). Il destinatario accetta solo poche email alla volta dal tuo IP (frequente con i grandi provider quando la tua reputazione è bassa o il volume sale all'improvviso) e risponde con codici temporanei 421 o 451.
  • Un blocco temporaneo, per esempio un rinvio per reputazione, che si è trasformato in una scadenza.

Come verificare

  1. Leggi l'ultimo errore nel messaggio di errore. Un timeout indica la rete o un firewall, un errore DNS indica il DNS, un 421 indica throttling o reputazione.
  2. Analizza il dominio del destinatario su /domain-scanner. Se non mostra nessun record MX, il problema è dal suo lato.
  3. Prova i tuoi invii. Invia un'email all'indirizzo unico nella home page (/). Se non arriva, probabilmente il tuo server non riesce a inviare affatto verso l'esterno (porta 25 bloccata, DNS non funzionante). Se arriva, il report mostra il tuo IP, il DNS inverso, le blacklist e l'autenticazione, che possono spiegare il throttling.
  4. Controlla le blocklist per il tuo IP su /blacklists.
  5. Sul tuo server, guarda la coda e i log (in Postfix, mailq e il log di posta) per trovare l'errore esatto di ogni tentativo.

Come risolvere

  1. Server o DNS del destinatario non funzionanti: non c'è nulla da correggere dal tuo lato. Avvisa il destinatario con un altro mezzo e invia di nuovo più tardi.
  2. Il tuo resolver DNS: assicurati che il tuo server riesca a risolvere i nomi (prova con dig MX example.com). Usa un resolver locale affidabile.
  3. Porta 25 bloccata: chiedi al tuo provider di aprirla, oppure invia tramite un relay (smarthost) sulla porta 587 con autenticazione.
  4. Greylisting: mantieni le impostazioni di ritentativo predefinite del tuo server di posta. Invia da un solo IP stabile, non da un gruppo di IP che cambia a ogni tentativo.
  5. Throttling o reputazione: invia più lentamente, distribuisci nel tempo le grandi campagne, autentica con SPF, DKIM e DMARC, imposta un DNS inverso corretto e risolvi ogni inserimento in blocklist.
  6. Invia di nuovo le email scadute quando la causa è risolta. Le email scadute non vengono ritentate automaticamente.

Verifica che sia risolto

Invia un nuovo test Delivmail: deve arrivare rapidamente e mostrare un report pulito. Controlla che la coda del tuo server si stia svuotando. Poi invia di nuovo l'email all'indirizzo per cui era scaduta e osserva nei log una risposta 250 dal server del destinatario. Se la causa era il throttling, possono servire alcuni giorni di invii regolari e puliti prima che le consegne tornino rapide.

Verifica che sia risolto

Una modifica DNS può richiedere da pochi minuti a qualche ora. Poi invia una nuova email di test o scansiona di nuovo il tuo dominio.

Guide correlate