¿Cuál es el comportamiento de un solucionador de DNS si un servidor de nombres autorizado no tiene un registro particular pero otro sí?

¿Cuál es el comportamiento de un solucionador de DNS si un servidor de nombres autorizado no tiene un registro particular pero otro sí?

Digamos que envié una consulta para el registro TXT para m1._domainkey.amazon.com

nslookup -q=txt m1._domainkey.amazon.com

Digamos que los servidores de nombres autorizados para amazon.com son

amazon.com  nameserver = ns1.amzndns.com.
amazon.com  nameserver = ns1.amzndns.org.
amazon.com  nameserver = ns1.amzndns.net.

¿Qué pasaría si este registro TXT NO está presente en el primer servidor de nombres autorizado que consulta el solucionador, ns1.amzndns.com, pero ESTÁ presente en otro, ns1.amzndns.org? ¿Es típico que el solucionador continúe consultando los servidores de nombres hasta obtener una respuesta?

En la práctica, he visto que obtendré el registro TXT aunque no esté en todos los servidores de nombres.

Por favor incluya documentación/referencia en su respuesta.para que pueda estudiar esto de forma independiente.

Gracias por leer.

Respuesta1

Elservidores de nombres autorizadosestablecer una bandera de protocolo, llamada"Respuesta autorizada" (AA)bit en sus respuestas y el resolutor toma esa respuesta como verdad.

Cuando la respuesta sea afirmativa, la respuesta contendrá el registro del recurso solicitado.

Cuando el servidor de nombres autorizado no tiene ese registro de recursos, la respuesta será un mensaje NXDOMAIN.

Cuando sus servidores de nombres autorizados son inconsistentes, la respuesta que obtenga un cliente dependerá del servidor de nombres autorizado que se haya consultado. Y esa respuesta será considerada la verdad.

¿Es típico que el solucionador continúe consultando los servidores de nombres hasta obtener una respuesta?

Sí, pero sólo cuando el primer servidor de nombres no responde en absoluto.

Una vez que se reciba cualquier respuesta (positiva o negativa), el solucionador no necesitará consultar sus otros servidores de nombres.

(No es que su resolutor se comporte como un niño de seis años, que cuando uno de los padres da una respuesta, acudirá al otro padre con la esperanza de obtener una respuesta diferente que le guste más.)

Respuesta2

El comportamiento de los resolutores depende de la implementación.

Microsoft Windows 10, por ejemplo, consulta todos los servidores de nombres en paralelo. El cliente utilizará el primer servidor para responder, incluso si es una respuesta negativa.

Si un cliente consulta los servidores de nombres de forma secuencial, lo hará y expirará el tiempo si no se recibe una respuesta y pasará al siguiente servidor de nombres configurado. Cuando se recibe una respuesta, la consulta finaliza, incluso si es una respuesta negativa.

Lo que no ocurrirá es que el cliente no esperará a que respondan todos los servidores de nombres. El cliente no utilizará múltiples respuestas, solo la primera respuesta.

Si Amazon tiene 100 servidores de nombres y solo uno tiene un registro de recursos, y un cliente consulta uno de los otros 99 servidores de nombres, recibirá una respuesta negativa para el registro de recursos.

https://superuser.com/questions/969171/multihomed-windows-10-dns-solving-timeouts/970322#970322

in practice, I have seen that I will get the TXT record even though it is not on all nameservers.

Si tiene preguntas sobre un registro, no dude en compartir el registro que reproduce el comportamiento, incluidos los detalles del cliente, para que podamos reproducirlo.


Más información:

Microsoft introdujo la resolución de nombres paralela para registros A/AAAA debido a numerosos incidentes en los que los servidores de nombres se habían configurado incorrectamente. Esto generalmente causaba problemas importantes cuando se consultaban servidores de nombres no principales debido a que el principal no estaba disponible. El proceso de resolución iterativo tiene tiempos de espera, y cada nivel puede tener tiempos de espera diferentes y un tiempo de espera acumulativo. También existen reglas para utilizar los resultados de varios adaptadores de red. Esto llevó a escenarios en los que algunas organizaciones habían configurado cuatro o cinco servidores de nombres con fines de alta disponibilidad. Desafortunadamente, el proceso se agota después del tercer servidor, por lo que la estrategia DNS no era válida, la estrategia de recuperación ante desastres no era válida y causó otros problemas propios.


Cuando utilice nslookup, para simular el comportamiento de un solucionador y realizar una consulta iterativa en un servidor de nombres específico, utilice el -norecursemodificador.

https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/nslookup-set-recurse

información relacionada