Está en la página 1de 51

• Identificar y describir los escenarios en los que surge la

necesidad de un servicio de resolución de nombres.

• Clasificar los principales mecanismos de resolución de


nombres.

• Describir la estructura, nomenclatura y funcionalidad de los


sistemas de nombres jerárquicos.

• Instalar un servicio jerárquico de resolución de nombres en


los sistemas operativos Microsoft Windows y Linux.
• Preparar el servicio para almacenar las respuestas
procedentes de servidores de redes públicas y servirlas a los
equipos de la red local.

• Añadir registros de nombres correspondientes a una zona


nueva, con opciones relativas a servidores de correo y alias.

• Realizar transferencias de zona entre dos o más servidores.

• Comprobar el funcionamiento correcto del servidor y corregir


problemas.
1 INTRODUCCIÓN
2 CARACTERÍSTICAS Y UTILIDAD DEL SERVICIO DNS
3 COMPONENTES
4 ESPACIO NOMBRES DE DOMINIO
5 ZONAS Y DOMINIOS
6 FUNCIONAMIENTO
7 REGISTRO DE UN DOMINIO EN INTERNET
8 CUESTIONES RELATIVAS A LA SEGURIDAD

9 CONFIGURACIÓN DE UN SERVIDOR DNS

9.1 Instalación en Microsoft Windows


9.2 Instalación en GNU/Linux
9.3 Problemas del servidor DNS

10 CONFIGURACIÓN DE UN CLIENTE DNS

10.1 Configuración en Microsoft Windows


10.2 Configuración en GNU/Linux

11 COMPROBACIÓN DE LA CONFIGURACIÓN
1 INTRODUCCIÓN

El DNS (Domain Name System o Sistema de Nombres de Dominio) se


utiliza para que los usuarios de Internet no tengan que trabajar con
direcciones de transporte IPv4 o IPv6.
Ejemplos:
– 15.234.88.126:80

– [2001:4898::1002:20f:1fff:feff:b3a3]:80

A las personas nos cuesta mucho menos trabajo recordar un nombre o


una palabra, por ejemplo:

– www.fsf.org.

El DNS convierte automáticamente las direcciones de dominio en


direcciones numéricas de transporte.

Utiliza el puerto 53 /UDP para atender la consultas de nombres


Utiliza el puerto 53/TCP para transferencias de zona entre servidores
2. CARACTERÍSTICAS Y UTILIDAD DEL SERVICIO DNS

DNS ofrece un servicio de almacenamiento y consulta de información

La información se guarda en una base de datos distribuida entre múltiples


equipos (servidores de nombres)

La información se indexa según un esquema jerárquico ( espacio de


nombres de dominio)

A los servidores de nombres se les puede realizar preguntas y para ello se


utilizan programas clientes DNS, que dialogan con los servidores en
base a unas normas (protocolo DNS)

DNS se utiliza para asociar IP con nombres de dominio, pero también para
el balanceo de carga, obtención de claves públicas, ubicación de
servidores para un servicio determinado, listas negras de spam...
3. COMPONENTES
Espacio de nombres de dominio. Conjunto de nombres que se pueden utilizar
para identificar máquinas o servicios de una red.

Base de datos DNS. Es una base de datos distribuida y redundante que


almacena información relativa a direcciones IP sobre nombres de dominio. Se
organiza en zonas y estas en registros de recursos (RR)

Servidores de nombres. Programas que guardan parte de la base de datos


(zonas) y que responden a preguntas sobre la información almacenada

Clientes DNS (resolvers). Programas que realizan preguntas a los servidores


de nombres, procesan las respuestas para ofrecer información al usuario o
aplicación

Protocolo DNS. Conjunto de normas y reglas en base a las cuales dialogan los
clientes y servidores DNS.
4. ESPACIO DE NOMBRES DE DOMINIO
Es el conjunto de nombres que se pueden utilizar para identificar máquinas o servicios
de una red.

Nombre de dominio. puede estar formado por una o varias cadenas de caracteres
separadas por puntos asir.es

Dominio raíz. Se representa con un . Es un nombre nulo

Dominios y subdominios.

Las direcciones de dominio forman una clasificación jerárquica de nombres


