Redes‎ > ‎Teoria e Introducción‎ > ‎

Servidor de Nombres de Dominio (DNS)

Servicios DNS

DNS(Domain Name System): es un sistema de nombres jerárquico para ordenadores, servicios y recursos de una red conectada a Internet o privada (corporativa). Una definición mas técnica seria : es un servicios de gestión y búsqueda de ordenadores en una red.

Resolución de nombres de Dominio: es el proceso por el cual, a partir de un nombre de host o de dominio se puede conocer su IP.

Cuando un host(equipo) necesita enviar datos a otro host, puede acceder a el por su dirección IP o bien a través de su nombre de dominio (DNS), que sera lo mas común. Para utilizar el nombre DNS necesita hacer la conversión de este nombre en su dirección IP equivalente. De esto se encargan los servidores DNS.

Proceso de Resolución de nombre de dominio: El host (el cliemte) emisor envía un paquete de consulta a su servidor DNS predeterminado con el nombre DNS que intenta resolver, para que el servidor DNS lo resuelva o ejecute los mecanismos necesarios de consulta con otros servidores DNS, y le devuelva la IP que necesitaba. El ordenador la almacena en su propia memoria cache y se la pasa al navegador o al servicios que solicito la resolución.

En sistemas UNIX, y por absorción tecnológica también en otros sistemas, existe un fichero de configuración llamado <etc/hosts> que contiene una relación de asignaciones de nombres DNS con direcciones IP para los nodos de la red de área local. Antiguamente todos los servidores utilizaban este método. En Windows esta situado en <%systemroot%\system32\drivers\etc>, mientras que en sistemas Unix se sitúa en <etc>. Este es un modo de utilizar nombre asociados a IP sin tener acceso a un servidor DNS. Obviamente este fichero puede tener un numero muy limitado de asignaciones, que además deben ser previamente conocidas para poder ser escritas por el administrador de red en el fichero de hosts. Esta técnica no se utiliza en casi ninguna empresa, solo en algunos entornos caseros,

Los servidores actuales no solo registran nodos de la red sino que también pueden dar de alta en su base de datos otros servicios, de modo que un nodo de la red puede preguntarle donde se encuentran los servicios que necesita dentro de su red.

El servicios DNS consta de 3 componentes principales:

  1. Clientes DNS: Envían peticiones de resolución de nombres.  En formato : que dirección IP le corresponde a este nombre de dominio?
  2. Servidores DNS: Responden a las peticiones consultando la base de datos propia o a otros servidores DNS.
  3. Espacio de Nombres de Dominio: Es una base de datos distribuida (esta en varios ordenadores de la red) y es jerárquica (tiene forma de árbol) que clasifica los dominios en niveles.

En la imagen de abajo podéis ver la estructura del árbol de dominios, se empieza a leer desde abajo, ejemplo : foro.elhacker.net. (ojo, acaba en punto). El ultimo punto no se suele poner, pero cuando se configura un servidor DNS es necesario ponerlo. Prueba a poner en tu navegador : http://elhacker.net. Veras como te redirecciona a la web.


La estructura de arriba tiene 4 niveles:

  • El primer nivel es el Root (Raiz) o el punto.
  • El segundo raíz son los TLD (Top Level Domain), que son : es, com, net, gov, etc.
  • El tercer nivel son los nombres de dominios de distintas webs/empresas.
  • El cuarto nivel son los que los webmasters llaman subdominios. Ejemplo: blog, foro.

El nombre completo de un dominio o de un nodo esta formado por una secuencia de nombres (que no pueden tener mas de 60 caracteres) separados por puntos, formado por las etiquetas de los dominios hasta llegar al dominio raíz, teniendo en cuenta que el nombre completo no puede tener mas de 255 caracteres (incluyendo puntos) y que siempre acaba en punto.

A un nombre de dominio o un nombre completo se le denomina FQDN (Fully Qualified Domain Name) o nombre de dominio completamente cualificado. El FQDN del foro de elhacker.net seria : foro.elhacker.net.

Los TLD (Top level Domain) o dominios de nivel superior esta clasificados según:

  • Su funcion organizativa : .com, .net, .org, .edu, .gov, .mil, etc.
  • Geograficamente: .es, .fr, .us, .ch, etc.
  • Especializados: .info, .museum, .aero, etc.

