En esta sección vamos a analizar el formato de las cabeceras que se transmiten como parte de los correos electrónicos. Dichas cabeceras son utilizadas por los mailers para personalizar el envío de los e-mails. Nótese que en ningún caso esta información debe ser confundida con la que se transfiere en una interacción SMTP. Toda esta información es creada bien por el remitente como parte del cuerpo del mensaje, bien por el mailer durante el procesamiento y la transmisión del e-mail.
Una cabecera de correo electrónico es una secuencia de líneas no vacías que concatenan una lista de campos. A su vez, un campo es una secuencia de una o más líneas no vacías que contienen un nombre de campo y un valor. Un ejemplo:
Como podemos ver el primer campo de nombre Received: tiene un valor que ocupa dos líneas. Además, la cabecera finaliza siempre en una línea vacía.
La lista de campos que se muestra a continuación no es exhaustiva. Para una lista mucho más completa, véase la documentación asociada al mailer Qmail ( http://cr.yp.to/immhf/index.html) y/o los RFC correspondientes.
Cada mailer inserta un campo Received: cuando procesa un mensaje entrante para indicar quién se lo envía y cuándo. De esta manera podemos averiguar qué saltos ha dado (por qué mailers ha pasado) el e-mail hasta que ha llegado hasta nosotros.
Fecha en la que el primer MTA creó el e-mail. La diferencia de tiempos entre el que especifica Received: y Date: es el tiempo que ha tardado el e-mail en transferirse desde el mailer origen hasta el destino.
Especifica la lista de destinatarios. Cada destinatario es separado del siguiente mediante una “,” (una coma). Ejemplo:
En este ejemplo hay tres destinatarios.
Cc significa carbon copy (copia al carbón) y se utiliza para especificar una lista de destinatarios de “segundo orden”. De esta manera, los que reciben el e-mail saben si el correo está directamente dirigidos a ellos o están recibiendo simplemente una copia.
Bcc significa bind carbon copy (copia al carbón oculta) y se utiliza para especificar una lista de destinatarios del e-mail que no se van a identificar entre sí. Para hacer esto, el MUA elimina el campo Bcc: antes de enviar el mensaje.
Introduce una cadena explicatoria del contenido del e-mail. Este campo lo rellena el remitente del e-mail y suele ser la línea que sigue al verbo DATA en la transacción SMTP.
Se utiliza para especificar una dirección de remitente distinta a la que se especificó con el verbo MAIL en la interacción SMTP. Esto es útil cuando el remitente tiene una cuenta en (acceso a) diferentes mailers y quiere recibir las respuestas (replies) siempre a la dirección de correo indicada por Reply-to:.
Introduce una cadena que identifica al e-mail. Para intentar conseguir una etiqueta única se utiliza generalmente un número de serie seguido del dominio del mailer que está procesando el e-mail.
Estos campos son creados cuando reenviamos un e-mail. Los campos From:, To: y Subject: son copiados a Resent-From:, Resent-To: y Resent-Subject:, respectivamente. De esta manera quedan libres para obtener otros valores cuando se reenvía el e-mail.
Indica la lista de mailers a los que puede enviarse un bounce message cuando aparece algún problema con la entrega del e-mail.