Pregunta

En nuestra aplicación de correo estamos enviando correos electrónicos con el siguiente encabezado:

FROM: marketing@customer.com
TO: subscriber1@domain1.com
Return-PATH: bouncemgmt@ourcompany.com

El problema al que nos enfrentamos es que algunos servidores de correo electrónico devolverán un mensaje de inmediato y usarán la ruta desde o inversa (marketing@customer.com) en nuestro servidor de administración de devolución. Queremos saber si modificamos en el encabezado que la respuesta sea la misma que la ruta de retorno si podremos capturar todos los rebotes.

¿Alguna otra idea es bienvenida?

Estamos utilizando los siguientes documentos como referencias: VERP RFC Mensajes de rebote

Análisis de registros SMTP para obtener rebotes

EDITAR 1: Un poco más de información para ver si podemos obtener esta resolución.

Queremos saber en qué punto el servidor de correo electrónico que retransmite el mensaje elegirá utilizar la ruta de respuesta frente a la ruta de retorno. Hemos notado que cuando el primer servidor smtp que retransmite el mensaje es rechazado, lo envía a la respuesta, pero cuando ocurre después de un salto, lo envía a la ruta de retorno.

¿Fue útil?

Solución

Comencemos con un ejemplo simple. Digamos que tiene una lista de correo electrónico, que enviará el siguiente contenido RFC2822 .

From: <coolstuff@mymailinglist.com>
To: <you@yourcompany.com>
Subject: Super simple email
Reply-To: <coolstuff-threadId=123@mymailinglist.com>

This is a very simple body.

Ahora, supongamos que lo va a enviar desde una lista de correo, que implementa VERP (o algún otro mecanismo de seguimiento de rebote que use una ruta de retorno diferente). Digamos que tendrá una ruta de retorno de coolstuff-you=yourcompany.com@mymailinglist.com . La sesión SMTP podría verse así:

{S}220 workstation1 Microsoft ESMTP MAIL Service
{C}HELO workstation1
{S}250 workstation1 Hello [127.0.0.1]
{C}MAIL FROM:<coolstuff-you=yourcompany.com@mymailinglist.com>
{S}250 2.1.0 me@mycompany.com....Sender OK
{C}RCPT TO:<you@yourcompany.com>
{S}250 2.1.5 you@yourcompany.com 
{C}DATA
{S}354 Start mail input; end with <CRLF>.<CRLF>
{C}From: <coolstuff@mymailinglist.com>
To: <you@yourcompany.com>
Subject: Super simple email
Reply-To: <coolstuff-threadId=123@mymailinglist.com>

This is a very simple body.
.

{S}250 Queued mail for delivery
{C}QUIT
{S}221 Service closing transmission channel

Donde {C} y {S} representan los comandos de Cliente y Servidor, respectivamente.

El correo del destinatario se vería así:

Return-Path: coolstuff-you=yourcompany.com@mymailinglist.com
From: <coolstuff@mymailinglist.com>
To: <you@yourcompany.com>
Subject: Super simple email
Reply-To: <coolstuff-threadId=123@mymailinglist.com>

This is a very simple body.

Ahora, describamos los diferentes " DE " s.

  1. La ruta de retorno (a veces llamada ruta inversa, remitente del sobre o sobre desde & # 8212; todos estos términos se pueden usar indistintamente) es el valor utilizado en la sesión SMTP en el código MAIL FROM comando. Como puede ver, no es necesario que sea el mismo valor que se encuentra en los encabezados de los mensajes. Se supone que solo el servidor de correo del destinatario agrega un encabezado de ruta de retorno a la parte superior del correo electrónico. Esto registra el remitente de la ruta de retorno real durante la sesión SMTP. Si ya existe un encabezado de ruta de retorno en el mensaje, ese encabezado se elimina y se reemplaza por el servidor de correo del destinatario.

Todos los rebotes que ocurren durante la sesión SMTP deben volver a la dirección de la ruta de retorno. Algunos servidores pueden aceptar todo el correo electrónico y luego ponerlo en cola localmente, hasta que tenga un hilo libre para entregarlo al buzón del destinatario. Si el destinatario no existe, debe devolverlo al valor de Ruta de retorno registrado.

Nota, no todos los servidores de correo obedecen esta regla; Algunos servidores de correo lo devolverán a la dirección DE.

  1. La dirección FROM es el valor encontrado en el encabezado FROM. Se supone que este es de quién es el mensaje. Esto es lo que ves como el " DE " en la mayoría de los clientes de correo. Si un correo electrónico no tiene un encabezado de respuesta, entonces todas las respuestas humanas (cliente de correo) deben volver a la dirección DE.

  2. El encabezado Responder-A lo agrega el remitente (o el software del remitente). Es donde también deben abordarse todas las respuestas humanas. Básicamente, cuando el usuario hace clic en "responder", el valor de Responder a debe ser el valor utilizado como destinatario del correo electrónico recién redactado. El valor de Responder a no debe ser utilizado por ningún servidor. Está destinado solo para uso del lado del cliente (MUA).

Sin embargo, como puede ver, no todos los servidores de correo obedecen los estándares o recomendaciones de RFC.

Espero que esto ayude a aclarar las cosas. Sin embargo, si me perdí algo, avíseme y trataré de responder.

Otros consejos

Otra forma de pensar sobre Return-Path vs Reply-To es compararlo con el correo postal.

Cuando envía un sobre por correo, especifica una dirección de devolución . Si el destinatario no existe o rechaza su correo, el administrador de correo devuelve el sobre a la dirección de devolución. Para el correo electrónico, la dirección de retorno es la Ruta de retorno .

Dentro del sobre puede haber una carta y dentro de la carta puede indicarle al destinatario que " Envíe correspondencia a dirección de ejemplo " ;. Para el correo electrónico, la dirección de ejemplo es Responder a .

En esencia, una dirección de devolución de franqueo es comparable al encabezado Return-Path de SMTP y el encabezado Reply-To de SMTP es similar a las instrucciones de respuesta contenidas en una carta.

para aquellos que llegaron aquí porque el título de la pregunta:

Uso la dirección Reply-To: con formularios web. cuando alguien llena el formulario, la página web envía un correo electrónico automático al propietario de la página. From: es la dirección del remitente del correo automático, por lo que el propietario sabe que es del formulario web. pero la dirección Reply-To: es la completada en el formulario por el usuario, por lo que el propietario puede presionar responder para contactarlos.

Tuve que agregar un encabezado de ruta de retorno en los correos electrónicos enviados por una instancia de Redmine. Estoy de acuerdo con greatwolf, solo el remitente puede determinar una ruta de retorno correcta (no predeterminada). El caso es el siguiente: Los correos electrónicos se envían con la dirección de correo electrónico predeterminada: admin@yourcompany.com Pero queremos que el usuario real que inicia la acción reciba los correos electrónicos de rebote, porque él será el que sepa cómo corregir los correos electrónicos de destinatarios incorrectos (y no los administradores de aplicaciones que tienen otros gatos para azotar :-)). Usamos esto y funciona perfectamente bien con exim en el servidor de aplicaciones y zimbra como el servidor de correo final de la compañía.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top