separados por puntos.

A un nivel superior se definen los nombres genéricos y de país.


(nombres de primer nivel TLD)

A un nivel inferior se define el nombre distintivo de la organización (nombres


de segundo nivel).
Dentro de cada organización pueden definirse subdominios.

Nombre de equipo o de ordenador.

EJEMPLO www.miweb.page1.com

nombre de equipo.nombre segundo nivel.nombre primer nivel


(puede haber subdominios)

INVESTIGACIÓN (ICANN)
(subdominios)

paqui.irene.edu
www.irene.edu
ftp.alberto.mayte.com
A LA DIRECCIÓN COMPLETA DE DOMINIO  FQDN

FQDN = NOMBRE TOTALMENTE CUALIFICADO

ESPECIFICA LA RUTA COMPLETA

CADA EQUIPO TIENE UN ÚNICO NOMBRE FQDN

EL SERVICIO DNS PERMITE IDENTIFICAR USUARIOS

EJEMPLO

ines@debian.irene.edu.
5 ZONAS Y DOMINIOS
Los servidores de nombres mantienen información de una parte del espacio de
nombres de dominio que se conoce como zona.

El servidor DNS del Instituto Punta almacena la información de la zona asir.es

Cuando un servidor contiene una zona se dice que es autorizado


( authoritative) para esa zona

Las zonas se almacenan en ficheros texto o en bases de datos

Una zona no es un dominio

Un dominio es un subárbol del espacio de nombres de dominio


10.0.0.1 10.0.0.2
DNS PRIMARIO
10.0.0.3 10.0.0.4
10.0.0.100
caracoles.es

10.0.0.6
DNS SECUNDARIO
10.0.0.5
10.0.0.7
tortugas.es 10.0.0.101
Transferencia TABLA ESTÁTICA
La base de datos de una zona se de zona
almacena en el DNS primario. Todos los caracoles.es
equipos se gestionan desde ese equipo uno RR
10.0.0.1
Si hay fallos en la asignación de dos 10.0.0.2 RR
direcciones existen los DNS secundario ..
que mantienen copias actualizadas de la dns1 10.0.0.100
información de la zona dns2 10.0.0.101

La actualización se hace por volcados de tortugas.es


información llamados transferencias de cinco 10.0.0.5
zona
..
RR = REGISTROS DE RECURSOS
DEPENDIENDO DEL S.O. INSTALADO EN EL SERVIDOR DNS LAS TABLAS
LOCALES PUEDEN ESTAR ALMACENADAS EN DISTINTOS SITIOS DEL
DISCO DURO
/etc/hosts (ubuntu)
“127.0.0.1 localhost”
C:\Windows\System32\Drivers\etc\hosts ( windows server 2008)
“127.0.0.1 localhost”

Bases de datos DNS (registro de recursos).

Un DNS es una base de datos distribuida que contiene registros que se


conocen como RR (Registros de Recursos), relacionados con
nombres de dominio.

Esta información sólo es útil para las personas responsables de la


administración de un dominio, dado que el funcionamiento de los
servidores de nombre de dominio es completamente transparente para
los usuarios.
Ya que el sistema de memoria caché permite que el sistema DNS sea
distribuido, los registros para cada dominio tienen una duración de vida que
se conoce como TTL (Tiempo de vida).

Esto permite que los servidores intermediarios conozcan la fecha de


caducidad de la información y por lo tanto que sepan si es necesario
verificarla o no.

Por lo general, un registro de DNS contiene la siguiente información:

· Nombre de dominio: el nombre de dominio debe ser un nombre FQDN, es


decir, debe terminar con un punto.

· Tipo de recurso: un valor sobre 16 bits que define el tipo de recurso


descrito por el registro. El tipo de recurso puede ser uno de los siguientes:

A: Asocia un nombre de dominio de equipo con su dirección IP. (IPv4)

AAAA: Lo mismo que el anterior ( IPv6)

CNAME (Nombre Canónico): Permite definir un alias a un equipo


MX: Registra un servidor de correo

NS: Es el servidor de nombres de dominio con autoridad sobre una zona.

PTR: Asigna una IP a un nombre de dominio para llevar a cabo


