Foro de elhacker.net

Comunicaciones => Redes => Mensaje iniciado por: madpitbull_99 en 24 Octubre 2010, 19:51 pm



Título: Servidor de Nombres de Dominio (DNS)
Publicado por: madpitbull_99 en 24 Octubre 2010, 19:51 pm
Este articulo tambien esta disponible en la wiki (http://wiki.elhacker.net) del foro : Servidor de Nombres de Dominio (DNS) (http://wiki.elhacker.net/redes/teoria/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
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 &lt;/etc&gt;. 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:
  • Clientes DNS: Envían peticiones de resolución de nombres. En formato : que dirección IP le corresponde a este nombre de dominio?


  • Servidores DNS: Responden a las peticiones consultando la base de datos propia o a otros servidores DNS.
  • 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 (http://elhacker.net/" rel=nofollow). Veras como te redirecciona a la web.


(http://img41.imageshack.us/img41/1911/dnsv.png)

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 (http://www.icann.org/tr/spanish.html" rel=nofollow))



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:

  • 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.
  • Servidor Secundario/Esclavo. Obtiene la información de la zona pidiendosela constantemente al servidor primario.
  • 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 información 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 (http://ftp://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.


(http://img44.imageshack.us/img44/5259/recursiva.png) (http://img44.imageshack.us/img44/5259/recursiva.png)


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.


(http://img96.imageshack.us/img96/493/iterativa.png) (http://img96.imageshack.us/img96/493/iterativa.png)





Título: Re: Servidor de Nombres de Dominio (DNS)
Publicado por: Alx1885 en 6 Marzo 2011, 01:49 am
Hola, me gustaría saber como puedo descargarme una base de datos whois sin tener que registrarme en ningún lado.. se que el archivo pesa alrededor de 1.5Gb y existen formas de bajarlo, pero no he podido saber como


Gracias


Título: Re: Servidor de Nombres de Dominio (DNS)
Publicado por: madpitbull_99 en 6 Marzo 2011, 17:17 pm
Dudo de que puedas descargar una versión actualizada sin registrarte en ninguna parte (en algunas webs warez, tal vez encuentres versiones antiguas).

Hay webs que te proveen la base de datos (hay que registrarse) como VeriSign (http://www.verisigninc.com/en_US/products-and-services/domain-name-services/grow-your-domain-name-business/analyze/tld-zone-access/index.xhtml) y ARIN (https://www.arin.net/resources/request/bulkwhois.html) en el FTP (http://ftp://ftp.arin.net/pub/stats/) de ARIN hay algunos ficheros que te pueden interesar.

Date cuenta de que es información bastante importante y no puede circular por ahí como si nada.


Título: Re: Servidor de Nombres de Dominio (DNS)
Publicado por: Darvein en 8 Marzo 2011, 15:55 pm
buenísimo el tute. sobre todo por los gráficos.
plap plap plap  ;-)


Título: Re: Servidor de Nombres de Dominio (DNS)
Publicado por: ruben_linux en 18 Julio 2011, 21:30 pm
muy currado el tuto. tengo claro lo que pasa si cambio el DNS del router