¿Cuántos mensajes totales se envían directamente desde y hacia el cliente DNS y el servidor cliente DNS cuando un cliente necesita un nombre resuelto en una dirección IP correspondiente?

En primer lugar, los clientes DNS (p. Ej., Software de usuario final como los navegadores web) no tienen una razón para hablar con los servidores DNS (p. Ej .: ns1.google.com para Google).

De hecho, el software del usuario final a menudo ni siquiera son clientes DNS puros. Solo necesitan resolución de nombre (es decir, traducir un nombre a una dirección de máquina) que también se puede lograr a través de otras técnicas como el llamado archivo “host”, NIS, etc., además de DNS. Para la resolución de nombres, el sistema operativo host proporciona una biblioteca / servicio de resolución (con características adicionales como el almacenamiento en caché, etc.) que es lo que consulta el software del usuario final. Aunque el software muy complejo podría incluir sus propias bibliotecas de resolución, que de hecho podrían admitir solo DNS (en casos de uso donde otras resoluciones no tienen sentido; por ejemplo, cierto software relacionado con el correo electrónico).

Ahora, incluso después de que la biblioteca de resolución determina que una resolución de nombre particular necesita DNS, todavía no se consultan los servidores DNS. Hay otra capa entre las llamadas cachés DNS. Los cachés de DNS son operados por red, a menudo por empresas, ISP y otros agregadores (usuarios domésticos también; la mayoría de los dispositivos Wifi, etc., contienen soporte de caché DNS rudimentario. Yo mismo ejecuto un caché en mi computadora portátil Linux). Las consultas de DNS de los resolutivos llegan primero a los cachés. Recuerde que el protocolo DNS tiene soporte incorporado para el almacenamiento en caché (atributo TTL de los registros), por lo que con bastante frecuencia el caché sirve la respuesta de la información almacenada localmente, evitando consultar el servidor DNS por completo.

Si el caché tampoco tiene información aún no obsoleta sobre un nombre, las consultas se envían a los servidores DNS. Hay una gran cantidad de mensajes de ida y vuelta para determinar cuáles son los servidores autorizados para un nombre de pila.

Entonces, el protocolo DNS hace su entrada cuando ocurre la consulta / respuesta resolutor-caché. Si hay un golpe de caché, cada consulta generará una respuesta de inmediato. Si la respuesta contiene nombres adicionales que deben resolverse, se producen más mensajes de consulta / respuesta. Este es el caso si la consulta original resultó en un registro CNAME, por ejemplo.

La comunicación del servidor de caché es mucho más complicada y, a menudo, tiene una secuencia muy larga de mensajes de consulta / respuesta involucrados (cualquiera de los cuales ya podría estar disponible en el caché y, por lo tanto, podría omitirse). El caché tiene un conjunto de direcciones IP codificadas para los 13 servidores DNS “raíz”. Se inicia un algoritmo de consulta recursivo que comienza con uno de estos (seleccionados aleatoriamente) y finalmente da como resultado una respuesta (dirección IP) para el nombre en cuestión en el caso de éxito, o un error NXDOMAIN / SRVFAIL (comunes; podría haber otro errores) en el caso de falla. Muchos expertos explican mejor este proceso; Siempre encontré que la explicación de DNS de DJB es la más corta y dulce. Está aquí: http://cr.yp.to/djbdns/intro-dns…

More Interesting

¿Las direcciones IP del país / ciudad siempre permanecen iguales?

Cómo hacer que Linux deje de enviar redireccionamientos IPv6 ICMP

¿Funciona un socket de red en la capa 4 o 5 de un modelo OSI o un modelo TCP / IP? Si funciona en la capa 4, entonces qué hace realmente la capa de sesión, cuando los sockets son las conexiones reales que actúan como una interfaz entre la aplicación y las capas inferiores.

¿Hay alguna forma de obtener la información de qué dispositivo se está usando con solo conocer su dirección IP?

¿Cuál es el significado de 127.0.0.1 y 10.10.10.1 direcciones IP?

A diferencia de ICMP traceroute, estos paquetes UDP no tienen un número de secuencia que pueda usarse para hacer coincidir el error ICMP con la solicitud original correspondiente. ¿Qué campo se usa para hacer coincidir una solicitud con una respuesta en este caso?

Cuando falla una conexión de socket TCP, ¿cómo aprenden los dos extremos sobre el motivo exacto del fallo?

¿Cómo puedo identificar la IP válida?

¿Hay alguna manera de que dos computadoras en dos subredes diferentes puedan comunicarse?

¿Qué se puede hacer sobre la naturaleza poco confiable de TCP?

Al enviar un paquete a través del TCP. ¿El cuerpo TCP alcanza unos pocos milisegundos de retraso después del encabezado TCP? ¿Alguien podría explicar por qué esto podría estar sucediendo?

Cómo calcular las redundancias de la dirección IP de la red (buscar direcciones IP duplicadas)

¿Cuál es el tiempo de confirmación en el protocolo TCP?

Infraestructura de Internet: ¿por qué todavía tenemos Hosts.txt localmente para las direcciones IP cuando el DNS básicamente ha desaprobado el uso de Hosts.txt hace 30 años?

Mi dirección IP se considera maliciosa en varios sitios, ¿qué puedo hacer?