correspondencias inversas

SOA (Start Of Authority (Inicio de autoridad)): El primer registro que se


crea en una nueva zona. Permite la descripción del servidor de nombre de
dominio con autoridad en la zona, así como la dirección de correo electrónico del
contacto técnico.

· Clase: la clase puede ser IN (relacionada a protocolos de Internet) o CH (para el


sistema caótico).
6 FUNCIONANIENTO
CUANDO UN CLIENTE DESEA ESTABLECER CONEXIÓN CON UNA
DIRECCIÓN DNS (CON UN NOMBRE)
1) LLAMAR A LA RUTINA DEL SISTEMA (RESOLVEDOR)
A) COMPRUEBA SI PUEDE OBTENER DIRECCIÓN DE IP A TRAVÉS DE
LA TABLA LOCAL Y DEVUELVE UNA IP CORRESPONDIENTE
B) SI NO ESTÁ
ENVIAR MENSAJE CON PROTOCOLO UDP AL DNS MÁS
PRÓXIMO
DICHO DNS CONSULTA SU TABLA LA DIRECCIÓN SOLICITADA Y
DEVUELVE LA IP
C) SI NO ESTÁ
CONSULTA A OTROS SERVIDORES DNS
….

2) FINALMENTE EL (RESOLVEDOR) DEVUELVE LA DIRECCIÓN IP


Búsqueda recursiva
Búsqueda iterativa root DNS
root DNS server server
2
2 3
3 4
7 6
5 TLD DNS
TLD DNS server server
6 local DNS server
dns.poly.edu 5 4
7
1 8 1 8
authoritative DNS server
dns.cs.umass.edu authoritative DNS server
dns.cs.umass.edu
requesting host
cis.poly.edu
gaia.cs.umass.edu
requesting host
gaia.cs.umass.edu
cis.poly.edu
Respuestas de consultas alternativas

En las afirmaciones anteriores acerca de las consultas DNS se supone que el


proceso finaliza con una respuesta positiva devuelta por el cliente. Sin
embargo, las consultas también pueden devolver otras respuestas. Las más
habituales son:

• Una respuesta con autoridad

• Una respuesta positiva

• Una respuesta de referencia

• Una respuesta negativa


LOS DNS SON CAPACES DE RESOLVER DOS TIPOS DE RESOLUCIONES

Tipos de resoluciones:

• Directa: se obtiene una dirección IP a partir de un nombre de


equipo.
• Inversa: se obtiene un nombre de equipo a partir de
su dirección IP.
7 REGISTRO DE UN DOMINIO EN INTERNET
CUANDO SE ORGANIZA UNA RED LOCAL, SE ESTABLECEN NOMBRES DE
EQUIPO.
ESTA ORGANIZACIÓN PUEDE PERMANECER OCULTA O DIFUNDIRSE POR
INTERNET
SI EL DOMINIO VA A SER VISIBLE EN INTERNET HAY QUE SEGUIR UN
PROTOCOLO
1) RESERVAR EL DOMINIO MEDIANTE EL ICANN ORGANISMO
ENCARGADO DE ACREDITAR A EMPRESAS PARA QUE REGISTREN
DOMINIOS
2) ESTAS EMPRESAS RESERVAN NOMBRES DE DOMINIO A
OTRAS EMPRESAS Y PARTICULARES A CAMBIO DE UNA CANTIDAD
ECONÓMICA
VENDEN DOMINIOS .com .es .org …
SI EL DOMINIO VA A PERMANECER DENTRO DEL ÁMBITO DE LA RED
LOCAL
1) NO HAY QUE HACER NADA
8 SEGURIDAD

EL CORRECTO FUNCIONAMIENTO DEL SERVICIO DNS ES FUNDAMENTAL


EN INTERNET, PUES SI FALLA LOS USUARIOS NO PODRÁN CONTACTAR
CON LOS SERVIDORES DE INTERNET

EL SERVIDOR DNS DEBE SER SEGURO PARA EVITAR SABOTAJES Y


SUPLANTACIÓN DE DIRECCIONES

LOS SERVIDORES DNS ESTABLECEN TÉCNICAS DE CIFRADO Y


