por internet hablan mucho sobre esas dos tipos de consultas en dns, pero no me aclara bien ya que muchas veces ponen la misma imagen o concepto para recursiva e iterativa. diganme si estoy equivocado.
cuando el cliente hace una consulta al dns local o el primer dns (puede ser del isp) hace una consulta iterativa (o llamada también una consulta simple) y no recursiva porque no busca otros recursos dns para la petición. ahora cuando el dns local no encuentra la respuesta para el cliente, entonces el dns local hace una consulta al dns raiz en forma de consulta recursiva y este raiz pregunta a otros servidores y asi sigue la cadena.
consulta iterativa: cuando pregunta al servidor dns, él te responde con lo que tiene y no pregunta a otros servidores dns. ej.
cliente -> dns local
dns local -> raiz dns, raiz dns -> dns local
dns local -> .com, .com -> dns local
dns local -> microsoft.com -> microsoft.com -> dns local
dns local -> www.microsoft.com -> www.microsoft.com -> dns local
dns local -> cliente
correcto?
consulta recursiva cuando los servidores dns mismos buscan a otros dns para buscar la respuesta ej.
cliente -> dns local
dns local -> raiz dns
raiz dns -> .com
.com -> microsoft.com
microsoft.com -> www.microsoft.com
y asi el proceso invertido hasta llegar al cliente.
correcto o no?
Copyright © 2024 Q2A.ES - All rights reserved.
Answers & Comments
Verified answer
Si la consulta es iterativa o recursiva depende del cliente, si solicito una resolucion completa (esto lo hace mediante un aviso en el mensaje de consulta DNS) esto genera una consulta recursiva, si no solicito una resolucion completa, se genera una iterativa.
Por otro lado, el servidor raiz nunca consulta a otros servidores, cuando un servidor no puede resolver un dominio, consulta al root otros servidores habilitados para ese dominio y el root le devuelve la ip para contactarlos, si la consulta era recursiva, el servidor DNS que no podia resolver el nombre, este solicita al root la direccion para consultar a un servidor DNS que pueda resolverla, el root le contesta y el servidor envia la consulta recursiva al otro servidor DNS, si este no puede resolverla, hara lo mismo, sino resolvera la consulta, la devolvera al primer servidor DNS y este le contestara al usuario. Si la consulta hubiese sido iterativa, el primer servidor DNS ubiese devuelto solo la ip del otro servidor DNS para resolver la consulta.
Cualquier duda que tengas y quieras leer mas y verlo mas en practica, lee el TCP/IP illustrated de Stevens y descarga el programa Wireshark, funciona tanto para linux como windows, que sirve para analizar el trafico de una maquina, ahi podras ver como son las consultas y respuestas de un DNS
Slds