
Administro un pequeño servidor web y he tenido algunos problemas para configurar correctamente SPF/DMARC para el dominio. Estoy tratando de descubrir por qué la validación del SPF a veces pasa y a veces falla. Esto ocurre cuando se utiliza el mismo validador y cuando no se han realizado cambios en el registro. Es casi como si estuviera leyendo diferentes registros de diferentes fuentes en algunos intentos.
Para este ejemplo, estoy usando dmarcian.com como validador de SPF.
Si voy al sitio y uso Herramientas--> Comprobador de dominio, a veces dice "Su dominio tiene un registro SPF válido y la política es suficientemente estricta". Si hago clic en "Verificar dominio" varias veces (no hay posibilidad de que haya errores ortográficos), a veces aparece "Su dominio no tiene un registro SPF". ¿Por qué obtendría dos resultados diferentes en el mismo cheque cuando nada ha cambiado?
El proveedor es Arvixe (cambiará pronto). El servidor web es Windows VPS y el servidor web no es el servidor de correo electrónico. Pagamos por un servicio de correo electrónico masivo independiente, aunque no enviamos mucho.
Estoy usando WebsitePanel para editar los registros DNS. Los registros SPF no son compatibles, por eso estoy usando un registro TXT. Se parece a esto:
Nombre: _spf Tipo: TXT Datos: v=spf1 +a +mx +ip4:207.210.200.162 +ip4:143.95.68.96 ~all
Dominio: theiaicertification.org IP: 108.167.130.38 / 108.167.130.39 Servidor de correo: 207.210.200.162 / 143.95.68.96
Respuesta1
Su zona DNS está alojada en dos servidores DNS, lo cual no es una cantidad desmesurada de servidores DNS para alojar su dominio. Ambos servidores DNS adolecen de falta de IPv6, lo que puede convertirse en un problema en el futuro.
Ambos servidores DNS autorizados brindan la misma respuesta cuando se les solicita registros TXT para el dominio, por lo que eso tampoco es un problema. La respuesta exacta que veo es esta:
theiaicertification.org. 86400 IN TXT "v=spf1 +a +mx +ip4:207.210.200.162 +ip4:143.95.68.96 ~all"
Hay algunas cosas que quiero señalar aquí.
El uso de a
y/o mx
puede resultar problemático para un servidor de correo sólo IPv4. Esto se debe a que no tiene control sobre qué direcciones IP deberán validarse con su registro SPF, por lo que su registro SPF debe cumplir con los estándares para la validación de direcciones IPv4 e IPv6. Existe un límite en la cantidad de búsquedas de DNS sin respuesta que se permiten durante la validación de un registro SPF. Sin embargo, en su caso evitó por poco esa trampa.
Poner el prefijo en cada entrada +
no es la forma en que se escriben comúnmente los registros SPF, pero parece funcionar.
Probé que es posible validar direcciones IP con sus registros SPF utilizando la implementación Python de validación spf:
>>> import spf
>>> spf.query('192.0.2.1', '[email protected]', '').check()
('softfail', 250, 'domain owner discourages use of this host')
>>> spf.query('2001:db8::1', '[email protected]', '').check()
('softfail', 250, 'domain owner discourages use of this host')
>>>
Sin embargo, ninguno de estos explicaría por qué se ven resultados diferentes. Una posible explicación de los diferentes resultados es el almacenamiento en caché. El TTL en su registro TXT es 86400 segundos, que son 24 horas. Si lo cambió recientemente y el TTL también estaba 24 horas antes, el cambio puede tardar 24 horas en surtir efecto en todas partes.
Supongo que el servicio que está utilizando para validar sus registros SPF tiene más de un solucionador recursivo y al menos uno de ellos ha almacenado en caché una versión anterior de su registro TXT.