AUTENTIFICACIÓN ENTRE ELLOS PARA REALIZAR :
TRANSFERENCIAS DE ZONA
CONSULTAS RECURSIVAS
9 CONFIGURACIÓN DE UN SERVIDOR DNS

EN UNA RED LOCAL SE PUEDE PRESCINDIR DE UN SERVIDOR DNS.


CONFIGURANDO LOS EQUIPOS PARA ENVIAR PETICIONES A OTROS
SERVIDORES DNS EN INTERNET.
EN UNA RED LOCAL DONDE SE UTILIZAN DIRECCIONES PRIVADAS
(NAT) EXISTEN EQUIPOS QUE TIENEN QUE OFRECER SERVICIO DE
PÁGINAS WEB, CORREO ELECTRÓNICO FTP. ENTONCES SI ES
NECESARIO DISPONER DE UN SERVIDOR DNS
LA INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR DNS ES MÁS
COMPLEJA QUE OTROS SERVICIOS
UN SERVIDOR DNS PUEDE CONFIGURARSE COMO:
MAESTRO
SECUNDARIO
SÓLO CACHÉ
Servidor DNS maestro

Nuestro servidor se comporta como un auténtico servidor DNS para nuestra red
local.

En este caso es necesario tener zonas de búsqueda directa e inversa (esta última si
se quiere que resuelve a la inversa).

Atenderá directamente a las peticiones de resolución de direcciones pertenecientes


a la red local y reenviará a servidores DNS externos las peticiones del resto de
direcciones de Internet.
Servidor DNS esclavo

Actuará como un servidor espejo de un servidor DNS maestro.

Permanecerá sincronizado con el maestro.

Se utilizan para repartir las peticiones entre varios servidores aunque las
modificaciones solo se realicen en el maestro.

En redes locales salvo por razones de disponibilidad, es raro que exista la necesidad
de tener dos servidores DNS ya que con uno será suficiente.
Servidor caché DNS

Nuestro servidor se comporta como si fuera un auténtico servidor DNS para nuestra
red local aunque realmente no sea un servidor DNS propiamente dicho.

Cuando recibe una petición de DNS por parte de un cliente de nuestra red (como él
no tiene zonas de búsqueda, es decir, no sabe resolver), la trasladará a un DNS
maestro que puede estar en nuestra red o fuera, almacenará en una memoria
caché la respuesta y a la vez la comunicará a quien hizo la petición.

Si un segundo cliente vuelve a realizar la misma petición, como nuestro


servidor tiene la respuesta almacenada en su memoria caché, responderá
inmediatamente sin tener que cursar la petición a ningún servidor DNS de
Internet. (Por eso agiliza las consultas a Internet).

Disponer de un servidor caché DNS en nuestra red local aumenta la velocidad de la


conexión a Internet pues cuando navegamos por diferentes lugares, continuamente
se están realizando peticiones DNS.

Si nuestro caché DNS almacena la gran mayoría de peticiones que se realizan


desde la red local, las respuestas de los clientes se satisfarán prácticamente de
forma instantánea proporcionando al usuario una sensación de velocidad en la
conexión.
Es un modo de funcionamiento de sencilla configuración ya que prácticamente lo único
que hay que configurar son las direcciones IP de un DNS primario y de un DNS
secundario. Muchos routers ADSL ofrecen ya este servicio de caché, tan solo hay que
activarlo y configurar una o dos IPs de servidores DNS en Internet.

En los PCs de nuestra red local podríamos poner como DNS primario la IP de nuestro
router y como DNS secundario una IP de un DNS de Internet.
9.1 Instalación en Microsoft Windows

Los sistemas operativos Microsoft Windows Server 2102 R2


incluyen todos los paquetes necesarios para permitir que el
equipo se comporte como un servidor DNS. Sin embargo, estos
paquetes no se incluyen en una instalación por defecto del
sistema operativo, sino que hay que instalar los posteriormente.
9.2 Instalación en GNU/LINUX

La traducción de direcciones de dominio a direcciones IP en un


equipo Linux la realiza el paquete BIND9 (Berkeley Internet Name
Domain o Dominio de Nombres de Internet de Berkeley). Dentro de
este paquete se encuentra el demonio named, que es el encargado
de recibir y atender las peticiones y actualizar las tablas de nombres
de dominio.


