Red de conocimientos turísticos - Información de alquiler - ¿Por qué los registros TXT y CNAME no se pueden guardar en el mismo host y en la misma línea?

¿Por qué los registros TXT y CNAME no se pueden guardar en el mismo host y en la misma línea?

Debido a que los registros CNAME son exclusivos, si se encuentra un CNAME durante el proceso de búsqueda de DNS, la consulta se reiniciará de forma recursiva.

Por lo tanto, cuando TXT y CNAME existen al mismo tiempo, si el primer registro consultado es CNAME, entonces este registro TXT no se puede consultar.

Existen estándares para esto, como los siguientes:

Los registros CNAME son un tipo de registro especial en DNS, generalmente entendidos como registros "alias". La razón por la que es especial es la siguiente. Supongamos que los dos registros siguientes están registrados para el dominio DNS demo.only:

Los siguientes son los resultados de la consulta dig en el servidor recursivo (el servidor de autorización de este dominio no se puede utilizar) (alguna información sin importancia se omite):

Puedes ver que el resultado de la consulta del registro MX es el registro MX configurado con su valor de registro CNAME. Sin embargo, si vuelve a consultar después de que haya expirado el TTL del registro CNAME del servidor recursivo y simplemente invierte el orden de la consulta (es decir, consulta primero el registro MX y luego consulta el registro CNAME), es posible que obtenga el resultados correctos.

En el proceso de prueba anterior, tanto el servidor de autorización como el servidor recursivo son proveedores de servicios DNS bien conocidos con una gran cantidad de usuarios, por lo que se puede ignorar la posibilidad de errores en el programa. Entonces, ¿cómo explicar este fenómeno?

Para obtener instrucciones autorizadas, consulte los documentos RFC pertinentes. Parte del texto original se extrae de la siguiente manera:

La descripción en chino es la siguiente:

Cuando el servidor DNS recursivo consulta un registro de nombre de dominio normal (registro que no es CNAME), si el nombre de dominio ya existe en la caché local. Para el registro CNAME correspondiente, se utilizará el registro de alias para reiniciar la consulta. El primer registro MX de consulta de excavación mencionado anteriormente corresponde a esta situación. Si consulta directamente el servidor de autorización, siempre obtendrá los resultados esperados. O simplemente comprenda que CNAME tiene mayor prioridad.

Los registros de nombres de dominio que ya se han registrado con el tipo CNAME no pueden registrar otros tipos de registros, excepto registros de tipos relacionados con DNSSEC (RRSIG, NSEC, etc.), incluidos registros (MX, A, NS, etc.). ).

Esta es la razón por la que la consulta de excavación para registros MX al principio de este artículo no obtuvo los resultados esperados. Desde la perspectiva del usuario, si se usa CNAME en la configuración de cualquier registro (especialmente el registro @, porque es muy probable que este registro use MX), debe saber que el nombre de dominio no se puede configurar con otros registros como MX. Desde la perspectiva de los proveedores de servicios DNS, es necesario informar claramente a los usuarios sobre los riesgos de dicha configuración, advertir y educar a los usuarios.