Come viene instradata la posta

Nel protocollo SMTP (Simple Mail Transfer Protocol), l'MTA* (Mail Transfert Agent) è il programma o l'insieme di programmi che si occupano di instradare i messaggi; è il processo che viene eseguito da quello che comunemente viene chiamato server di posta in uscita.


Nel protocollo SMTP (Simple Mail Transfert Protocol), l'MTA* (Mail Transfert Agent) è il programma o l'insieme di programmi che si occupano di instradare i messaggi; è il processo che viene eseguito da quello che comunemente viene chiamato server di posta in uscita.

[diagramma di flusso MTA]Considerando che l'indirizzo può essere diviso in due parti, quella a sinistra della "@" (local-part) e quella a destra (domain), il processo di smistamento può essere così schematizzato:


  1. l'MTA ricevece il messaggio;
  2. applica le eventuali regole di riscrittura alla parte domain dell'indirizzo;
  3. verifica se la parte domain corrisponde a uno dei domini gestiti o al nome stesso dell'host;
  4. se sì, passa il messaggio ai delivery agent, altrimenti lo inoltra al SMTP server piò appropriato (generalmente, identificato dal record MX del dominio);
  5. i delivery agent verificano se esistono regole di riscritttura (alias) o di espansione (liste) della local-part;
  6. se le regole esistono, vengono applicate e il messaggio viene inviato agli MTA (al limite, in locale) degli indirizzi generati; se non vi sono regole, viene tentata la consegna locale;
  7. se la mailbox locale esiste, il messaggio viene consegnato, altrimenti viene restituito l'errore di "user unknown".

In questo processo, una directory LDAP può intervenire in più punti:

  • può contenere il nome dell'host che gestisce la posta del dominio;
  • può essere utilizzato per riscrivere gli indirizzi;
  • può definire delle regole o delle enumerazioni per le liste.

In pratica, può sostituire tutte le configurazioni che nei programmi di posta elettronica tipo sendmail sono descritte in file del tipo

<chiave>: <valore>
<chiave>: <valore>, <valore>
...

Per poter ottenere questo risultato, oltre una versione compatibile con LDAP dell'MTA, è però necessario definire uno schema per specificare i dati degli oggetti LDAP interessati.

Il protocollo SMTP è definito nel dettaglio nelle RFC 821 e RFC 1123, section 5.

* In realtà, MTA è parte della terminologia X.400.