Instalar el paquete bind9 root@linux :# apt-get install bind9

Establecer IP fija para el servidor

Usar como DNS la IP del servidor

Configurar varios ficheros
/etc/bind/named.conf.local -> donde hay que asignarle las zonas y el fichero
en el que se encuentran. En este caso los ficheros serán creados más
tarde.

root@linux :# gedit /etc/bind/named.conf.local

zone “micentro.com” {
type master;
file “/etc/bind/db.micentro.com”;
};

zone “2.168.192.in-addr.arpa” {
type master;
file “/etc/bind/db.192”;
};
Comprobar que la configuración está bien hecha

root@linux :# named-checkconf

Ahora se configura la zona directa, en el fichero /etc/bind/db.sri12,


agregándole los parámetros y equipos que se quiera. Para ello se
copia el fichero db.localhost con el nombre db.sri12

root@linux :# cp /etc/bind/db.localhost /etc/bind/db.sri12


root@linux:# gedit /etc/bind/db.sri12
Ahora se configura la zona inversa. Primero se copia el fichero
db.127 a db.10 y luego se edita este último añadiendo los
parámetros necesarios.

root@linux :# cp /etc/bind/db.127 /etc/bind/db.10


root@linux:# gedit /etc/bind/db.10
Una vez configuradas ambas zonas, hay que comprobar que todos los
ficheros estén sin errores:

root@linux:# named-checkzone sri12.com /etc/bind/db.sri12


root@linux:# named-checkzone 5.33.10.in-addr.arpa /etc/bind/db.10

Indicar a nuestro servidor Linux que el servidor DNS es él mismo, lo cual


se especifica en el archivo /etc/resolv.conf.

root@linux:# gedit /etc/resolv.conf

domain sri12.com
nameserver 192.168.10.130
search sri12.com
Para que nuestro servidor resuelva IPs de Internet editamos el fichero
named.conf.options

root@linux:# gedit /etc/bind/named.conf.options

poniendo dentro de fowarders{} las IPs de los servidores DNS de


nuestro ISP o de un servidor DNS público.

Reiniciar el servidor DNS


root@linux:# /etc/init.d/bind9 restart
Configuración del servidor como DNS esclavo

Si deseamos configurar nuestro servidor DNS para que actúe como esclavo de un
servidor DNS maestro, la configuración es mucho más sencilla que en el caso
anterior ya que únicamente será necesario indicar en el DNS esclavo quién es el
servidor DNS maestro, y en el DNS maestro, la IP del DNS esclavo.

DNS maestro es sandra-PC.micentro.com (IP 192.168.2.202)


DNS esclavo es dns2.micentro.com.

En el archivo ‘db.micentro.com' de zona de búsqueda directa del maestro


añadiremos la línea del segundo dns justo debajo de donde está la del primero:

Añadir línea en /etc/bind/db.micentro.com del maestro

…. IN NS sandra-PC.micentro.com.
IN NS dns2.micentro.com.
de esta forma indicaremos que existen más servidores DNS para dicha zona.

Lo mismo haremos en el archivo ‘db.192’ de la zona inversa del maestro:

Añadir línea en /etc/bind/db.192 del maestro

…. IN NS sandra-PC.micentro.com.
IN NS dns2.micentro.com.

En el archivo /etc/bind/named.conf.local del servidor DNS esclavo debemos indicar


que se trata de un servidor esclavo y también debemos indicar quién es el maestro:

Añadir en /etc/bind/named.conf.local del esclavo

zone "micentro.com" {
type slave;
file "/etc/bind/db.micentro.com";
masters { 192.168.2.202; };
};

zone "2.168.192.in-addr.arpa" {
type slave;
file "/etc/bind/db.192";
masters { 192.168.2.202; };
};
En el archivo /etc/bind/named.conf.local del servidor DNS maestro podemos utilizar
also-notify para mantener los DNS sincronizados.

Con also-notify pasamos los cambios de zonas del maestro al esclavo:

Archivo /etc/bind/named.conf.local del maestro

