UT2 - Servicios de Nombre de Dominios DNS PDF
Document Details
Uploaded by SupportiveSanJose179
IES Virgen de la Paz
Tags
Summary
This document provides an overview of the Domain Name System (DNS). It covers topics like the introduction to DNS, systems of names, and the organization of the name space. The document is part of a course, focusing on the fundamental concepts of DNS.
Full Transcript
UNIDAD 2: SERVICIO DE NOMBRE DE DOMINIO (DNS) CONTENIDOS - Introducción - Sistemas de nombres planos y jerárquicos - Delegación de autoridad - Clientes DNS - Registro de nombres de dominio en Internet - Implementación del DNS de Internet - Consultas DNS (Resolutores de nombres) - Herramientas de co...
UNIDAD 2: SERVICIO DE NOMBRE DE DOMINIO (DNS) CONTENIDOS - Introducción - Sistemas de nombres planos y jerárquicos - Delegación de autoridad - Clientes DNS - Registro de nombres de dominio en Internet - Implementación del DNS de Internet - Consultas DNS (Resolutores de nombres) - Herramientas de consulta a servidores DNS - Servidores DNS UNIDAD 2 : DNS Introducción Antes de 1980, la red ARPANET tenía unos pocos cientos de ordenadores. las correspondencias entre nombre de ordenador y su dirección IP estaban contenidos en un simple fichero llamado hosts. Este fichero estaba almacenado en un ordenador en California, el resto de ordenadores de la red se limitaban a copiar dicho fichero una vez a la semana para tenerlo actualizado. UNIDAD 2 : DNS Introducción No obstante, en pocos años surgieron problemas debido al crecimiento del número de ordenadores conectados, pues el fichero hosts se volvió demasiado extenso y, por tanto, había que actualizarlo varias veces al día. Asimismo, como consecuencia del tráfico de red hacia y desde este ordenador, se formó un cuello de botella en la propia red. Por otro lado, el fichero hosts, exigía que el nombre de cada ordenador fuera único en toda la red y con tanto ordenador empezó a complicarse el nombrarlos. Por tanto, para solucionar estos problemas se creó el sistema Domain Name System (DNS). DNS es un servicio de resolución de nombres, que resuelve direcciones legibles en direcciones IP. Por ejemplo, www.microsoft.com en 207.46.20.30. DNS utiliza un conjunto distribuido de servidores para resolver los nombres asociados con estas direcciones numéricas, formando una enorme base de datos distribuida. Esto quiere decir que no hay un ordenador central que guarda toda la información de los nombres, sino que esta información está repartida en miles de ordenadores por todo Internet. Asimismo, utiliza un sistema jerárquico para crear una base de datos y así proporcionar una resolución de nombres. La jerarquía es similar a un árbol invertido con la raíz en la parte superior y las ramas por debajo. UNIDAD 2 : DNS Introducción Este árbol se denomina espacio de nombres. UNIDAD 2 : DNS Introducción En la parte superior de la jerarquía, los servidores raíz mantienen registros sobre cómo alcanzar los servidores de dominio de nivel superior, los cuales a su vez tienen registros que apuntan a los servidores de dominio de nivel secundario y así sucesivamente. UNIDAD 2 : DNS Introducción Componentes Espacio de nombres de dominio DNS, jerarquía estructurada de dominios para organizar nombres. Registros de recursos (RR), asignan nombres de dominio DNS a un tipo específico de información de recurso para resolver nombres (dirección IP). Servidores DNS, responden a las consultas de nombres formuladas por los clientes. Clientes DNS ( "resolvers") consultan a los servidores los nombres a resolver. UNIDAD 2 : DNS Introducción Componentes Los auténticos clientes son los "resolvers", rutinas del sistema que crean peticiones y las mandan a un servidor DNS a través de la red. UNIDAD 2 : DNS Sistemas de nombres planos y jerárquicos Organización del espacio de nombres El espacio de nombres DNS está agrupado en diferentes niveles llamados dominios que se organizan de forma jerárquica en forma de árbol invertido. Este árbol comienza en el nodo raíz situado en el nivel superior y, por debajo de él, pueden existir un número indeterminado de nodos de nivel inferior. No obstante, normalmente se utilizan hasta cinco niveles, por ejemplo: en libre.cult.mad.es (4 niveles). Todos los dominios se organizan por nombres separados por puntos, de más general (derecha) a lo más particular (izquierda) El nodo raíz se identifica mediante un nombre nulo (0 caracteres). El nombre completo de un nodo está formado por el conjunto de nombres que forman la trayectoria desde ese nodo hasta el nodo raíz. Como separador de niveles se utiliza el carácter punto. El nombre de dominio completo se llama nombre de dominio completamente cualificado o Fully Qualified Domain Name (FQDN). El FQDN de un nodo del árbol debe acabar con un punto. UNIDAD 2 : DNS Sistemas de nombres planos y jerárquicos Organización del espacio de nombres El nombre FQDN del equipo host-a es host-a.ejemplo.microsoft.com. UNIDAD 2 : DNS Sistemas de nombres planos y jerárquicos Dominio Raíz El dominio raíz se ubica en la parte más alta del árbol y representa un nivel sin nombre. Cada servidor DNS local debe conocer, por lo menos, el nombre de uno de los servidores raíz. En distribuciones basadas en Debian cuando usan bind están en el archivo /etc/bind/db.root. Actualmente, existen 13 (*) servidores de nombres raíz en todo el mundo. La raíz de la base de datos de DNS en Internet es administrada por la Internet Corporation for Assigned Names and Numbers (ICANN) Internet Network Information Center (InterNIC), fue el principal organismo gubernamental de internet responsable de los nombres de dominio y las direcciones IP, las asignaciones fueron hasta el 18 de septiembre de 1998, cuando este papel fue asumido por la ICANN. Los servidores raíz contienen el fichero de la zona "." , que almacena cuáles son los servidores DNS autorizados para cada uno de los dominios TLD (dominios de PRIMER NIVEL) Cada uno de los servidores raíz tiene múltiples copias repartidas por el mundo. Sin embargo, todas las copias de un servidor raíz se identifican por la misma IP. Los routers de Internet encaminan la pregunta hacia la copia más cercana (ANYCAST) UNIDAD 2 : DNS Sistemas de nombres planos y jerárquicos Dominio Raíz UNIDAD 2 : DNS Sistemas de nombres planos y jerárquicos Dominios de Primer Nivel TLD La lista completa de dominios de primer nivel: https://www.iana.org/domains/root/db Principalmente, existen de 2 tipos: Geográficos (country code top-level domain o ccTLD): son usados por un país o un territorio dependiente. Utiliza los códigos de país de 2 letras asignados por la ISO 3166-1. Por ejemplo,.es para España,.mx para México,.gt para Guatemala,.do para República Dominicana,.sv para El Salvador o.ar para Argentina. Genéricos (gTLD o generic top-level domain ): tienen tres o más letras de largo e inicialmente pensados para una clase particular de organizaciones. Por ejemplo,.com para organizaciones comerciales. Actualmente, la mayoría de ellos pueden usarse sin restricción. No obstante se mantienen una serie de ellos para usarse de manera restringida. Por ejemplo,.mil (militares) y.gov (gubernamental) están restringidos para el uso por las respectivas autoridades estadounidenses. El TLD.edu solía estar disponible para cualquier institución educativa, pero ahora está reservado solo para instituciones establecidas en los Estados Unidos. Los gTLD se clasifican, a su vez, en: Dominios de nivel superior patrocinados ( sponsored, sTLD): Ej..aero,.coop,.cat y.museum Dominios de nivel superior no patrocinados (unsponsored, uTLD): Ej..com,.net,.org o.info UNIDAD 2 : DNS Sistemas de nombres planos y jerárquicos Dominios de Primer Nivel TLD.com aún lidera el mercado, mientras que los nuevos gTLD siguen apareciendo. A partir de junio de 2022, el 52.8% de Internet usa dominios.com, mucho más que otros dominios genéricos de nivel superior (gTLD). A modo de comparación,.org, que es el segundo gTLD más popular, solo representa alrededor del 4.4% de todos los nombres de dominio registrados. UNIDAD 2 : DNS Sistemas de nombres planos y jerárquicos Dominios de Primer Nivel TLD A principios de 2022, todos los nuevos gTLD constituían alrededor del 7.5 % de todos los sitios web. Hoy,.xyz lidera el grupo con más de 4.8 millones de dominios registrados. Si bien, la participación de mercado combinada de todos los nuevos gTLD es pequeña en comparación con.com, los nuevos gTLD tienen un crecimiento año tras año mucho más significativo. UNIDAD 2 : DNS Sistemas de nombres planos y jerárquicos Dominios de Primer Nivel TLD A junio de 2022, el ccTLD más popular era.tk para Tokelau, con más de 26 millones de dominios registrados. Curiosamente, la isla solo tiene una población de menos de mil quinientos. El resto de las extensiones de dominio que encabezan la lista son de Europa, como.de,.uk,.ru y.nl. Esta tendencia significa la prevalencia de los ccTLD en el continente en comparación con el resto del mundo, tanto que representan el 61% de los registros de dominios en la región. UNIDAD 2 : DNS Sistemas de nombres planos y jerárquicos Dominios de Segundo Nivel Los dominios de segundo nivel tienen nombres de longitud variable y están registrados en Internet. Siempre se basan en un dominio de nivel superior apropiado (.com,.net,...), según el tipo de organización o ubicación geográfica donde se utiliza el nombre. Por ej. microsoft.com. es el nombre de dominio de segundo nivel registrado por la empresa Microsoft. Señalar, que lo que comúnmente se llama nombre de dominio (domain name), por ejemplo, asir.es, consiste en la combinación de un SLD y un TLD, escritos de izquierda a derecha, colocando el nivel más bajo de la jerarquía a la izquierda y el más alto a la derecha. Los dominios de segundo nivel pueden contener a su vez otros dominios (subdominios). Subdominios Nombres adicionales que puede crear una organización, derivados del nombre de dominio registrado de segundo nivel. Los subdominios suelen crearse para reflejar la organización de la empresa por departamentos, ubicaciones de sus sedes, áreas de negocio... "ejemplo.microsoft.com.", sería un subdominio dentro del domino de segundo nivel microsoft.com. UNIDAD 2 : DNS Sistemas de nombres planos y jerárquicos Nombre de recurso o de host Los nombres de recurso representan una hoja en el árbol DNS para identificar un recurso específico. Normalmente, la etiqueta situada más a la izquierda de un nombre de dominio identifica un equipo del dominio específico en la red: “host1.ejemplo.microsoft.com.“ El nombre completo de un host en un dominio, constituye el FQDN (Full Qualified Domain Name). Es decir, a los nombres como www.asir.com, www.informatica.asir.com, etc. se les denomina FQDN (Full Qualified Domain Name), que no es más que un nombre que incluye el nombre de un equipo y el nombre del dominio de ese equipo. Técnicamente, un FQDN debe acabar en punto (www.asir.com.), como referencia al nodo raíz, pero suele ser habitual no ponerlo. La longitud máxima permitida para un FQDN (RFC 1035, RFC 1123, RFC 2181) es de 255 caracteres, con una restricción adicional de 63 bytes por etiqueta dentro de un nombre de dominio. Las etiquetas FQDN se restringen a un juego de caracteres limitado: letras A-Z, los dígitos, y el carácter guión (-), y no distinguen mayúsculas de minúsculas. En el dominio.es, desde octubre de 2007, se pueden incluir caracteres especiales, como la ñ, ç o vocales acentuadas á, é, í, ó , ú y ü. UNIDAD 2 : DNS Delegación de autoridad La delegación de autoridad es la cesión de la autoridad, por parte del dominio padre, sobre alguno de sus subdominios. En este sentido, permite llevar una administración descentralizada y, por tanto, el control de cada subdominio es delegado. La autoridad que asume la delegación debe mantener actualizados los registros de recurso de ese subdominio. UNIDAD 2 : DNS Delegación de autoridad Los conceptos de autoridad y delegación son básicos en el sistema de nombres de dominios. Cada nodo de la jerarquía se asigna a una autoridad, que es una entidad o persona responsable de la organización y explotación del nodo. Dicha autoridad puede delegar la organización de los niveles más bajos de su nombre de dominio. Los límites de la delegación se reflejan a través de acuerdos entre la autoridad principal y la delegada, no tienen que ser en todas partes iguales. Como ya hemos mencionado, la autoridad del dominio raíz la tiene la ICANN (entidad sin ánimo de lucro), desde donde se crearon los registradores acreditados, que son organizaciones en las que delega, la ICANN, responsabilidades limitadas para la venta y administración de trozos de la jerarquía de nombres de dominio. Los gTLD son autoritariamente administrados por la ICANN y los ccTLD son delegados por la ICANN individualmente a los países. Cada país tiene derecho a definir sus propias reglas de segmentación y delegación de su ccTLD. En España, el ccTLD.es fue concedido por la ICANN en 1988 y gestionado en los primeros años por RedIRIS. Desde el 2000, la gestión corre a cargo de la entidad pública empresarial Red.es, adscrita al Ministerio de Industria, Turismo y Comercio a través de la Secretaría de Estado de Telecomunicaciones y para la Sociedad de la Información. UNIDAD 2 : DNS Delegación de autoridad Teniendo en cuenta todo lo anterior, entenderemos que www.asir.com está compuesto por dos partes, www y.asir.com. El nombre de dominio es.asir.com que fue delegado por la ICANN a una determinada entidad, la cual es ahora la dueña de todo lo que vaya a la izquierda del dominio delegado, y como tal, ha decidido dar el nombre www al equipo donde están alojadas las páginas del sitio web. Este nombre, www, es un convenio para nombrar aquellos equipos que alojan y sirven páginas web, pero se podría haber puesto cualquier otro nombre como nombre del host (miordenador.asir.com). Lo único que se exige es que los nombres de los host deben ser únicos dentro del nombre del dominio. A veces nos encontramos con nombres como: www.informatica.asir.com, donde deberíamos distinguir dos partes,.asir.com como nombre del dominio y www.informatica, donde www es el nombre del host e.informatica es lo que se denomina subdominio. La autoridad delegada (el dueño) del nombre del dominio.asir.com ha decidido que su organización será mejor servida con una estructura de subdominios basada en departamentos (informatica, contabilidad, etc.). También, podría haber decidido, delegar el subdominio.informatica.asir.com a otra entidad. En resumen, el propietario de un nombre de dominio, puede delegar, con las reglas que desee, cualquier cosa a la izquierda del nombre de dominio del que es dueño. La entidad delegada es la responsable de la administración del nombre del dominio; y la unidad delegada es lo que se conoce dentro de las especificaciones DNS como zona (zone). UNIDAD 2 : DNS Clientes DNS Los Sistemas Operativos incluyen funciones (rutinas) de resolución de nombres, llamadas resolvers que son invocadas por diversas aplicaciones. Es decir, cuando una aplicación quiere resolver un nombre de dominio invoca al resolver que será el encargado de devolver la IP a la aplicación. UNIDAD 2 : DNS Registro de nombres de dominio en Internet En principio, a la hora de elegir un nombre de un dominio para usarlo dentro de una red privada, se puede elegir cualquiera. Es decir, siempre y cuando no se haga público y visible en el mundo de Internet. Sin embargo, si el nombre del dominio se quiere hacer público, habrá que registrarlo, eligiendo un nombre que cumpla la normativa en vigor. Registrar un nombre de dominio consiste en reservar el nombre durante un tiempo (normalmente un año) para poder crear subdominios y asociar el nombre con direcciones IP. Las personas, empresas u organizaciones pueden registrar nombres de dominio de segundo nivel y son llamados registrants. En función del uso que se le dará al domino, existen normativas que determinan que nombres se pueden registrar. Un nombre de registro puede ser registrado a través de diferentes compañías, llamadas Agentes Registradores, que asesoran a los registrants, y tramitan la solicitud haciendo de intermediario con los operadores de registro (estos también pueden hacer de agentes de registro). Los agentes registradores deben estar acreditados por los operadores de registro, y tienen libertad para asignar parte del precio que cuesta el registro. UNIDAD 2 : DNS Registro de nombres de dominio en Internet Para registrar un nombre de dominio, lo primero será solicitarlo a alguna de las compañías, acreditadas por la ICANN. Los clientes que quieren solicitar un dominio suelen recurrir a los Agentes Registradores, encargados de realizar los trámites por el cliente con el operador de registro. Los proveedores de servicios de Internet (ISP) también pueden actuar como registradores. UNIDAD 2 : DNS Registro de nombres de dominio en Internet Los nombres de dominio se solicitan bajo uno de los dominios de primer nivel (.es,.com), por ejemplo: novelas.es, cuentos.com… Una vez registrado el dominio, el solicitante puede organizarse como estime conveniente: madrid.suspense.novelas.es cuenca.suspense.novelas.es infantiles.cuentos.com juveniles.cuentos.com Alternativas: Registramos el dominio en un proveedor, en el que tendremos alojada nuestra página web. En este caso, la dirección del dominio tendrá la dirección de nuestro proveedor. Sólo contratamos el dominio y lo dirigimos a una dirección IP publica de nuestra organización. Se puede delegar la resolución de los nombres de nuestro dominio a nuestros servidores DNS y así podemos crear subdominios. UNIDAD 2 : DNS implementación del DNS de Internet La implementación del DNS de Internet se lleva acabo mediante una serie de servidores de nombres (ejecutan software DNS), y la responsabilidad del buen funcionamiento de estos equipos recae sobre las entidades autoritarias de los dominios de nombres. Los servidores DNS raíz son los recursos más críticos de Internet. Cuando un servidor de nombres cualquiera es consultado por un nombre del que no tiene información, lo primero que hace es acudir con la consulta a uno de los servidores raíz. En la actualidad existen 13 servidores raíz en todo el mundo, y son conocidos por todos los demás servidores de nombres a través de un fichero de zona especial que se instala junto con el software de DNS. UNIDAD 2 : DNS implementación del DNS de Internet Los servidores TLD (gTLD y ccTLD), son gestionados por una variedad de organizaciones en virtud de acuerdos con la ICANN. Las organizaciones a las que les han sido delegadas los nombres de dominio, son las responsables de los servidores que implementan dichos dominios, por lo que pueden tener sus propios servidores DNS, como mínimo dos, por seguridad, y encargarse de ellos. Pero pueden también decidir delegar la responsabilidad de la gestión de los servidores a un ISP, a una empresa de hosting web o a un registrador de nombres de dominios. UNIDAD 2 : DNS implementación del DNS de Internet El proceso de consulta a los servidores 1. Un equipo de un usuario realiza la consulta del nombre fred.example.com al DNS que tiene configurado, y lo normal será que no tenga respuesta autoritaria, por lo que recurre a uno de los 13 servidores DNS raíz. 2. El servidor raíz le responde con una referencia al servidor o servidores del TLD de su consulta (.com). 3. El equipo del usuario le envía la consulta (fred.example.com) al servidor del TLD. 4. El servidor del TLD responde con una referencia al servidor del nombre de dominio de su consulta (.example.com). 5. El equipo del usuario le envía la consulta (fred.example.com) al servidor del dominio.example.com. 6. El servidor del dominio envía al equipo del usuario una respuesta autoritaria de su consulta. UNIDAD 2 : DNS implementación del DNS de Internet Como se ha dicho, los servidores raíz son 13 a nivel mundial, pero en realidad cada uno de ellos son un grupo de varios servidores DNS físicos, pero usando una técnica denominada anycasting, cada grupo utiliza una única IP. En realidad ocupan unos 200 servidores. A los 13 servidores raíz se les ha asignado un FQDN, que van desde a.root-servers.net hasta m.root-servers.net. Asimismo, la actualización de los servidores raíz consiste en tener la última versión un fichero que lista los servidores autoritarios de cada TLD. De esto se encarga la ICANN, y por seguridad, solo puede ser realizado desde sus equipos, además de hacerse utilizando transacciones seguras, es decir, utilizando DNSSEC. UNIDAD 2 : DNS implementación del DNS de Internet En el proceso de respuesta a una consulta DNS, tienen mucha importancia las distintas caché que intervienen, pues reducen mucho el tiempo de respuesta. Las caché DNS son almacenes temporales de las últimas respuestas a consultas DNS; cuando se realiza una consulta lo primero que se hace es ver si la respuesta está en la caché y si es así, la respuesta se suministra directamente. A las respuestas que se almacenan en las caché, se les asigna un tiempo, denominado tiempo de vida (TTL, Time To Live); si transcurrido dicho tiempo, la respuesta no es utilizada de nuevo, esta se elimina de la cache, liberando así espacio para almacenar otras respuestas. Procedimiento de respuesta a una consulta DNS, incluyendo las caché UNIDAD 2 : DNS implementación del DNS de Internet Dos conceptos muy importantes, ya mencionados, son la zona y el fichero de zona que la describe, convirtiendo el nombre de dominio en entidades operacionales como equipos, servidores de correo, servicios y otras características usadas por el software DNS. Los subdominios delegados por el dueño del nombre de dominio, también pueden ser descritos utilizando un fichero de zona. El fichero de zona describe, usando los denominados recursos de registro (RR, Resource Record), la parte del nombre de dominio que es manejada por el software DNS, es decir, la zona. El formato de estos ficheros y sus RR están estandarizados en el RFC 1035, por lo que pueden intercambiarse entre los distintos software DNS estándar que existen. Estos ficheros fundamentalmente suelen contener los siguientes RR: El RR SOA (Start Of Authority) que presenta las propiedades de la zona y es obligatorio. RR A y AAAA, que especifican los equipos (host) de la zona. Datos que describen información global de la zona como: los servidores de correo del dominio (RR MX), los servidores de nombres autoritarios del dominio (RR NS). En el caso de subdominios delegados, los servidores de nombres responsables del subdominio (RR NS). En el caso de subdominios delegados, un registro que permita alcanzar al servidor del dominio el servidor del subdominio (RR A o AAAA). UNIDAD 2 : DNS implementación del DNS de Internet El fichero de zona se encuentra en el servidor de nombres (servidor DNS), pero como ya se ha dicho, es aconsejable tener más de uno de estos servidores por seguridad, de hecho, en grandes empresas es frecuente instalar tres o más, y cada uno de ellos debe tener acceso al fichero de zona. Para resolver este problema de una forma cómoda para los administradores, el protocolo DNS establece que un único servidor será el maestro (master), el cual tendrá el fichero de zona que será actualizado; el resto de servidores, los esclavos (slave), recibirán una copia mediante lo que se denomina una transferencia de zona. Es importante tener en cuenta que las respuestas a las consultas DNS, tanto del maestro como de los esclavos, son autoritarias sobre el nombre del dominio que implementa su fichero de zona. Por último, para acabar con esta introducción, debemos hablar de los distintos programas que implementan el funcionamiento descrito anteriormente, es decir, el protocolo DNS. El programa servidor DNS más ampliamente usado es BIND (Berkeley Internet Name Domain), que es una implementación multiplataforma de código abierto (licencia BSD) del protocolo DNS y llevada a cabo por la ISC (Internet Systems Consortium). La IETF lo califica como una implementación de alta calidad. También Microsoft tiene su propia implementación y otra importante es NSD. Como una implementación ligera podemos destacar dnsmasq, que además es un servidor de DHCP. UNIDAD 2 : DNS Consultas DNS (Resolutores de nombres) La mayoría del trabajo de un servidor DNS autoritario lo dedica a responder a las consultas DNS provenientes de los programas llamados resolver. El resolver de un PC es una librería instalada en el ordenador del usuario que se encarga de traducir al protocolo DNS las consultas DNS de los programas de usuario, procediendo a continuación a su envío. El caso más habitual es que un navegador en el ordenador de un usuario realice la siguiente pregunta: ¿Cuál es la dirección IP de www.asir.com?, y se la envíe al resolver del PC, el cual la traducirá al protocolo DNS y se la enviará al resolver del servidor de nombres que tenga configurado localmente por DHCP o manualmente, a partir de aquí, la consulta puede continuar de varias formas, en este caso como consulta recursiva tal como muestra la siguiente imagen: El protocolo DNS define tres tipos de consultas: Recursivas Iterativas o no recursivas Inversas UNIDAD 2 : DNS Consultas DNS (Resolutores de nombres) Una consulta recursiva es aquella a la que el servidor de nombres dará la respuesta completa al resolver del PC. Los servidores de nombres no tienen la obligación de soportar este tipo de consultas, y es el resolver del PC el que negocia con el servidor de nombre el uso de este tipo de consulta. Una consulta iterativa o no recursiva es aquella a la que el servidor de nombres dará una respuesta parcial al resolver del PC. Todos los servidores de nombres soportan este tipo de preguntas. Una consulta inversa es aquella que se produce cuando un usuario quiere saber el nombre del dominio al que pertenece un RR, por ejemplo, ¿cuál es el dominio de tal registro MX?. Este tipo de servicio se especificó como opcional en el estándar, permitiéndose a los servidores dar una respuesta de NOTIMP (Not Implemented), que era lo que hacían la mayoría del software DNS. Posteriormente, mediante el RFC 3425, este tipo de consultas se convirtieron en obsoletas. No se debe confundir la consulta inversa con la pregunta de: ¿qué nombre le corresponde a esta IP?; este tipo de consultas se denominan mapeado inverso (reverse mapping) o búsqueda inversa (reverse looking), y se resuelven a través de consultas iterativas o recursivas con el dominio especial.IN- ADDR.ARPA. UNIDAD 2 : DNS Consultas DNS (Resolutores de nombres) Es un mecanismo por el que se traducen los nombres de máquinas a direcciones IP. El usuario intenta conectarse desde su máquina local a un servidor remoto mediante una URL (nombre) que se ha de transformar en una dirección IP para poder acceder al servidor remoto. El cliente DNS de la máquina local, mediante los resolvers, debe hacer la consulta al servidor DNS. El servidor DNS responde, obteniéndose así la IP del servidor remoto y se accede al sitio, todo ello de forma transparente al usuario. Un cliente genera una consulta para resolver un nombre de dominio completamente expresado, FQDN, por ejemplo: www.ies.es En la resolución de los nombres de dominio se siguen una serie de pasos que vemos a continuación: 1. El cliente (es el resolver, no la aplicación) intenta resolver la consulta por sí mismo, recurriendo a su propio solucionador DNS local, es decir, al fichero hosts. El fichero hosts contiene correspondencias entre nombres y direcciones IP configuradas previamente: Windows:\Windows\system32\drivers\etc\hosts Linux/Unix: /etc/hosts Este fichero se carga automáticamente en la caché del equipo, por lo tanto, realmente el primer paso a la hora de resolver un nombre, pasa por chequear la caché del equipo cliente que realiza la consulta. UNIDAD 2 : DNS Consultas DNS (Resolutores de nombres) 2. Si el solucionador local no puede resolver la consulta, se preguntará al servidor de DNS preferido, mediante una consulta recursiva. 3. El servidor de DNS consultará primero sus zonas y si no encuentra ahí la correspondencia, mirará en su caché (la caché de servidor de DNS), por si la consulta hubiera sido resuelta anteriormente. 4. Si no encuentra la respuesta, el servidor de DNS, reenviará la consulta hasta dar con la solución o devolver el mensaje de error pertinente. UNIDAD 2 : DNS Consultas DNS (Resolutores de nombres) Un ejemplo en detalle Detalle de los pasos que se siguen desde que un cliente desde su PC pregunta por la IP correspondiente a www.whitehouse.gov 1. El cliente (el resolver), envía una pregunta recursiva al servidor local DNS preguntando por la dirección IP del servidor de www.whitehouse.gov 2. El servidor dns local chequea la información con la que cuenta (caché), y si no encuentra la correspondencia, entonces envía una pregunta iterativa para encontrar el servidor del dominio.gov al root server. 3. El root server responde con la dirección IP del servidor de nombres para el dominio de primer nivel.gov 4. El servidor dns local envía al servidor del dominio.gov, una consulta iterativa preguntando por el servidor del domino whitehouse.gov 5. El servidor.gov devuelve la dirección IP del servidor dns que está dando servicio al dominio whitehouse.gov. 6. El servidor dns local , envía una consulta iterativa preguntando por www.whitehouse.gov al servidor de nombres whitehouse.gov. 7. El servidor de nombres whitehouse.gov devuelve la IP del host www.whitehouse.gov al servidor local. 8. El servidor dns local envía la dirección IP de www.whitehouse.gov al cliente (resolver). Una vez que el cliente tiene la IP del servidor que deseaba localizar, ya puede acceder a él. UNIDAD 2 : DNS Consultas DNS (Resolutores de nombres) Un ejemplo en detalle UNIDAD 2 : DNS Consultas DNS (Resolutores de nombres) UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Métodos de resolución de consultas DNS Existen dos métodos de búsqueda: Búsqueda recursiva El cliente DNS lanza su petición y espera la respuesta. No participa del proceso completo que se desencadena para poder responder a su petición. Búsqueda iterativa El cliente realiza la petición y el servidor no recursivo devuelve la dirección del servidor DNS que posee autoridad sobre el siguiente dominio. El proceso se repite hasta obtener la respuesta. Por tanto, el proceso de resolución de nombres con servidores no recursivos es un proceso iterativo y en el que el cliente participa activamente. UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Resolución Inversa Se conoce como resolución inversa cuando el DNS además de obtener la dirección IP de un nombre, puede obtener el nombre asociado a una IP. Es decir, el cliente (resolver) envía una petición al servidor de nombres para obtener el nombre de host asociado a una determinada IP. Para resolver las consultas inversas, se creó un dominio especial llamado: in-addr.arpa. Dentro de este dominio, se especifican las cifras de la dirección IP en orden contrario, indicando al final in-addr.arpa Por ejemplo, para la dirección IP: 64.233.161.4 sería 4.161.233.64.in-addr.arpa y el sistema de resolución inversa respondería con www.google.com. UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Caché Si el proceso de búsqueda se repitiera para cada consulta de nombre, podría llegar a ser tremendamente ineficiente. Por tanto, para agilizar las búsquedas los servidores DNS y los clientes mantienen una caché con la información de correspondencias que van resolviendo. Todos los servidores de nombres, y todos los clientes, utilizan el sistema de caché. La validez de las entradas en la caché está limitada en el tiempo, TTL (Time To Live). El administrador del servidor de nombres, de la zona que contiene el dato, decide el TTL para ese dato. Los clientes también tienen caché y verifican el valor del TTL para conocer cuando ese dato es válido. Cuando una petición DNS se resuelve en caché se marca como no autorizada así, el resolver sabe que esa información no se ha obtenido de primera mano, y por tanto, podría llegar a no ser válida (aunque la probabilidad de que esto ocurra es mínima). UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Comandos Ipconfig permite comprobar el estado de la caché, desde el símbolo del sistema: Visualizarla: ipconfig /displaydns Borrarla: ipconfig /flushdns (o desde el administrador de DNS, con la opción Borrar caché) Aunque se borre, inmediatamente se carga de forma automática el contenido del fichero hosts. C:\WINDOWS\system32\drivers\etc\hosts UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Comandos EJEMPLO: En este caso, la caché cuenta ya con la correspondencia entre el equipo portátil y su dirección IP. UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Comandos En este caso, al borrar la caché se elimina la información sobre las consultas ya resueltas, eso sí, la información básica proporcionada por el fichero hosts se mantiene.. UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Comandos nslookup Es una herramienta de línea de comandos cuya función básica es consultar, obtener información, probar y solucionar problemas de los servidores DNS. La denominación del término nslookup deriva de “name server look up”, traducido al español como “búsqueda de servidores de nombres”. Podemos realizar consultas directas (nslookup nombredominio.com) o consultas reversas (nslookup IP). Respuesta Autoritativa y respuesta no Autoritativa (En las consultas veremos frecuentemente estos dos términos). Authoritative Answer: significa que la respuesta DNS se ha producido desde el servidor DNS que tiene todo el archivo de información disponible para esa zona. Non Authoritative Answer: significa que la respuesta DNS se ha producido desde un servidor DNS que tiene en caché una copia de las consultas realizadas para esa zona, al servidor que tiene la Autoridad para responder (el que tiene el archivo de zona). Por esto veremos muy a menudo la respuesta desde servidores que son Non Authoritative. UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Comandos nslookup realizando consultas sobre el tipo de registro del que deseamos información. Con el argumento: -type= -type=ANY: muestra todos los registros NS disponibles del dominio: $ nslookup -type=any google.es UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Comandos -type=ns: muestra todos los registros NS disponibles del dominio y una lista de los servidores Authoritative de nombre si es que están disponibles (normalmente estarán ocultos y no aparecerán, solo aparecerán los Non- authoritative): $ nslookup -type=ns google.es UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Comandos -type=mx: muestra todos los registros MX (mail) del dominio. $ nslookup -type=mx unizar.es Vemos que los registros MX de unizar son: UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Comandos -type=soa: muestra todos los registros SOA (Start of Authority) del dominio. $ nslookup -type=soa google.es Mostrará el servidor con autoridad para responder sobre ese dominio. También mostrará los parámetros del registro SOA: el TTL (tiempo de respuesta), refresh, retry, expire, minimum … UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Comandos nslookup reverso (reverse nslookup) Podemos realizar una consulta dns inversa utilizando la IP como un argumento para el comando nslookup; y nos mostrará los datos de resolución inversa de nombres de la zona. $ nslookup 216.58.211.195 UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Comandos nslookup utilizando un servidor específico En lugar de utilizar los servidores DNS por defecto (los dns preferidos), podemos especificar qué servidor deseamos que resuelva la consulta $ nslookup google.es ns2.google.com UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Comandos nslookup en modo interactivo El modo interactivo nos permite efectuar consultas como las mencionadas hasta ahora, pero de un modo diferente, introduciendo los comandos uno por uno. Es decir, con nslookup se abrirá la terminal para comenzar a introducir comandos: >. Entonces podemos introducir el nombre de dominio que queremos consultar y nos dará la respuesta: Otro comando que podemos introducir en modo interactivo, es el de type= , que nos permite elegir qué tipo de registros deseamos que nos muestre la consulta. Lo haremos así para ver los registros de tipo ns: >set type=ns Y obtendremos en este caso la consulta de los registros ns del dominio google.es : UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Comandos nslookup en Windows Básicamente el comando funciona de forma parecida, aunque con alguna pequeña diferencia en los comandos respecto a los utilizados en Linux. nslookup directo: nslookup inverso: UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Comandos nslookup en Windows Básicamente el comando funciona de forma parecida, aunque con alguna pequeña diferencia en los comandos respecto a los utilizados en Linux. nslookup modo interactivo: Donde: server 8.8.8.8 (le decimos qué servidor queremos que conteste) set q=MX (queremos averiguar los registros MX) google.es (le decimos de qué NS queremos saber la info) UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Comandos dig (Domain Information Groper) es un programa utilizado para preguntar a los servidores DNS y es la Herramienta más utilizada para solucionar problemas de DNS. Normalmente, dig se usa pasándole argumentos desde la línea de comandos. Con la opción -h presenta un resumen de sus argumentos y opciones para usar desde la línea de comandos. La sintaxis más utilizada es: dig [@server] name [ type ] Donde: server: Es opcional. Es el nombre o la dirección IP del servidor DNS al que se preguntará. Si no se proporciona ningún argumento de servidor, dig consulta /etc/resolv.conf y consulta los servidores DNS que figuran allí. Se muestra la respuesta del servidor DNS que responde. nombre: es el nombre DNS del registro de recursos (RR) que se va a buscar. type: Es opcional. Indica qué tipo de consulta se quiere. Cualquier tipo de consulta válida puede ser cualquiera de los registros de recursos (RR), como pueden ser; ANY, A, MX, etc. Si no se proporciona ningún tipo de argumento, dig realizará una búsqueda para un registro de recursos (RR) tipo A. UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Comandos Consultar un nombre de dominio Para realizar una búsqueda de DNS para un nombre de dominio, simplemente escribe dicho dominio junto al comando dig. Por ejemplo: dig hostinger.com, dig oracle.com Por defecto, el comando dig mostrará el registro A cuando no se especifiquen otras opciones. Además, la salida contendrá más información, como la versión de dig instalada, detalles técnicos sobre las respuestas, estadísticas sobre la consulta Especificar servidores de nombres Por defecto, el comando dig consultará los nombres de servidores listados en /etc/resolv.conf. Puedes cambiar esta configuración predeterminada utilizando el símbolo @ seguido del hostname o la dirección IP del servidor. El comando dig que te mostramos a continuación envía la consulta DNS al nombre de servidor de Google (8.8.8.8) mediante la opción @8.8.8.8. Es decir, dig @8.8.8.8 hostinger.com UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Comandos Consultar todos los registros DNS Para consultar todos los tipos de registros DNS disponibles asociados con un dominio, usa la opción ANY. Esta opción incluirá en los resultados todos los tipos de registros disponibles. Por ejemplo: dig hostinger.com ANY, dig oracle.com any. Buscar por tipo de registro Si deseas buscar un registro específico, simplemente agrega el tipo de registro al final del comando. Por ejemplo, para consultar y obtener solo el intercambio de correo – MX – en la sección de respuesta asociada a un dominio, puedes usar el siguiente comando de dig: dig hostinger.in MX, dig oracle.com MX. De manera similar, para ver los otros registros asociados a un dominio, especifica el tipo de registro al final del comando dig: dig hostinger.com txt (Consulta el registro TXT), dig hostinger.com cname (Consulta el registro CNAME), dig hostinger.com ns (Consulta el registro NS), dig hostinger.com A (Consulta el registro A). dig hostinger.com SOA (Consulta el registro SOA) Podemos ver: Correo del administrador, cada cuanto tiempo se sincronizan los servidores esclavos, etc. UNIDAD 2 : DNS Herramientas de consulta a servidores DNS Comandos Búsqueda inversa de DNS La búsqueda inversa de DNS te permite buscar el dominio y el nombre de host asociados a una dirección IP. Para realizar una búsqueda inversa de DNS con el comando dig utiliza la opción –x seguida de la dirección IP correspondiente. Por ejemplo: dig -x 172.217.166.46, dig -X 137.254.16.101. ; DiG 9.3.6-P1-RedHat-9.3.6-16.P1.el5 ejemplo.com Resultado: ;; global options: printcmd ;; Got answer: ;; ->>HEADERHEADER