Protocolos de ComunicaciónProf.: Héctor Abarca
DOMAIN NAME SYSTEMDNS
Historia
Época ARPANET La traducción nombre-IP de todas las
máquinas conectadas a la red se mantenía en un fichero de texto (HOSTS).
La información de este fichero era mantenida por el Network Information Center del Stanford Research Institute (SRI-NIC).
Historia
Época ARPANET Cada administrador de red remitía por
correo los cambios que ocurrían en la red bajo su autoridad al NIC.
Los administradores de redes también se encargaban de descargar periódicamente la última actualización del archivo HOSTS, para incluir los cambios en sus máquinas.
Historia
Problemas con el HOSTS. Al crecer el número de computadoras, el
archivo se hizo demasiado grande y difícil de manejar.
Cada vez un número mayor de administradores de red se conectaban al servidor FTP del SRI-NIC para descargar un archivo que además crecía rápidamente.
Las instalaciones del SRI-NIC no podían soportar semejante carga.
Historia
Problemas con el HOSTS. Por otro lado, no existía un mecanismo eficaz
para evitar que aparecieran nombres duplicados. Pronto se hicieron frecuentes problemas de este tipo.
También era cada vez más difícil mantener la consistencia del sistema de nombres, los cambios tardaban mucho en hacerse efectivos en todos los hosts.
Historia
Solución. Sistema de Nombres. Debía ser posible repartir la carga entre
varias máquinas, cada una debería poder mantener información local, pero hacerla accesible globalmente.
Descentralizar la administración, es decir no concentrar toda la carga en un solo hosts, evitando así los cuellos de botella.
Historia
Solución. Sistema de Nombres. Este sistema de nombres debería evitar a toda
costa que se pudieran dar nombres duplicados. Sistema Jerárquico.
Primera definición DNS: RFC’s 882, 883.
Especificación actual: RFC’s 1034, 1035.
DNS
¿Qué es DNS? Domain Name System, conjunto de
protocolos y servicios que permiten a los usuarios de internet utilizar nombres canónicos en lugar de tener que recordar direcciones IP.
Ejemplo: www.hotmail.com podría tener como dirección ip 216.32.74.51
DNS
¿Qué es DNS? Es una base de datos distribuida. La información se mantiene en servidores
de nombres (name servers) La estructura de la base de datos es un
árbol invertido con la raíz en la parte superior (a la raíz se le llama “.”)
Cada nodo del árbol representa una partición o dominio, el cual puede ser dividido a su vez en subdominios.
DNS
Objetivo de DNS Traducir una dirección IP en una dirección
canónica para facilitar su memorización. Convertir una dirección IP en una o varias
direcciones canónicas.
www.uvm.cl
192.25.36.5
DNS
DNS
Estructura de la Base de Datos. Dominio Root
• Es el más alto en la jerarquía, se expresa con un punto (.)
Dominios Top-Level• com, org, net, edu, gov, info,…
Dominios de segundo nivel• Contienen hosts• Contienen subdominios
DNS
Estructura de la Base de Datos.
Es una estructura jerárquica, similar a la de un sistema de ficheros UNIX. Ambos se pueden representar como un árbol invertido. El árbol recibe el nombre de Espacio de Nombres de Dominio.
DNS
Estructura de la Base de Datos. Cada dominio tiene una etiqueta que lo
identifica dentro de su dominio padre, la que no puede coincidir con la que tenga otro dominio del mismo padre.
Un dominio tiene también un nombre completo (FQDN) que lo identifica de manera única dentro del espacio de nombres de dominio.
DNS
Administración Distintas organizaciones administran
dominios o grupos de dominios. Una organización encargada de un dominio
puede decidir dividirlo en subdominios y delegar la responsabilidad de su administración en otras organizaciones.
DNS
Administración Más aún, la división no tiene porque
corresponder con dominios enteros, sino que puede llevarse a cabo de manera más flexible, dando origen a lo que se llaman Zonas.
Los dominios, además de contener subdominios, pueden contener hosts.
DNS
Estructura Cliente/Servidor Servidores de Nombres Clientes (RESOLVERS)
DNS
Servidores de Nombres. Contienen información sobre fragmentos
de la base de datos. Los utilizan para responder a las peticiones de los clientes. Saben donde buscar los datos que no administran.
Son los programas que se encargan de almacenar información sobre el espacio de nombres de dominio.
DNS
Servidores de Nombres. Tiene información completa sobre una o
varias zonas del espacio de nombres de dominio. Se dice que mantiene información autorizada para dichas zonas.
Si hay delegación de zonas, el servidor almacenará también referencias a los servidores que contienen información autorizada para dichas zonas.
DNS
Servidores de Nombres. Tipos de servidores (en relación con zonas
concretas).• Maestros o Primarios: Obtienen la información
sobre zonas de archivos contenidos en la máquina donde corren. Contienen información autorizada para esa zona.
• Esclavos o Secundarios: Obtienen la información sobre zonas de otros servidores autorizados para esas zonas.
DNS
Servidores de Nombres. Cuando un servidor secundario arranca,
contacta con los primarios necesarios y descarga de ellos toda la información sobre zonas.
Una vez funcionando, el secundario pide periódicamente al primario información actualizada sobre la zona.
Esta redundancia en la información sobre zonas ayuda a repartir la carga sobre los distintos servidores, y añade seguridad al sistema.
DNS
Clientes (Resolvers) Programas, o librerías de funciones que formulan
consultas a los servidores. El proceso por el que el servidor encuentra la respuesta es transparente para ellos.
Los resolvers son los clientes del sistema DNS.• Consultan al servidor.• Interpretan la respuesta. Si no llega o es
incorrecta, posiblemente vuelven a formular la consulta.
• Devuelven la información al programa que la pidió.
DNS
Clientes (Resolvers) Algunas implementaciones más elaborada
hacen cosas más sofisticadas, como mantener en caché información ya consultada por si se requiere de nuevo.
Normalmente son librerías de funciones que están compiladas en los programas que utilizan servicios de red.
DNS
Resolución: Proceso por el cual se busca en el espacio
de nombres de dominio la información correspondiente a un dominio concreto.
Cuando un servidor recibe una consulta de un resolver, busca en sus registros la información correspondiente, si la encuentra, la devuelve.
DNS
Resolución Los servidores DNS responden a dos
tipos de consultas:• Iterativas (no recursivas)• Recursivas
DNS
Resolución Consultas Iterativas (no recursivas)
• El cliente hace una consulta al Servidor DNS y este le responde con la mejor respuesta que pueda darse basada sobre su caché o en las zonas locales. Si no es posible dar una respuesta, la consulta se reenvía hacia otro Servidor DNS repitiéndose este proceso hasta encontrar al Servidor DNS que tiene la Zona de Autoridad capaz de resolver la consulta.
DNS
Resolución Consultas Iterativas (no recursivas)
DNS
Resolución Consultas Recursivas.
• El Servidor DNS asume toda la carga de proporcionar una respuesta completa para la consulta realizada por el Cliente DNS. El Servidor DNS desarrolla entonces Consultas Iterativas separadas hacia otros Servidores DNS (en lugar de hacerlo el Cliente DNS) para lograr la respuesta.
DNS
Resolución Consultas Recursivas.
DNS
Zonas de Autor¡dad Permiten al Servidor Maestro o Primario
cargar la información de una zona. Cada Zona de Autoridad abarca al menos un dominio y posiblemente sus sub-dominios, si estos últimos no son delegados a otras zonas de autoridad.
La información de cada Zona de Autoridad es almacenada de forma local en un fichero en el Servidor DNS.
DNS
Zonas de Autor¡dad Las zonas que se pueden resolver
son: • Zonas de Reenvío:
– Devuelven direcciones IP para las búsquedas hechas para nombres FQDN (Fully Qualified Domain Name).
• Zonas de Resolución Inversa:– Devuelven nombres FQDN (Fully Qualified Domain
Name) para las búsquedas hechas para direcciones IP.
DNS
Zonas de Autor¡dad Zonas de Reenvío.
• En el caso de dominios públicos, la responsabilidad de que exista una Zona de Autoridad para cada Zona de Reenvío corresponde a la autoridad misma del dominio, es decir, y por lo general, quien esté registrado como autoridad del dominio tras consultar una base de datos WHOIS. Quienes compran dominios a través de un NIC (por ejemplo ejemplo: www.nic.mx) son quienes se hacen cargo de las Zonas de Reenvío, ya sea a través de su propio Servidor DNS o bien a través de los Servidores DNS de su ISP.
• Salvo que se trate de un dominio para uso en una red local, todo dominio debe ser primero tramitado con un NIC como requisito para tener derecho legal a utilizarlo y poder propagarlo a través de Internet.
DNS
Zonas de Autor¡dad Zonas de Resolución Inversa.
• En el caso de segmentos de red públicos, la responsabilidad de que exista de que exista una Zona de Autoridad para cada Zona de Resolución Inversa corresponde a la autoridad misma del segmento, es decir, y por lo general, quien esté registrado como autoridad del segmento tras consultar una base de datos WHOIS.
• Los grandes ISP, y en algunos casos algunas empresas, son quienes se hacen cargo de las Zonas de Resolución Inversa.
DNS
Caché Mecanismo que acelera todo el proceso de resolución. Cuando un servidor se ve obligado a pedir información
a otros, el proceso esta “aprendiendo” cosas sobre el espacio de nombres de dominio.
Todos los datos que utiliza el servidor para hallar la respuesta final a una consulta, así como el dato pedido se conservan por un espacio de tiempo.
DNS
Caché Si se recibe otra consulta, el servidor puede tener
la respuesta todavía en caché. No tiene que pedirla de nuevo.
Los datos en caché tienen que expirar y ser descartados en algún momento, de lo contrario nunca se harían efectivos los cambios introducidos en los servidores autorizados. Esto se controla mediante un parámetro de configuración: TTL (Time To Live)
DNS
Caché Tiene que haber un compromiso entre:
• Optimización del rendimiento (TTL largos)
• Mantenimiento de la consistencia de DNS (TTL cortos)