DNS haciendo solicitudes iterativas

DNS haciendo solicitudes iterativas

Me gustaría preguntar si es posible configurar un cliente en Windows o Linux para realizar consultas iterativas en lugar de recursivas.

Solo encontré artículos sobre cómo desactivar la recursividad en el servidor DNS.

Gracias

Respuesta1

No tengo idea de qué podría ser una consulta DNS iterativa.

Una consulta enviada a un servidor DNS puede establecer el indicador "recursión solicitada". En Humanspeak, eso es como decir "cuál es la dirección de [cosa], y si no la sabes, búscala por mí". El servidor puede negar eso y simplemente devolver el equivalente a "No lo sé y no pregunté", o puede responder con "Pregunté por ahí y es [esto]" o "Pregunté por ahí y fue". dijo que es [esto]", o "Conozco este, es [esto], y en realidad soy una autoridad en esa dirección".

Una consulta no recursiva es simplemente "cuál es la dirección de [cosa], pero si no lo sabe, dígalo". Es posible que el servidor ya conozca la respuesta de una consulta recursiva anterior de todos modos y la devuelva, o puede que no, pero de cualquier manera no consultará nada.

Suponiendo que un servidor, llamémoslo S, acepta la solicitud de recursividad, tomará el nombre (digamos, "www.example.com") y comenzará con el componente más a la derecha para el cual tiene información.

Esto puede no ser nada en absoluto, en cuyo caso S envía la consulta a los servidores raíz, una lista de los cuales ha almacenado en caché o se le proporcionó como una lista codificada o preconfigurada. Uno de los servidores raíz recibirá la solicitud de "www.example.com, recursividad solicitada"; Los servidores raíz no recurren, pero devolverán lo mejor que conocen: los servidores de nombres para ".com" junto con sus direcciones.
Intenta correrdig www.google.com @c.root-servers.net

Luego, S le pregunta a uno de ellos "www.example.com, recursividad solicitada". Tampoco recurrirán, sino que devolverán la siguiente mejor opción: los servidores de nombres de "example.com", junto con sus direcciones (nuevamente omitiendo dónde obtienen eso: busque "registros adhesivos").
Intenta correrdig www.google.com @k.gtld-servers.net

Luego, S le pregunta a uno de ellos "www.example.com, recursividad solicitada". No necesitan recurrir porque conocen la respuesta, por lo que la enviarán de vuelta junto con la bandera "respuesta autorizada".
Intente ejecutar dig www.google.com @ns3.google.com(tenga en cuenta la bandera "aa"; aquí estáuna lista de indicadores de respuesta).

Luego, S enviará la respuesta final al cliente, sin el indicador "aa" porque S no tiene autoridad, es decir, tenía que preguntar.

En cierto sentido, S trata una consulta "recursiva" "iterativamente". Si el cliente quisiera hacer eso directamente, necesitaría tener una lista preconfigurada de servidores raíz (que podría actualizar preguntándoles) y debería almacenar en caché los resultados para que otros programas locales los reutilicen. Lo que básicamente significa que estaría ejecutando un servidor de nombres recurrente, de solo almacenamiento en caché (porque no tiene autoridad para nada) en el host local.

Entonces... ¿puedes aclarar tu pregunta? ¿Qué crees que quieres hacer?

Respuesta2

Cuando envía una solicitud DNS a un servidor, puede sintonizar el modo iterativo. En esta solicitud, ignorará la configuración del servidor DNS.

Ejemplo, puedes probarlo en dig o nslookup

dig +norecurse netpas.co

Si el servidor DNS almacenó en caché el registro, obtendrá el registro A. O la sugerencia de qué servidor DNS debe probar a continuación.

información relacionada