El dominio .es gestionado por ESNIC(http://www.esnic.es/index.action). El organismo que gestiona los TLD es ICANN(http://www.icann.org/tr/spanish.html)

La base de datos que compone el servicio DNS permite su administración descentralizada por medio de un mecanismo llamado Delegación de Dominios, según este mecanismo se realiza la cesión de la autoridad, para la gestión de la base de datos.

Quien tenga autoridad sobre la zona, tiene una serie de responsabilidades:

    • Debe mantener actualizada los datos de ese subdominio.
    • Debe responder ante las peticiones de resolución de nombre que llegue acerca de ese subdominio.
    • No significa que el subdominio tenga el control, puede tenerlo cedido o incluso cederlo a su vez a otro subdominio.

Registros de Recursos: es donde los servidores de dominio almacenan información de los nombres de dominio.

Zona de Autoridad: es una parte del espacio de nombre de dominios sobre la que es responsable un servidor DNS, que puede tener autoridad sobre varias zonas.

Zona: base de datos que contiene determinados registros de recursos de la base de datos del espacio de nombres de dominio.


Tipos de Servidores DNS:

  1. Servidor Primario/Principal/Maestro. Mantiene de forma oficial la información de la zona sobre la que tiene autoridad. Responde a las peticiones de resolución consultando sus propios archivos de zona.
  2. Servidor Secundario/Esclavo. Obtiene la información de la zona pidiendosela constantemente al servidor primario.
  3. Servidor Cache. Se utilizan para acelerar las consultas de resolucion de nombres de dominio frecuentemente utilizados. Suelen emplearse en redes de area local/

Transferencia de Zona: es el mecanismo por que permite actualizar la informacion a los servidores secundarios a partir de los archivos de zona contenidos en el primario.

Bases de Datos del Servidor DNS

En realidad no son mas que unos archivos de texto. El formato general de los Registros de Recursos es parecido al esquema de abajo:

_______________________________________________________

| Propietario | TTL | Clase | Tipo | Rdata |

———————————————————————————-

| servidor | 3600 | IN(internet) | A | 172.26.0.100 |

Descripción de los campos:

#Propietario: es el nombre del nodo o del dominio (FQDN). Si el valor de este campo es @, representa el nombre de la zona.

#TTL(Time To Life): Es el tiempo de vida en segundos que el registro el valido en la memoria cache del servidor DNS. Es opcional.

#Clase: Hace referencia a la familia de protocolos usada, IN (Internet).

#Tipo: Define el tipo de recurso descrito en ese registro.

#Rdata: contiene información según el tipo de registro.



Tipos de Registros

  • SOA(State of Authority). Indica el nombre del servidor DNS con autoridad en la zona. Direccione de correo electrónico del contacto técnico, otros parámetros.

Formato: elhacker.net IN SOA server.elhacker.net (2010100501;version 10800;actualizacion 3600:reintentos 604800;caducidad 86400;TTL)

  • NS(Name Server). Identifica a los servidores DNS autorizados en la zona.

Formato: elhacker.net IN NS servidor2.elhacker.net

  • A(Address). Asocia el nombre FQDN del dominio o de un nodo con su dirección IP

Formato: administrador.elhacker.net IN A 172.26.0.150

  • AAA(version A en IPV6). Desarrolla la misma tarea que A(Address) pero en versión IPV6

Formato: equipo1.elhacker.net IN AAA 2001::C1:AB:0A:1C

  • PTR(Pointer). Asocia una IP a un nombre FQDN de un nodo o dominio. Hace justo lo contrario que A, hace la resolución inversa de la zona.

Formato: 150.0.26.172.in-addr.arpa IN PTR equipo1.elhacker.net

Nota: La IP esta escrita al revés y hace falta poner .in-addr.arpa

  • CNAME(Canonical Name/Alias). Indica un alias por el que se conoce a ese nodo también a ese nodo/dominio.

Formato: administrador.elhacker.net IN CNAME el_jefe

Nota: Se podrá acceder a ese nodo solamente poniendo el_jefe al nodo administrador.elhacker.net

  • MX(Mail). Indica la direccion del servidor de correo electrónico que existe en ese dominio.

Formato: elhacker.net IN MX webmail.elhacker.net

  • SRV(Service). Indica la ubicación de los servidores disponibles para determinados servicios/protocolos.

Formato: ftp.tcp.elhacker.net IN SRV 0 0 21

Donde 0(es el orden, por si hay mas de un servidor) 0(es el reparto de trabajo, si hay mas de un servidor) 21(es el puerto redireccionado)

  • TXT(Text). Indica que el contenido del registro es de tipo texto, y puede ser cualquier información. También permite a los servidores identificarse de modo arbitrario.


Métodos de búsqueda

Búsqueda Recursiva

Se realiza una petición de resolución de nombres al servidor local, y si el servidor no dispone de la información solicitada va a buscarla al servidor de nombres con autoridad que la contiene. Para ello el servidor de nombres local necesita consultar a un servidor raíz y este dará información acerca de aquellos servidores autoritarios intermedios hasta llegar al servidor que contiene el nombre del dominio objeto de la consulta.

En este caso, el servidor local asume la responsabilidad de dar una respuesta al cliente, y el consulta a los otros servidores en nombre del cliente.


Búsqueda Iterativa

El servidor DNS local devuelve la mejor respuesta que puede ofrecer al cliente en función del contenido de su cache, pero si el servidor no dispone de la información solicitada indica la IP del siguiente servidor de nombres autorizado a preguntar, comenzando siempre por un servidor Raíz.

Este le refiere al servidor del nivel siguiente que lo contiene (.es), y el servidor local vuelve a lanzar la petición (iteración) al servidor referido, el cual, si no dispone de la información solicitada, le refiere al servidor del nivel siguiente que lo contiene (.gva.es); a continuación, el servidor DNS local vuelve a lanzar la petición al servidor referido y así sucesivamente hasta llegar al servidor de nombre que contiene la información acerca del dominio solicitado.

En la imagen de abajo se puede ver como el servidor de nombre interrogado consulta a su vez a todos los servidores autorizados para cada uno de los dominios que contienen al nombre de dominio en cuestión.



Autor: madpitbull_99

Post Original: Servidor de Nombres de Dominio (DNS)


Comments