DOWEB.IT - Gli errori email

Gestire i messaggi di errore a seguito dell’invio di email

i messaggi di errore a seguito dell’invio di email

Non è un problema infrequente vedersi respingere una email.
Come vedremo, la email respinta ci ritorna corredata da alcune righe di commento, redatte generalmente in gergo tecnico e quindi poco comprensibili ai "non addetti ai lavori". Questa pagina tenta di dare un piccolo aiuto nella comprensione dell'errore occorso e nel comportamento da seguire al verificarsi dell'errore stesso.

Dettagli tecnici

Il protocollo che provvede all'invio delle email è il protocollo SMTP, specificato nella RFC-2821.
Nel transito tra il mittente ed il destinatario l'email generalmente attraversa più mailserver: un invio che si conclude con successo ha trasportato l'email dal server SMTP utilizzato dal mittente al server di posta (POP3 oppure IMAP4) del destinatario, da cui infine il destinatario preleverà la posta con il proprio client.
Il protocollo SMTP regola il comportamento da avere in caso di errore (se, quando e quanto ritrasmettere il messaggio) e stabilisce che il mittente venga notificato dell'errore.
Per il formato del messaggio della notifica dell'errore esistono ulteriori specifiche che definiscono i codici di errore da utilizzare per i ritorni; fondamentali la RFC-1891, la RFC-1893 e la RFC-1894.
Il messaggio di errore "in chiaro" dipende dal server che lo genera, ma normalmente in esso vengono comunque menzionati i codici di errore definiti dallo standard.

Come capire il tipo di errore

Per capire il tipo di errore di un ritorno è sufficiente cercare una riga di questo tipo:

Status: 5.1.1 (bad destination mailbox)

Può essere eventualmente presente anche una riga di questo tipo, che specifica ulteriormente l'errore:

Diagnostic-Code: smtp; 550 Mailbox unavailable

Come detto, il protocollo stabilisce che venga fornito un codice di errore (negli esempi 5.1.1 e 550), il quale viene generalmente accompagnato da una descrizione in chiaro dell'errore occorso.

Ovviamente gli errori possono essere dovuti a molti fattori, temporanei (detti "persistenti") oppure permanenti, ma il codice dell'errore offre un primo chiaro indizio per la nostra indagine: i codici di errore sono sempre a tre cifre (generalmente separate da punti) e la prima cifra del codice indica la gravità dell'errore...

2 il messaggio è solo di informazione e non occorre fare nulla
        Success or Warning (as 2.X.X numerical codes)
4 il problema è temporaneo e probabilmente può essere risolto con un re-invio
        Persistent transient failure (as 4.X.X numerical codes)
5 il problema è permanente
        Permanent failure (as 5.X.X numerical codes)

Spesso per capire esattamente l'errore è sufficiente leggere il messaggio indicato dopo il codice.
Tali messaggi variano a seconda del server di posta utilizzato, e a volte danno indicazioni sul comportamento necessario a risolvere il problema.
La prossima sezione indica gli errori più comuni, mentre la sezione successiva riporta l'elenco completo.

I messaggi più comuni : come comportarsi

Segue un breve elenco degli errori più diffusi e alcune indicazioni sul tipo di errore e sul comportamento.

5.0.0 (Permanent failure - no additional status information available)
5.3.0 (Permanent failure - system: no additional status information available)

Questo è il messaggio più generico. Solitamente da qualche parte nel ritorno è indicato il tipo di errore più in dettaglio; spesso comunque l'errore è l'inesistenza dell'indirizzo di destinazione.

5.1.1 (Permanent failure - addressing: bad destination mailbox address)
L'indirizzo di destinazione non esiste. Probabilmente l'utente ha cancellato l'account o ha cambiato email.

4.0.0 (unspecified timeout failure)
4.4.x (Persistent transient failure - routing/network: no answer from host)
4.5.x (Undetermined protocol error)
5.4.1 (TCP/IP-connection failure)

Nel transito dell'email è avvenuto qualche errore "fisico". In questo caso è sufficiente re-inviarla.

5.2.2 (mailbox full)
5.2.3 (message length exceeds administrative limit)

Il destinatario ha raggiunto il limite dello spazio disponibile nella casella di destinazione. È possibile che l'utente scarichi la posta di rado, o che abbia abbandonato la propria mailbox. La soluzione consiste nel re-inviare l'email a distanza di qualche tempo, ma se si ha più volte di seguito lo stesso tipo di errore è molto probabile che l'utente non utilizzi più quell'indirizzo email.

5.4.4 (Permanent failure - routing/network: unable to route)
Solitamente questo errore significa che l'host di destinazione non esiste. Ad esempio, se invio un email a pippo@xastrovinci.it, probabilmente riceverò questo tipo di errore, perché non esiste l'host xastrovinci.it.
È sufficiente correggere l'host e re-inviare.

Mail System Status Codes

Questo è l'elenco completo dei codici di errore.
Approfondimenti e chiarimenti sono disponibili nella già citata RFC-1893.

X.1.0 Other address status
X.1.1 Bad destination mailbox address
X.1.2 Bad destination system address
X.1.3 Bad destination mailbox address syntax
X.1.4 Destination mailbox address ambiguous
X.1.5 Destination mailbox address valid
X.1.6 Mailbox has moved
X.1.7 Bad sender's mailbox address syntax
X.1.8 Bad sender's system address
X.2.0 Other or undefined mailbox status
X.2.1 Mailbox disabled, not accepting messages
X.2.2 Mailbox full
X.2.3 Message length exceeds administrative limit.
X.2.4 Mailing list expansion problem
X.3.0 Other or undefined mail system status
X.3.1 Mail system full
X.3.2 System not accepting network messages
X.3.3 System not capable of selected features
X.3.4 Message too big for system
X.4.0 Other or undefined network or routing status
X.4.1 No answer from host
X.4.2 Bad connection
X.4.3 Routing server failure
X.4.4 Unable to route
X.4.5 Network congestion
X.4.6 Routing loop detected
X.4.7 Delivery time expired
X.5.0 Other or undefined protocol status
X.5.1 Invalid command
X.5.2 Syntax error
X.5.3 Too many recipients
X.5.4 Invalid command arguments
X.5.5 Wrong protocol version
X.6.0 Other or undefined media error
X.6.1 Media not supported
X.6.2 Conversion required and prohibited
X.6.3 Conversion required but not supported
X.6.4 Conversion with loss performed
X.6.5 Conversion failed
X.7.0 Other or undefined security status
X.7.1 Delivery not authorized, message refused
X.7.2 Mailing list expansion prohibited
X.7.3 Security conversion required but not possible
X.7.4 Security features not supported
X.7.5 Cryptographic failure
X.7.6 Cryptographic algorithm not supported
X.7.7 Message integrity failure

Se il mailserver è Microsoft Exchange, ulteriori chiarimenti sono disponibili nel documento "Delivery Status Notifications in Exchange 2000 Server".

 


I nomi e i marchi riportati nel presente documento appartengono ai rispettivi Proprietari

Contents, Design and Engineering © 1997÷2018 by Castrovinci & Associati

disclaimer privacy warning credits