mecanismo de resolución de direcciones
los resolutores de nombres de dominio determinan los servidores de nombres de dominio responsables del nombre de dominio en cuestión mediante una secuencia de consultas que comienzan con la etiqueta de dominio,
un solucionador de DNS que implementa el enfoque iterativo exigido por RFC 1034; en este caso, el solucionador consulta tres servidores de nombres para resolver el nombre de dominio completo «www.wikipedia.org».
para el correcto funcionamiento de su solucionador de nombres de dominio, un host de red se configura con una caché inicial (sugerencias) de las direcciones conocidas de los servidores de nombres raíz. Las sugerencias son actualizadas periódicamente por un administrador al recuperar un conjunto de datos de una fuente confiable.,
asumiendo que el solucionador no tiene registros en caché para acelerar el proceso, el proceso de resolución comienza con una consulta a uno de los servidores raíz. En una operación típica, los servidores raíz no responden directamente, sino que responden con una referencia a servidores más autorizados, por ejemplo, una consulta para «www.wikipedia.org» se refiere a los servidores de la organización. El solucionador ahora consulta a los servidores a los que se hace referencia y repite iterativamente este proceso hasta que recibe una respuesta autorizada. El diagrama ilustra este proceso para el host que es nombrado por el nombre de dominio completo «www.wikipedia.org».,
este mecanismo colocaría una gran carga de tráfico en los servidores raíz, si cada resolución en Internet requiere comenzar en la raíz. En la práctica, el almacenamiento en caché se utiliza en los servidores DNS para descargar los servidores raíz, y como resultado, los servidores de nombres raíz en realidad solo participan en una fracción relativamente pequeña de todas las solicitudes.
servidor de nombres recursivo y de almacenamiento en caché
en teoría, los servidores de nombres autorizados son suficientes para el funcionamiento de Internet., Sin embargo, con solo servidores de nombres autoritativos operando, cada consulta DNS debe comenzar con consultas recursivas en la zona raíz del sistema de nombres de dominio y cada sistema de usuario tendría que implementar un software de resolución capaz de operación recursiva.
para mejorar la eficiencia, reducir el tráfico DNS a través de Internet y aumentar el rendimiento en las aplicaciones de usuario final, el sistema de nombres de dominio admite servidores de caché DNS que almacenan los resultados de las consultas DNS durante un período de tiempo determinado en la configuración (time-to-live) del registro de nombre de dominio en cuestión.,Normalmente, estos servidores DNS de almacenamiento en caché también implementan el algoritmo recursivo necesario para resolver un nombre dado que comienza con la raíz DNS hasta los servidores de nombres autoritativos del dominio consultado. Con esta función implementada en el servidor de nombres, las aplicaciones de usuario ganan eficiencia en diseño y operación.
la combinación de almacenamiento en caché DNS y Funciones recursivas en un servidor de nombres no es obligatoria; las funciones se pueden implementar de forma independiente en servidores para fines especiales.
los proveedores de servicios de Internet suelen proporcionar servidores de nombres recursivos y de almacenamiento en caché para sus clientes., Además, muchos enrutadores de redes domésticas implementan cachés y recurtores DNS para mejorar la eficiencia en la red local.
solucionadores DNS
el lado cliente del DNS se llama solucionador DNS. Un solucionador es responsable de iniciar y secuenciar las consultas que en última instancia conducen a una resolución completa (Traducción) del recurso buscado, por ejemplo, la traducción de un nombre de dominio a una dirección IP. Los resolutores DNS se clasifican por una variedad de métodos de consulta, como recursivos, no recursivos e iterativos. Un proceso de resolución puede utilizar una combinación de estos métodos.,
en una consulta no recursiva, un solucionador de DNS consulta a un servidor DNS que proporciona un registro para el que el servidor es autoritativo o proporciona un resultado parcial sin consultar a otros servidores. En el caso de un solucionador DNS de almacenamiento en caché, la consulta no recursiva de su caché DNS local ofrece un resultado y reduce la carga en los servidores DNS de origen al almacenar en caché los registros de recursos DNS durante un período de tiempo después de una respuesta inicial de los servidores DNS de origen.
en una consulta recursiva, un solucionador de DNS consulta a un solo servidor DNS, que a su vez puede consultar a otros servidores DNS en nombre del solicitante., Por ejemplo, un solucionador de stub simple que se ejecuta en un enrutador doméstico generalmente realiza una consulta recursiva al servidor DNS ejecutado por el ISP del usuario. Una consulta recursiva es aquella para la cual el servidor DNS responde a la consulta completamente consultando a otros servidores de nombres según sea necesario. En una operación típica, un cliente emite una consulta recursiva a un servidor DNS recursivo de almacenamiento en caché, que posteriormente emite consultas no recursivas para determinar la respuesta y enviar una respuesta única al cliente., El solucionador, u otro servidor DNS que actúa recursivamente en nombre del solucionador, negocia el uso del servicio recursivo utilizando bits en los encabezados de consulta. Los servidores DNS no son necesarios para admitir consultas recursivas.
el procedimiento de consulta iterativa es un proceso en el que un solucionador de DNS consulta una cadena de uno o más servidores DNS. Cada servidor refiere al cliente al siguiente servidor de la cadena, hasta que el servidor actual pueda resolver completamente la solicitud. Por ejemplo, una posible resolución de www.example.com consultaría un servidor raíz global, luego un servidor» com «y finalmente un «example.com» servidor.,
las dependencias circulares y los registros de cola
los servidores de nombres en las delegaciones se identifican por nombre, en lugar de por dirección IP. Esto significa que un servidor de nombres de resolución debe emitir otra solicitud DNS para averiguar la dirección IP del servidor al que se ha referido. Si el nombre dado en la delegación es un subdominio del dominio para el que se está proporcionando la delegación, hay una dependencia circular.
en este caso, el servidor de nombres que proporciona la delegación también debe proporcionar una o más direcciones IP para el servidor de nombres autorizado mencionado en la delegación., Esta información se llama pegamento. El servidor de nombres de delegación proporciona este pegamento en forma de registros en la sección adicional de la respuesta DNS y proporciona la delegación en la sección Autoridad de la respuesta. Un registro glue es una combinación del servidor de nombres y la dirección IP.
por ejemplo, si el servidor de nombres autoritativo para example.org es ns1.example.org, una computadora tratando de resolver www.example.org primero resuelve ns1.example.org. As ns1 is contained in example.org, esto requiere resolver example.org primero, que presenta una dependencia circular., Para romper la dependencia, el servidor de nombres de la organización de dominio de nivel superior incluye glue junto con la Delegación para example.org. los registros de pegamento son registros de direcciones que proporcionan direcciones IP para ns1.example.org. el solucionador utiliza una o más de estas direcciones IP para consultar a uno de los servidores autoritativos del dominio, lo que le permite completar la consulta DNS.
almacenamiento en caché de Registros
una práctica estándar en la implementación de la resolución de nombres en aplicaciones es reducir la carga en los servidores del sistema de nombres de dominio mediante el almacenamiento en caché de los resultados localmente o en hosts de resolución intermedios., Los resultados obtenidos de una solicitud DNS siempre están asociados con el tiempo de vida (TTL), un tiempo de caducidad después del cual los resultados deben descartarse o actualizarse. El TTL lo establece el administrador del servidor DNS autoritativo. El período de validez puede variar de unos pocos segundos a días o incluso semanas.
como resultado de esta arquitectura de almacenamiento en caché distribuido, los cambios en los registros DNS no se propagan por toda la red inmediatamente, sino que requieren que todos los cachés caducen y se actualicen después del TTL. RFC 1912 transmite reglas básicas para determinar los valores TTL apropiados.,
algunos resolutores pueden anular los valores TTL, ya que el protocolo admite el almacenamiento en caché durante un máximo de sesenta y ocho años o ningún almacenamiento en caché. El almacenamiento en caché negativo, es decir, el almacenamiento en caché del hecho de la inexistencia de un registro, es determinado por los servidores de nombres autorizados para una zona que debe incluir el registro de inicio de Autoridad (SOA) cuando no existe ningún dato del tipo solicitado. El valor del campo mínimo del registro SOA y el TTL del propio SOA se utiliza para establecer el TTL para la respuesta negativa.,
búsqueda inversa
una búsqueda inversa de DNS es una consulta del DNS para nombres de dominio cuando se conoce la dirección IP. Varios nombres de dominio pueden estar asociados con una dirección IP. El DNS almacena las direcciones IP en forma de nombres de dominio como nombres con formato especial en registros de puntero (PTR) dentro del dominio de nivel superior de la infraestructura arpa. Para IPv4, el dominio es in-addr.arpa. para IPv6, el dominio de búsqueda inversa es ip6.arpa. la dirección IP se representa como un nombre en la representación de octetos en orden inverso para IPv4, y en la representación de nibble en orden inverso para IPv6.,
al realizar una búsqueda inversa, el cliente DNS convierte la dirección en estos formatos antes de consultar el nombre de un registro PTR siguiendo la cadena de delegación como para cualquier consulta DNS. Por ejemplo, suponiendo que la dirección IPv4 208.80.152.2 esté asignada a Wikimedia, se representa como un nombre DNS en orden inverso: 2.152.80.208.in-addr.arpa. cuando el solucionador DNS recibe una solicitud de puntero (PTR), comienza consultando los servidores raíz, que apuntan a los servidores de American Registry for Internet Numbers (ARIN) para el 208.in-addr.arpa zona. Los servidores de ARIN delegan 152.80.208. in-addr.,arpa a Wikimedia a la que el solucionador envía otra consulta para 2.152.80.208.in-addr.arpa, lo que resulta en una respuesta autorizada.
Cliente de búsqueda
resolución de DNS secuencia
los Usuarios generalmente no se comunican directamente con una resolución de DNS. En su lugar, la resolución DNS se lleva a cabo de forma transparente en aplicaciones como navegadores web, Clientes de correo electrónico y otras aplicaciones de Internet., Cuando una aplicación realiza una solicitud que requiere una búsqueda de nombre de dominio, dichos programas envían una solicitud de resolución al solucionador DNS en el sistema operativo local, que a su vez maneja las comunicaciones requeridas.
el solucionador DNS casi invariablemente tendrá una caché (ver arriba) que contiene búsquedas recientes. Si la caché puede proporcionar la respuesta a la solicitud, el solucionador devolverá el valor en la caché al programa que realizó la solicitud. Si la caché no contiene la respuesta, El Solucionador enviará la solicitud a uno o más servidores DNS designados., En el caso de la mayoría de los usuarios domésticos, el proveedor de servicios de Internet al que se conecta la máquina generalmente suministrará este servidor DNS: dicho usuario habrá configurado la dirección de ese servidor manualmente o permitirá que DHCP la establezca; sin embargo, cuando los administradores de sistemas han configurado sistemas para usar sus propios servidores DNS, sus resolutores DNS apuntan a servidores de nombres mantenidos por separado de la organización. En cualquier caso, el servidor de nombres así consultado seguirá el proceso descrito anteriormente, hasta que encuentre un resultado con éxito o no., Luego devuelve sus resultados al solucionador DNS; suponiendo que haya encontrado un resultado, el solucionador almacena debidamente en caché ese resultado para uso futuro y devuelve el resultado al software que inició la solicitud.
solucionadores rotos
algunos ISP grandes han configurado sus servidores DNS para violar reglas, como desobedecer TTLs o indicar que un nombre de dominio no existe solo porque uno de sus servidores de nombres no responde.
algunas aplicaciones como los navegadores web mantienen una caché DNS interna para evitar búsquedas repetidas a través de la red., Esta práctica puede agregar dificultad adicional al depurar problemas de DNS, ya que oscurece el historial de dichos datos. Estos cachés suelen utilizar tiempos de almacenamiento en caché muy cortos en el orden de un minuto.
Internet Explorer representa una excepción notable: versiones hasta IE 3.X cache DNS registra durante 24 horas de forma predeterminada. Internet Explorer 4.x y versiones posteriores (hasta IE 8) disminuyen el valor de tiempo de espera predeterminado a media hora, que se puede cambiar modificando la configuración predeterminada.
Cuando Google Chrome detecta problemas con el servidor DNS, muestra un mensaje de error específico.,
otras aplicaciones
El sistema de nombres de dominio incluye varias otras funciones y características.
no es necesario que los nombres de host y las direcciones IP coincidan en una relación uno a uno. Varios nombres de host pueden corresponder a una sola dirección IP, lo que es útil en el alojamiento virtual, en el que muchos sitios web se sirven desde un solo host. Alternativamente, un solo nombre de host puede resolver a muchas direcciones IP para facilitar la tolerancia a errores y la distribución de carga a varias instancias de servidor en una empresa o en Internet global.,
DNS sirve para otros propósitos además de traducir nombres a direcciones IP. Por ejemplo, los agentes de transferencia de correo utilizan DNS para encontrar el mejor servidor de correo para entregar correo electrónico: un registro MX proporciona una asignación entre un dominio y un intercambiador de correo; esto puede proporcionar una capa adicional de tolerancia a errores y distribución de carga.
el DNS se utiliza para el almacenamiento eficiente y la distribución de direcciones IP de hosts de correo electrónico en la lista negra., Un método común es colocar la dirección IP del host sujeto en el subdominio de un nombre de dominio de nivel superior, y resolver ese nombre a un registro que indica una indicación positiva o negativa.
por ejemplo:
los servidores de correo electrónico pueden consultar la lista negra.ejemplo para averiguar si un host específico que se conecta a ellos está en la lista negra. Muchas de estas listas negras, ya sea por suscripción o sin costo, están disponibles para su uso por los administradores de correo electrónico y el software anti-spam.,
para proporcionar resiliencia en caso de falla de la computadora o la red, se proporcionan varios servidores DNS para la cobertura de cada dominio. En el nivel superior del DNS global, existen trece grupos de servidores de nombres raíz, con «copias» adicionales de ellos distribuidas en todo el mundo a través de direccionamiento anycast.
el DNS dinámico (DDNS) actualiza un servidor DNS con una dirección IP de cliente sobre la marcha, por ejemplo, cuando se mueve entre ISP o puntos calientes móviles, o cuando la dirección IP cambia administrativamente.