Artículo original publicado el viernes, 29 de marzo de 2013
Soy ingeniero de asistencia de CSS. Estaba trabajando con un cliente que había informado de un error de bucle de correo para un dominio específico como contoso.com, donde este error solo se observaba en correos electrónicos grandes. Sí, es muy misterioso hasta que llegas a entender que el bucle de correo viene provocado por la restricción de tamaño del conector de envío. He pensado que este tema era lo bastante curioso como para compartirlo.
Entender la configuración y la causa principal del problema:
En un primer momento creí que podría ser el resultado de que el servidor perimetral estuviera configurado para utilizar un servidor DNS externo (un servidor DNS que resuelve hosts externos). Normalmente, cuando el servidor Transporte perimetral está configurado para utilizar un DNS externo, resuelve el nombre del dominio como las direcciones IP públicas (suele señalarse a sí mismo, al firewall externo o al proveedor de servicio) en vez de como un servidor Transporte de concentradores en el sitio de Active Directory, de forma que se provoca un bucle de correo.
Al reproducir el problema, descubrí que el servidor Transporte perimetral no estaba configurado para utilizar un servidor DNS externo. El entorno que configuré para reproducir el problema tenía el aspecto de este diagrama:
Esto es lo que pasa en este escenario: cuando el servidor Transporte perimetral recibe un correo electrónico de 20 MB de un remitente de Internet, lo acepta. El servidor Transporte perimetral tiene dos conectores que coinciden con el espacio de dirección, uno para el espacio de dirección contoso.com al sitio de Active Directory y otro para el espacio de dirección *. Cuando se toma la decisión de enrutamiento basada en todos los conectores disponibles, el de Transporte de concentradores no se tiene en cuenta por la restricción de tamaño (establecida en 10 MB). La mejor opción es el conector "*" del perímetro a Internet (vea el logaritmo de selección de conectores documentado en Descripción del enrutamiento de mensajes), que tiene un límite de tamaño para mensajes de 30 MB.
Resultado final: el mensaje se enruta para que vuelva a Internet, lo que provoca el bucle del mensaje entre Internet y el servidor perimetral.
En función de si el conector de envío está configurado para utilizar DNS o un host inteligente para entregar correo saliente, recibiremos uno de los siguientes NDR:
Si se usa DNS:
#554 5.4.4 SMTPSEND.DNS.MxLoopback; los registros de DNS para este dominio están configurados en un bucle ##
Si se usa un host inteligente:
5.4.6 smtp;554 5.4.6 superada la cuenta de saltos; posible bucle de correo> #SMTP#
La solución
Este comportamiento viene dado por el diseño y se puede rectificar fácilmente modificando el límite de tamaño para mensajes que hay en el conector. Según su requisito, puede seleccionar cualquiera de las siguientes opciones:
- Establezca el parámetro MaxMessageSize del conector de recepción (que recibe correo entrante de Internet) en 10MB, para que los mensajes de Internet se restrinjan a 10 MB.
- Establezca el parámetro MaxMessageSize del conector de envío de perímetro a concentrador en 30MB, que le permitirá recibir mensajes de 30 MB de remitentes externos.
Misterio resuelto. Gracias a Arindam Thokder y Scott Landry, que me han ayudado a preparar esta entrada para el blog.
Esta entrada de blog es una traducción. Puede consultar el artículo original en Mysterious mail loop on Edge Transport server: Check your size limits!