zone "micentro.com" {
type master;
file "/etc/bind/db.micentro.com";
also-notify {ip_del_esclavo;}
};

zone "2.168.192.in-addr.arpa" {
type master;
file "/etc/bind/db.192";
also-notify {ip_del_esclavo;}
}
De ésta forma dispondremos en la red de un servidor DNS esclavo que podrá
satisfacer las peticiones DNS al igual que lo haría el maestro.

Es interesante si el número de peticiones es muy elevado y se requiere


distribuir la carga entre los dos servidores, o si deseamos disponer de
servicio DNS de alta disponibilidad de forma que aunque el servidor maestro
deje de funcionar, el servidor esclavo podrá seguir ofreciendo el servicio.

NOTA: Cada vez que hagamos un cambio en los archivos


/etc/bind/db.micentro.com
/etc/bind/db.192
Del DNS maestro deberemos acordarnos de actualizar el parámetro serial
(incrementar en una unidad) para que los DNS dependientes del maestro
sepan que ha cambiado y actualicen su información para mantenerse
perfectamente sincronizados
9.3 Problemas del servidor DNS

La mejor forma de comprobar si el servidor DNS está funcionando


correctamente es a través de las órdenes nslookup y dig.

Los errores que devuelven estas órdenes pueden ser:

Timed out (tiempo de espera agotado): se produce cuando el servidor no


responde a una solicitud y varios reintentos en el tiempo establecido. Puede
ser debido a que el servidor esté saturado, sea inaccesible o existan
problemas de conectividad en la red.

No response from server (no hay respuesta del servidor): se produce


cuando en el servidor, aunque está funcionando, no tiene activo el servicio
DNS.

No records (no hay registros): se devuelve este mensaje cuando no hay


información en el servidor DNS para el tipo de consulta realizada.
Non-existent domain (dominio no existente): se utiliza para indicar que el
equipo especificado o el dominio para el que se está intentando resolver la
dirección IP no existe.

Connection refused (conexión rechazada): se produce cuando no se puede


realizar conexión con el servidor para realizar la consulta.

Server failure (fallo en el servidor): se notifica cuando el servidor encuentra


una inconsistencia en su base de datos y no puede devolver una respuesta
válida. Se recomienda repasar los archivos de configuración en el servidor.

Refused (rechazado): se produce cuando el servidor DNS rechaza la


consulta, una situación que puede producirse cuando se han limitado las
consultas por cuestiones de seguridad.

Format error (error de formato): esta notificación es enviada por el servidor


cuando detecta que el mensaje de solicitud no tiene el formato correcto, por lo
que el problema se puede encontrar en la orden nslookup o en la consulta
realizada por el usuario.
10 CONFIGURACIÓN DE UN CLIENTE DNS

los equipos clientes de la red deben estar correctamente configurados para


poder enviar peticiones. Para ello, es necesario que su configuración de
red sea correcta y dispongan de una lista de direcciones correspondientes
a los servidores DNS que les pueden resolver las direcciones.

En caso de que los equipos obtengan su configuración de red por DHCP,


también es posible que obtengan las direcciones de los servidores de
nombres por esta vía.
10.1 Configuración en Microsoft Windows

10.2 Configuración en GNU/Linux

11 COMPROBACIÓN DE LA CONFIGURACIÓN

Una vez se ha establecido la configuración del cliente DNS en Linux y en


Windows, suponiendo que los servidores funcionan correctamente, puede
ser necesario comprobar que todo funciona correctamente. Para ello, se
pueden utilizar las siguientes órdenes ejecutadas desde el Terminal o
interfaz de órdenes:
host: permite realizar consultas al DNS si se especifica como parámetro un
nombre de equipo o una dirección IP.

nslookup: se utiliza para enviar consultas al DNS, tanto directas como


inversas. Se puede especificar el nombre o dirección directamente como
argumento de esta orden. También se puede escribir esta orden sin
argumentos, lo que mostrará un símbolo ">" para introducir las consultas. Esta
orden se considera actualmente obsoleta y se espera que finalmente
desaparezca de las distribuciones a favor de dig.

dig: herramienta de consulta al DNS que funciona de la misma forma que


nslookup.

También podría gustarte