
Estoy ejecutando Exim 4.71. Yo quiero:
- Enrutar todos los correos electrónicosdeA.com a través de mail.A.com
- Enrutar todos los correos electrónicosde[BE].com a través de mail.B.com
- Envíe todos los demás correos electrónicos directamente.
Aquí está la configuración que tengo y que no funciona como esperaba:
lista de dominios a_dominios = a.com lista de dominios b_dominios = b.com : c.com : d.com : e.com iniciar enrutadores ruta_inteligente_a: conductor = ruta manual dominios = +a_dominios transporte = remoto_smtp lista_ruta = +a_dominios mail.a.com no más ruta_inteligente_b: conductor = ruta manual dominios = +b_dominios transporte = remoto_smtp lista_ruta = +b_dominios correo.mollenhour.com no más búsqueda dns: controlador = búsqueda dns dominios = ! +dominios_locales transporte = remoto_smtp ignore_target_hosts = 0.0.0.0: 127.0.0.0/8 no más
Cuando envío un correo electrónico, por ejemplo, con PHP mail(
) o Zend_Mail_Transport_Smtp
establezco From: y Return-Path: como[correo electrónico protegido], smart_route_a
no se utiliza el enrutador, en su lugar se utiliza dnslookup. Al desactivar dnslookup no se envía ningún correo.
De los registros parece que el correo electrónico enviadoa [correo electrónico protegido]utiliza smart_route_a
, pero el mismo correo electrónico enviado desde[correo electrónico protegido]a[correo electrónico protegido]se envía usando dnslookup
.
¿Cómo hago un correo electrónico?de [correo electrónico protegido]ser retransmitido a través de mail.a.com?
Respuesta1
Usa un condicional como
route_list = * "${if match{$header_from:}{\N.*\.a\.com$\N} {mail.a.com}}"
domains = solo verifica el dominio de destino, no el dominio de origen.