Por qué importa tanto el DNS inverso
Los servidores receptores consultan el nombre (registro PTR) de cada IP que entrega correo y comprueban que ese nombre apunta a la misma IP. Se llama forward-confirmed reverse DNS (FCrDNS). Sin ello, el correo acaba en spam o se rechaza directamente. Google y Yahoo lo exigen expresamente desde 2024. Mensajes de error típicos:
550-5.7.25 [203.0.113.10] The IP address sending this message does not have a 550-5.7.25 PTR record setup, or the corresponding forward DNS entry does not 550 5.7.25 point to the sending IP. 450 4.7.1 Client host rejected: cannot find your reverse hostname, [203.0.113.10]
Dónde se configura el PTR
El PTR no pertenece a tu dominio sino a la dirección IP. Solo puede configurarlo quien posee la IP: tu proveedor de alojamiento o de acceso. Por eso no lo encontrarás en la gestión DNS de tu dominio.
- Hetzner: Cloud Console → servidor → Networking → editar reverse DNS; en servidores dedicados, en Robot en «IPs».
- OVHcloud: Bare Metal Cloud → Network → IP → «…» → modificar el reverse.
- AWS: EC2 → Elastic IPs → Actions → «Update reverse DNS». El registro A debe existir antes.
- Azure: por CLI con
az network public-ip update --reverse-fqdn. - DigitalOcean: el PTR sigue el nombre del droplet. Ponle al droplet exactamente el nombre del servidor de correo.
- Conexión a Internet de casa u oficina: imposible con IP dinámica; con IP fija, normalmente solo pidiéndolo al proveedor.
Paso a paso
- Elegir un nombre, p. ej.
mail.example.com. - Registro A (y AAAA para IPv6) en tu zona:
mail.example.com → 203.0.113.10. - PTR en el proveedor:
203.0.113.10 → mail.example.com. - Nombre HELO del servidor de correo con el mismo nombre. Postfix:
myhostname = mail.example.comen main.cf. Exchange: FQDN en el conector de envío. - Comprobar SPF: la IP debe estar en el SPF del dominio remitente, p. ej. con
mxoip4:203.0.113.10.
El PTR no tiene que coincidir con el dominio remitente. Un servidor mail.example.com puede enviar sin problema correo de otro-dominio.es. Lo importante es que PTR, registro A y HELO coincidan entre sí.
La trampa de IPv6
Si tu servidor tiene IPv6, Postfix entrega a menudo a Gmail y compañía por IPv6. Entonces la dirección IPv6 también necesita un PTR y un AAAA coincidente. Si no puedes configurarlo, desactiva el envío por IPv6:
# Postfix main.cf inet_protocols = ipv4 # o permitir IPv6 pero preferir IPv4: smtp_address_preference = ipv4
Comprobar
# PTR de la IP dig -x 203.0.113.10 +short # ¿apunta el nombre a la IP? dig +short A mail.example.com # Windows nslookup 203.0.113.10 # ver el HELO del servidor openssl s_client -starttls smtp -connect mail.example.com:25 -quiet
Según el TTL, un cambio del PTR puede tardar unas horas hasta que lo ven todos los resolutores. La consulta DNS muestra PTR y comprobación inversa en un paso; el comprobador de propagación DNS indica qué resolutores conocen ya el nuevo registro A.
FAQ
¿Debe el nombre PTR contener mi dominio remitente?
No. Solo tiene que ser un nombre real que apunte a la misma IP mediante un registro A o AAAA. Aun así, algunos receptores valoran peor nombres genéricos como 203-0-113-10.proveedor.net.
¿Puede una IP tener varios PTR?
Técnicamente sí, en la práctica da problemas. Un nombre por IP es lo seguro.
No puedo configurar el PTR. ¿Y ahora?
Envía el correo saliente a través de un smarthost (relé) de tu proveedor o de un servicio de correo. Tu servidor sigue recibiendo, pero envía por el relé.
¿Cuánto tarda en surtir efecto el PTR?
En el proveedor, normalmente al momento. Los resolutores que tienen el valor antiguo en caché solo lo ven al caducar el TTL, a menudo entre una y 24 horas.