Sri - Tema 3 DNS Rev 1.4
Sri - Tema 3 DNS Rev 1.4
Sri - Tema 3 DNS Rev 1.4
4. Servidores de nombres..........................................................................6
4.1. Tipos de servidores de nombres.........................................................................7
7. Correspondencias inversas..................................................................10
8. Registros de recursos...........................................................................11
8.1. Tipos de registros.............................................................................................12
8.2. Registros pegamento (Glue Record)................................................................13
9. Transferencias de zona........................................................................13
10. DNS dinmico (DDNS, Dynamic DNS)...........................................14
11. Seguridad DNS..................................................................................15
12. Servidores DNS en Linux.................................................................15
13. Servidores DNS en Windows............................................................21
14. Configuracin de clientes..................................................................22
14.1. Clientes Linux................................................................................................22
14.2. Clientes Windows..........................................................................................23
1. Caractersticas.
En las redes TCP/IP, como es Internet, no es fcil recordar las direcciones IP de los equipos, ya que a
las personas nos es ms cmodo usar y recordar nombres que secuencias de nmeros.
Para facilitar el uso de los servicios, recursos y equipos de una red se cre un sistema de nombres que
mediante un servicio de resolucin de nombres permite asociar nombres con direcciones numricas. De
forma simplificada podemos decir que un servicio de nombres almacena direcciones y sus nombres
correspondientes.
La operacin que hay que realizar para conocer la direccin IP de un equipo a travs de su nombre se
denomina resolucin de nombre.
Los sistemas de nombres se clasifican en planos y jerrquicos. En los sistemas de nombre planos, los
nombres se usan sin ninguna estructura u organizacin que permita clasificarlos de alguna manera. Por
ejemplo, los nmeros de matrcula de los alumnos de un centro y su correspondencia con los nombres de
dichos alumnos. (Los nombres NetBIOS que usa Windows son un espacio de nombres plano). El mayor
inconveniente es que los nombres deben ser nicos, sin repeticin.
Los sistemas de nombres jerrquicos usan nombres que se agrupan o clasifican bajo algn criterio.
Esta cualidad permite una gestin ms simple, que los nombres se puedan repetir y con la posibilidad de
de realizar una gestin de forma distribuida. Ejemplo de ello son los nombres en un sistema de archivos y
tambin como veremos, el servicio de resolucin de nombres DNS.
El servicio DNS es un servicio de registro y consulta de informacin, la cual se almacena en una base
de datos distribuida en numerosos equipos. Estos equipos que almacenan una parte de dicha informacin
de denominan servidores de nombres.
La informacin a la hora de distribuirla entre los diversos servidores de nombres se organiza mediante
un esquema de nombres jerrquico. Este esquema jerrquico es lo que se denomina espacio de nombres
de dominio. As cada servidor de nombre gestiona slo una parte del espacio de nombres de dominio.
Dicha parte se denomina dominio y es un subrbol del espacio de nombres de dominio.
Los clientes DNS se dedican a preguntar a los servidores de nombres, los cuales responden usando
para la comunicacin entre ellos el protocolo DNS.
El servicio DNS no slo permite asociar un nombre de dominio con una direccin IP, adems se
permite almacenar otras informaciones, como por ejemplo qu equipos ofrecen un determinado servicio,
o qu equipos son fuentes de malware o de spam.
2. Componentes.
El servicio DNS se basa en el modelo cliente-servidor y est formado por los componentes siguientes:
Espacio de nombres de dominio. Lo forma la totalidad del conjunto de nombres que permite
identificar equipos o servicios de red, estructurados de forma jerrquica.
Base de datos DNS. Es una base de datos distribuida que contiene la informacin del espacio de
nombres del dominio. La base de datos se organiza en zonas, en las cuales los datos se registran
mediante los llamados registros de recursos (RR).
Servidores de nombres. Tambin llamados servidores DNS. Guardan parte de la base de datos
DNS en las llamadas zonas y son capaces de responder a las preguntas relativas a la informacin
que almacena en sus zonas. Normalmente un servidor de nombres guarda informacin de una sola
zona; la informacin correspondiente a esa parte del espacio de nombres o dominio, pero tambin
puede registrar la informacin de varios dominios que el servidor almacenar en varias zonas.
Clientes DNS o resolvedores. Son los encargados de realizar las preguntas a los servidores de
nombres y ofrecer las respuestas a los clientes o aplicaciones que las solicitan.
El ICANN tiene la misin de que Internet sea funcional y entre otras cosas, de administrar el dominio
raz y de mantener un registro de los dominios de nivel superior (TLD).
Por otra parte, InterNIC, (http://www.internic.net/) organizacin asociada al ICANN, es la encargada
de registrar los dominios de primer nivel (TLD).
Los dominios de primer nivel (TLD) se clasifican por parte de la ICANN en:
Patrocinados. Existe una organizacin que lo patrocina. Ejemplos: info, asia, edu, etc.
No patrocinados. Operan con unas reglas comunes establecidas por el ICANN. Por
ejemplo:com, net, org, etc.
Geogrficos. Usan dos letras en funcin del pas. La gestin de estos dominios es delegada por el
ICANN a organizaciones propias de cada uno de los pases denominadas operadoras de registro.
Ejemplo de dominios geogrficos son: es, uk, fr. En Espaa, Red.es (http://www.red.es) es
la organizacin delegada por el ICANN para la gestin del dominio es, y del registro de
dominios de segundo nivel dentro de es.
arpa. El dominio arpa lo gestiona directamente la ICANN y sirve a travs de los subdominios
in-addr.arpa y ip6.arpa para poder efectuar la resolucin inversa de direcciones.
Reservados. Son dominios de primer nivel reservados slo para pruebas y documentacin. Por
ejemplo: test, example y localhost.
4. Servidores de nombres.
Los servidores de nombres o servidores DNS almacenan una parte de la base de datos DNS guardando
informacin sobre nombres de dominio y respondiendo a los clientes DNS u otros servidores DNS. Los
servidores escuchan las peticiones por defecto en los puertos 53/TCP y 53/UDP.
La parte de informacin del espacio de nombres de dominio que mantienen los servidores de nombres
se denomina zona. Cuando un servidor de nombres contiene informacin de una zona se dice que es
autorizado para esa zona. La informacin de una zona se almacena en archivos de texto o en bases de
datos, dependiendo del tipo de servidor.
Los ficheros de zona almacenan bsicamente sus datos mediante registros de recursos. Dependiendo
del tipo de informacin que se asocie con un nombre de dominio se utiliza un tipo de registro de recurso.
Por ejemplo un servidor DNS para los equipos del aula almacenara la informacin de la zona
aula.izv y en el se definiran los nombres que cuelgan de aula.izv como por ejemplo
puesto1.aula.izv, puesto2.aula.izv, etc.
Aunque posteriormente lo examinaremos con ms detalle, el servidor BIND (Berkeley Internet Name
Domain), el servidor DNS ms comnmente usado en Internet y estndar de facto, registra los datos en
formato texto. Los registros de recursos ms usuales son:
NS. Indica los servidores de nombres de dominio DNS que tienen autoridad para una zona.
Por ejemplo, un archivo de zona de resolucin directa con delegacin para el dominio aula.izv, podra
ser:
...
aula.izv.
IN
NS
puesto1.aula.izv.
puesto1.aula.izv.
IN
192.168.210.1
puesto2.aula.izv.
IN
192.168.210.2
puesto3.aula.izv.
IN
192.168.210.3
www.aula.izv
IN
CNAME
puesto2.aula.izv.
IN
puesto10.sri.aula.izv. IN
;subdominio bd.aula.izv.
NS
puesto10.sri.aula.izv.
192.168.210.10
no delegado
puesto15.bd.aula.izv. IN
192.168.210.15
puesto16.bd.aula.izv. IN
192.168.219.16
puesto17.bd.aula.izv. IN
192.168.219.17
...
El archivo de zona del dominio aula.izv. indica que se almacena en un servidor DNS que est en el
equipo con direccin IP 192.168.210.1 y cuyo nombre es puesto1.aula.izv. A continuacin los registros
tipo A asocian un nombre de dominio con una direccin IP, y con CNAME indicamos otro nombre de
dominio (un alias) para puesto2.aula.izv.
Tambin podemos comprobar cmo se ha delegado el subdominio sri.aula.izv. en otro servidor DNS
con direccin IP 192.168.210.10 y cuyo nombre es puesto10.sri.aula.izv. Este servidor ser autorizado
para el dominio sri.aula.izv. y almacenar el archivo de zona del dominio.
El archivo de zona del dominio delegado sri.aula.izv. podra ser:
...
sri.aula.izv.
NS
puesto10.sri.aula.izv.
puesto10.sri.aula.izv. IN
IN
192.168.210.10
puesto11.sri.aula.izv. IN
192.168.210.11
puesto12.sri.aula.izv. IN
192.168.210.12
...
Es comn el error de considerar los trminos zona y dominio como sinnimos. Un dominio es un
subrbol del espacio de nombres del dominio. Los datos asociados a los nombres de un dominio puede
estar almacenados en una o varias zonas, las cuales pueden estar distribuidas en uno o varios servidores
DNS.
En nuestro ejemplo anterior podemos comprobar como los nombres de dominio aula.izv. se distribuye
en dos archivos de zona, el fichero de la zona aula.izv y el fichero de la zona sri.aula.izv.
Adems, un servidor de nombres puede tener autoridad sobre varias zonas. Por ejemplo, un mismo
servidor puede ser autorizado para las zonas aula.izv y aula209.izv.
Servidor maestro (master). Define una o varias zonas para las que es autorizado. El administrador es
el responsable de los archivos de zona, aadiendo, modificando o borrando nombres de dominio.
Si un cliente DNS le pregunta por un nombre de dominio para el que est autorizado, consultar en
los archivos de su zona y le responder. Si no est autorizado, buscar la informacin en otros
servidores DNS o responder que no sabe la respuesta.
Servidor esclavo (slave). Define una o varias zonas para las que es autorizado, pero obtiene los
archivos de zona de otro servidor autorizado para la zona (maestro o esclavo), realizando lo que se
denomina transferencia de zona. Los archivos de zona del servidor esclavo no se pueden editar, por
lo que las modificaciones deben realizarse en el servidor que realiza la transferencia.
Un servidor DNS puede ser maestro para una o varias zonas y a la vez esclavo de otras. Adems
pueden existir varios servidores esclavos para una misma zona.
Con los servidores esclavos se puede repartir la carga de trabajo entre varios servidores y disminuir
los fallos que se puedan producir en el servicio.
Servidor cach. Si un servidor DNS recibe una pregunta sobre un nombre de dominio para la que no
est autorizado, podr preguntar, si est configurado as, a otros servidores DNS. Si el servidor acta
como cach, las respuestas obtenidas de los otros servidores las podr almacenar durante un tiempo
(TTL, Time To Live). De esta forma, cuando un cliente u otro servidor DNS le formule una pregunta,
consultar primero en su memoria cach, por si ya tuviera la respuesta.
Los servidores llamados solo cach, son los que no tienen autoridad sobre ningn dominio y realizan
preguntas a otros servidores para resolver las peticiones, guardando las respuestas en su memoria
cach. En redes extensas y con muchos equipos es adecuado tener un servidor DNS que acte de esta
forma ya que se logra disminuir significativamente el trfico en la red.
Servidor reenviador (forwarding). Cuando un servidor DNS no tiene respuesta a una peticin de
resolucin, puede realizar la pregunta a otros servidores en un orden que luego explicaremos o bien
puede trasladar directamente la pregunta a otros servidores DNS (forwarders), para que sean estos
los que se encarguen de resolverla.
Por lo tanto, un servidor configurado como reenviador traslada las preguntas que no puede resolver a
otros servidores DNS a los que se les trasladan dichas consultas. Con esto se consigue disminuir el
trfico de peticiones DNS generado por los equipos de una red a Internet (se encargan de resolver los
forwarders) y se comparte la cach de los servidores DNS a los que se le reenvan las consultas.
Lgicamente las consultas que se reenvan son slo aquellas para las que el servidor no est
autorizado ni estn previamente cacheadas.
Servidor slo autorizado. Son los servidores que son autorizados para una zona pero que no
responden a peticiones que no sean para su zona. Esto implica que no preguntan a otros servidores
(no hacen preguntas recursivas), no hacen de reenviador, ni tampoco actan como cach.
En Internet existen una serie de servidores DNS denominados servidores raz (root servers)
autorizados para el dominio raz . Estos servidores contienen el archivo de la zona . en donde se
delega a otros servidores DNS autorizados los dominios de primer nivel.
El ICANN es responsable de estos servidores raz, en concreto 13, de los cuales existen copias
repartidas mundialmente. Cada uno de ellos, y sus copias, se identifica con una misma direccin IP, de
forma que cuando un cliente u otro servidor DNS les realiza una pregunta, responde la copia ms cercana.
Como luego veremos, estos servidores raz deben ser conocidos por todos los servidores DNS para
poder responder a preguntas sobre nombres de dominio para los que no estn autorizados.
En la web http://root-servers.org/ podemos ver cuales son los servidores raz, sus nombres,
ubicaciones y las empresas que los administran y en http://www.iana.org/domains/root/db los servidores
de nombres y las empresas u organizaciones responsables de los dominios de primer nivel.
La nica entrada obligatoria y que aparece siempre por defecto es la del dispositivo de red loopback.
Las direcciones del rango 127.0.0.0/8 son direcciones de loopback, de la cual la que se utiliza de forma
mayoritaria es la 127.0.0.1 por ser la primera de dicho rango. A pesar de que solo se usa la direccin
nica 127.0.0.1, se reservan las direcciones 127.0.0.0 a 127.255.255.255. Cualquier direccin dentro de
este bloque producir un loopback dentro del equipo local.
Esta direccin especial se suele utilizar cuando una transmisin de datos tiene como destino el propio
equipo de forma que stos la utilizan para dirigir el trfico hacia ellos mismos. Tambin es posible hacer
ping a la direccin de loopback para probar la configuracin de TCP/IP en el host local.
En algunas distribuciones Linux de Debian o basadas en sta, se aade otra entrada asociada al
loopback, en concreto 127.0.1.1. Esto realmente es un apao para resolver un bug del escritorio gnome.
Se puede sustituir esta direccin por la que tenga el equipo, siempre que dicha direccin se mantenga y
no cambie de forma dinmica.
Un resolvedor (resolver) es cualquier software que realiza preguntas a un servidor DNS y entiende las
respuestas recibidas. Los sistemas operativos incluyen un conjunto de libreras que realizan estas
operaciones y que son invocadas por las aplicaciones cuando usan un nombre de dominio.
Normalmente, se puede configurar si el resolvedor deber buscar primero en el archivo de hosts antes
de hacer la resolucin del nombre mediante el servicio DNS.
En general los pasos que realiza el resolver cuando una aplicacin quiere resolver un nombre son:
1.
2.
3.
Si el nombre de dominio tampoco existe en el archivo hosts, se realizar una consulta recursiva al
servidor DNS que se tenga configurado y ste suministrar la respuesta a la aplicacin.
6. Mecanismo de resolucin.
Las consultas a un servidor DNS pueden ser recursivas o bien iterativas (tambin llamadas no
recursivas). Como veremos a continuacin, a la hora de resolver un nombre el resolver realiza una
consulta recursiva, la cual podr generar o no en una serie de consultas iterativas.
Una consulta recursiva es aquella en la que el servidor siempre debe dar una respuesta completa. Esta
respuesta podr ser: positiva indicndose si es autorizada o no, negativa (si no se pudo resolver) o de error
(por ejemplo por fallo en la red).
Una consulta iterativa es aquella en la que el servidor DNS puede proporcionar una respuesta parcial.
En este caso, a parte de las respuestas positivas, negativas o de error, puede dar una respuesta incompleta
que indique una referencia a otros servidores a los que se les puede preguntar para resolver la pregunta.
Una consulta recursiva la inicia un cliente DNS a travs del resolvedor o bien un servidor DNS que la
traslada a otro servidor DNS actuando como reenviador. El proceso de resolucin cuando un servidor
recibe una consulta recursiva es el siguiente:
1.
Si el servidor es autorizado para alguna zona, comprueba sus archivos de zona, y si encuentra la
respuesta, responde indicando que la respuesta es autoritativa.
2.
3.
4.
Inicia una serie de consultas iterativas a otros servidores DNS empezando la primera de
ellas por un servidor raz.
b.
Los servidores consultados devuelven referencias a otros servidores DNS que se usan
para realizarles la pregunta. Este proceso de preguntas iterativas a distintos servidores
finaliza cuando un servidor autorizado proporciona una respuesta positiva o negativa.
7. Correspondencias inversas.
Las resoluciones de nombre de dominio que hemos comentado hasta ahora se denominan de
resolucin directa. Las resoluciones inversas consisten en preguntar por una direccin IP para obtener el
nombre o nombres de dominio como respuesta.
Uno de los principales motivos por el que se realiza una resolucin inversa est ligado a la seguridad.
Si al realizar una resolucin directa para un nombre de dominio obtenemos una direccin IP, la cual se
usa para realizar una resolucin inversa, se debera obtener el nombre de dominio por el que
preguntamos. Si no es as, posiblemente un intruso est resolviendo nombres a direcciones IP no vlidas
con fines maliciosos. Los servidores DNS pueden configurarse para que acten de esta forma para
asegurarse de las respuestas recibidas.
Tambin se suelen usar para detectar errores en la configuracin de los servidores y equipos, spam en
los servidores de correo, o seguir la traza de un ataque.
11
Los archivos de zona de resolucin inversa usan registros de recursos de tipo NS y PTR. Por ejemplo
para el siguiente archivo de zona de resolucin directa:
aula.izv.
IN
NS
puesto1.aula.izv.
puesto1.aula.izv.
IN
192.168.210.1
puesto2.aula.izv.
IN
192.168.210.2
puesto3.aula.izv.
IN
192.168.210.3
www.aula.izv.
IN
CNAME
puesto2.aula.izv.
IN
NS
puesto1.aula.izv.
1.210.168.192.in-addr.arpa.
IN
PTR
puesto1.aula.izv.
2.210.168.192.in-addr.arpa.
IN
PTR
puesto2.aula.izv.
3.210.168.192.in-addr.arpa.
IN
PTR
puesto3.aula.izv.
8. Registros de recursos.
Los archivos de zona almacenan la informacin sobre nombres de dominio mediante registros de
recursos (RR, Resource Records). Estos RR son los que se envan entre los clientes y servidores DNS en
las preguntas y respuestas.
Los RR se representan en los archivos de zona en formato texto, y de forma binaria en los mensajes
que se envan mediante el protocolo DNS. El formato en modo texto es:
Nombre de Dominio
[TTL]
Clase
Tipo
Dato
3600
IN
192.168.210.1
Por ejemplo:
puesto1.aula.izv.
Registro SOA (Star of Authority). Es el primer registro de una zona y permite definir el tipo de
servidor y las opciones generales de la zona.
El registro tipo SOA comienza con el nombre del dominio de la zona, opcionalmente un TTL (lo
normal es establecerlo de forma global para toda la zona) y continua con la clase IN, el tipo SOA y
finaliza con los datos asociados. Estos datos asociados son:
-
Contacto. Direccin de correo del responsable del dominio. (La arroba se sustituye por .)
Nmero de serie (serial). Indica la versin del archivo de zona que se ir incrementando cada vez
que el archivo se modifique. De esta forma los servidores secundarios conocen si el archivo de
zona ha cambiado y deben actualizarse mediante una transferencia de zona.
Actualizacin (refresh). Indica cada cuanto tiempo deben contactar los servidores secundarios
con el servidor maestro para comprobar si ha habido cambios en la zona. Dependiendo de la
frecuencia de actualizacin de la zona primaria se usar ms o menos tiempo. Se recomiendan
valores entre 12 y 24 horas.
Reintentos (retry). Indica cada cuanto tiempo deben reintentar los servidores secundarios
contactar con el servidor maestro si ste no responde a una actualizacin.
Caducidad (expire). Tiempo durante el cual un servidor secundario puede estar sin contactar con
el primario para comprobar la zona. Si se supera este tiempo, el secundario descarta los datos
que tena sobre la zona y se declara no autorizado para la zona.
TTL negativo. Es el tiempo mnimo en que se almacena las respuestas negativas sobre la zona.
Por ejemplo, nuestro dominio aula.izv podra tener el siguiente registro SOA
aula.izv. IN SOA puesto1.aula.izv. carlos.aula.izv. (
2012102301
604800
; tiempo de refresco
86400
; tiempo de reintento
2419200
; tiempo de expiracin
38400 )
; TTL negativo
Registro NS (Name Server). Permite indicar los servidores de nombres autorizados para una zona.
(Cada zona debe contener al menos un registro NS, por ejemplo un maestro, y puede tener uno o ms
esclavos). Este registro tambin permite indicar los nombres de los servidores con autoridad en los
subdominios que hayan sido delegados. (Ver ejemplo de la pgina 6).
Registro A. (Address). Establece una correspondencia entre un nombre de dominio FDQN y una
direccin IP (IPv4).
Registro AAAA. (Address). Establece una correspondencia entre un nombre de dominio FDQN y
una direccin IP (IPv6).
Registro CNAME (Canonical Name). Indican un alias o sobrenombre para los nombres de dominio
especificados en registros A y AAAA. Un alias puede apuntar a otro dominio, pero no se pueden
usar en la parte derecha de registros MX y NS. Estos dos tipos de registros necesitan usar en su parte
derecha nombres que aparezcan en registros de tipo A o AAAA.
Registro MX (Mail Exchange). Define los equipos encargados de correo en el dominio para que los
agentes de transporte de correo sepan a que equipo deben entregar el correo. Se pueden definir varios
servidores de correo donde en el registro de recursos de cada uno se indican mediante un nmero el
orden de preferencia de cada uno de ellos; a nmero menor le corresponde mayor preferencia.
13
Registro SRV (Services Record). Permite definir equipos que actan como servidores de algn
servicio particular en el dominio. Por ejemplo servidores LDAP, servidores de mensajera, etc.
Registro TXT (Texto). Permite registrar cualquier texto que tenga relacin con un equipo.
Un registro NS en el dominio que delega, para indicar cul es el servidor de nombres para la
zona delegada.
2.
Un registro A que indique la IP del servidor de nombres del subdominio delegado. Este tipo de
registro se denomina glue record porque que de alguna forma relaciona o pega la zona hija con
la zona padre.
Por lo tanto, los servidores de un dominio deben conocer la direccin IP de los servidores de nombres
de los subdominios para que los clientes puedan dirigirse a ellos en las consultas. (Ver ejemplo pag. 6).
En el cado de que el servidor de nombres autorizado para el subdominio delegado no se encuentra en
el mismo dominio, slo es necesario aadir el registro NS que indique el servidor de nombres de la zona
delegada. En este caso no necesita un registro tipo A, por que los clientes podrn resolver el nombre de
dominio de la zona delegada normalmente.
Finalizamos con un ejemplo de zona de resolucin directa para el dominio aula.izv.
aula.izv. IN SOA puesto1.aula.izv. carlos.aula.izv. (
2012041401
604800
; tiempo de refresco
86400
; tiempo de reintento
2419200
; tiempo de expiracin
38400 )
; TTL negativo
aula.izv.
IN
NS
puesto1.aula.izv.
puesto1.aula.izv.
IN
192.168.210.1
puesto2.aula.izv.
IN
192.168.210.2
puesto3.aula.izv.
IN
192.168.210.3
www.aula.izv. IN
CNAME
ftp.aula.izv.
IN
CNAME
aula.izv.
IN
MX
smtp.aula.izv.IN
CNAME
_ldap._tcp.aula.izv.
SRV
puesto2.aula.izv.
puesto2.aula.izv.
10
puesto3.aula.izv.
puesto3.aula.izv.
0 0 389 puesto3.aula.izv.
;subdominio sri.aula.izv.
sri.aula.izv.
IN
NS
puesto10.sri.aula.izv.
puesto10.sri.aula.izv. IN
192.168.210.10
;subdominio bd.aula.izv.
bd.aula.izv.
NS
IN
; (Glue Record)
ns1.informatica.izv.
9. Transferencias de zona.
Los servidores en los que se declaran zonas esclavas, deben obtener los archivos de zonas, es decir los
registros de recursos, de otros servidores (maestros o esclavos) autorizados para dichas zonas.
Este proceso se denomina transferencia de zona y hay que configurar los servidores para que las
realicen. Los servidores maestros usan el puerto 53/TCP para realizar el intercambio de zona la cual
puede ser de dos tipos: completa e incremental.
15
Modificaciones de los archivos de zonas aprovechando una mala configuracin de los permisos
de usuarios que puedan acceder al equipo servidor de forma remota.
Suplantaciones de los orgenes externos que envan actualizaciones a los DNS dinmicos.
localhost
ubup.aula.izv ubup
Tambin, como suele suceder en la mayora de los servicios, el servidor deber tener una IP fija.
El servidor bind se instala mediante el paquete bind9, sus archivos de configuracin se ubican en el
directorio /etc/bind, el demonio del proceso servidor se denomina named, y el script que permite
arrancar, parar y reiniciar el servicio es /etc/init.d/bind9 {start|stop|reload|restart|force-reload|status}.
Terminada la instalacin debemos comprobar que named est en ejecucin, y que el servicio est a la
escucha en los puertos 53 TCP y UDP. Para ello ejecutamos:
$ ps ef | grep named
$ netstat ltun
Cuando se instala bind, se generan unos archivos con una configuracin bsica con unas zonas ya
preconfiguradas:
El archivo /etc/bind/named.conf es el archivo de configuracin principal y mediante la directiva
include, incluye la configuracin de los tres archivos siguientes:
o
o
o
Siempre que se cambie la configuracin del servidor hay que reiniciar el servicio para que tengan
efecto los cambios. Es muy conveniente examinar el archivo de logs (/var/log/syslog) del sistema para
comprobar que no se hayan producido fallos en el arranque del servidor.
El contenido del archivo de configuracin /etc/bind/named.conf.options que se genera por defecto es
muy simple. Le vamos a aadir algunas opciones ms cuyo significado aparecen como comentarios.
options {
// Directorio de trabajo por defecto
directory "/var/cache/bind";
// Para aceptar slo peticiones de resolucin de ciertos equipos.
allow-query { 127.0.0.1; 192.168.210.0/24;};
// Por defecto se permiten consultas recursivas (
consultas
# conform to RFC1035
17
};
A continuacin deberamos crear los archivos con los registros de recursos de ambas zonas. Los
archivos a crear son los que hemos indicado anteriormente en el parmetro file. Si no hubiramos
especificado la ruta absoluta, se toma el directorio de trabajo por defecto (/var/cache/bind).
Crear los archivos con los registros de recursos editndolos directamente suele causar problemas, ya
que la sintaxis es algo complicada. Lo ms cmodo es usar alguna herramienta grfica que nos ayude en
esta tarea como es webmin. Adems podemos indicarle que a medida que vayamos registrando
registros de recursos de la zona directa, cree de forma automtica los correspondientes PTR de la zona
inversa.
Ejemplo de archivo de zona de resolucin directa
$ttl 38400 ;
aula.izv. IN SOA ubup.aula.izv. carlos.aula.izv. (
aula.izv.
ubup.aula.izv.
2012041401
604800
; tiempo de refresco
86400
; tiempo de reintento
2419200
; tiempo de expiracin
38400 )
; TTL negativo
IN
NS
ubup.aula.izv.
IN
192.168.210.211
; correspondencia FDQN a IP
192.168.210.212
profe.aula.izv.
IN
smtp.aula.izv.IN
CNAME profe.aula.izv.
www.aula.izv. IN
CNAME profe.aula.izv.
aula.izv.
MX 10 profe.aula.izv.
IN
192.168.210.210
; alias para nombres de dominio
; quien entrega el correo al dominio
--------------------------------------------------------------------------------------------------------------------------------
SOA
ubup.aula.izv. carlos.aula.izv. (
1316802825
10800
3600
604800
38400 )
210.168.192.in-addr.arpa.
IN
NS
ubup.aula.izv.
211.210.168.192.in-addr.arpa. IN
PTR
ubup.aula.izv.
212.210.168.192.in-addr.arpa. IN
PTR
winp.aula.izv.
210.210.168.192.in-addr.arpa. IN
PTR
profe.aula.izv.
En los archivos de zona puede usarse expresiones del tipo $TTL 86400. Esto permite especificar un
valor de TTL por defecto para todos los registros de recursos. Se puede usar el carcter @ como
sustituto del nombre de la zona definido en named.conf.local para no tener que repetirlo en el archivo.
Despus de reiniciar el servicio y comprobar que no hay errores, deberamos configurar los clientes
para que usen como servidor DNS la mquina en donde hemos instalado y configurado el servidor.
- Configuracin del servidor DNS como esclavo para una zona de resolucin directa y una zona de
resolucin inversa.
En el servidor que se configure como esclavo debe crearse una zona secundaria, luego debemos editar
su archivo /etc/named.conf.local y aadirle dicha zona indicando: el tipo de servidor (slave), cual es el
servidor maestro del que recibir la transferencia (masters) y el archivo donde se almacenarn los
registros de recursos que se reciban (files).
Por ejemplo si el equipo donde se va a configurar como servidor esclavo fuera profe.aula.izv con IP
escribiramos en el archivo /etc/named.conf.local de este servidor esclavo:
192.168.210.210,
zone "aula.izv" {
// tipo de servidor
type slave;
// IP del servidor maestro
masters { 192.168.210.211; };
file "/etc/bind/db.aula.izv";
};
Por ltimo, en el archivo de zona del servidor maestro, deberemos indicar que existe otro servidor
DNS para la zona, aadiendo para ello un nuevo registro NS:
...
aula.izv.
IN
NS
profe.aula.izv.
...
19
En este caso, el comando genera una clave de 128 bits empleando el algoritmo HMAC-MD5 (base-64)
de tipo HOST crendose dos archivos: Kddnsclave.+157+59571.key y Kddnsclave.
+157+59571.private; el primero contiene la clave privada y el segundo la pblica. Los nmeros 157 en el
nombre del archivo indican el tipo de algoritmo usado, y los 5 dgitos posteriores indican un identificador
aleatorio.
y
Estos dos archivos debern colocarse en el directorio donde el servidor DNS almacene los archivos de
zona; en nuestro caso en /etc/bind.
2) El segundo paso sera configurar el servidor DNS para que acepte actualizaciones firmadas con esta
clave. Para ello editamos el archivo /etc/bind/named.conf.local y le aadimos una entrada key con la
definicin de la clave.
Adems deberemos configurar las zonas que recibirn las actualizaciones con dicha clave usando la
opcin allow-update; o bien podemos afinar un poco ms y especificar ciertas reglas mediante el uso de
update-policy.
El archivo quedara de la forma:
key ddnsclave {
algorithm hmac-md5;
// la clave secreta se obtiene del archivo Kddnsclave.+157+59571.key
secret "4vi9ZnoZlJ/axrD3ODwEbw==";
};
zone "aula.izv" {
type master;
file "/var/lib/bind/aula.izv.hosts";
};
zone "210.168.192.in-addr.arpa" {
type master;
file "/var/lib/bind/192.168.210.rev";
};
21
Una vez iniciado el cliente, deberemos observar el archivo /var/log/syslog del equipo servidor para
comprobar que la concesin ha sido correcta y que los registros de zona del servidor DNS han quedado
actualizados.
23
La configuracin de los clientes DNS usando los archivos de configuracin se realiza bsicamente
editando los archivos etc/nsswitch.conf y /etc/resolv.conf
etc/nsswitch.conf. En este archivo se define el orden que usa el resolver a la hora de buscar
informacin sobre nombres de dominio. El orden definido es primero files (se consulta en el
archivo /etc/hosts) y luego dns (se consulta a los servidores DNS definidos en /etc/resolv.conf).
etc/resolv.conf. Este archivo contiene una serie de atributos a los que se puede asociar valores. El
atributo nameserver indica los servidores DNS que consultar el resolver. El atributo domain
especifica el dominio por defecto al que pertenece la mquina y el que se aadir a la bsqueda
de nombres no cualificados. El atributo search permite ampliar la lista de dominios que se
aadirn a los nombres de dominio en las bsquedas de nombres no cualificados, los llamados
sufijos. Las opciones domain y search no pueden usarse simultneamente. Por ejemplo:
nameserver 192.168.210.211
nameserver 8.8.8.8
search aula.izv
Si usamos la interfaz grfica, en ajustes de IPv4 de las propiedades TCP/IP del adaptador de red
(Sistema -> Preferencias -> Conexiones de red) podremos editar en cuadros de texto tanto las IP de los
servidores DNS (se escriben uno detrs de otro separados por comas), como el dominio de bsqueda al
que pertenece la mquina.
Es conveniente editar el archivo /etc/hostname y comprobar que contiene el nombre que queremos
para la mquina.
nslookup. De forma general obtiene registros de recursos tipo A o PTR, pero dispone de opciones
para obtener otros tipos de informaciones. Puede funcionar en lnea de comandos o de forma
interactiva. El comando acta de una forma predeterminada segn se haya establecido mediante
unos parmetros, los cuales podemos cambiarlos. Esta lista de parmetros se pueden obtener
invocando el comando seguido del argumento all.
Ejemplos de uso en lnea de comandos:
# obtiene la direccin de un nombre de dominio (pregunta al servidor DNS configurado en el
equipo)
nslookup www.mec.es
# obtiene la direccin de un nombre de dominio preguntando al servidor DNS especificado
nslookup www.mec.es a.nic.es
# obtiene el nombre de dominio correspondiente a la IP
nslookup 150.214.20.1
# obtiene todos los tipos de registros de un dominio
Cuando se usa de forma interactiva (sin argumentos) aparece un indicador de rdenes (>) donde se
puede ir escribiendo comandos. Se sale con exit o bien Ctrl+C (Windows) o Crtl+D (Linux). Las
posibles rdenes que se pueden ejecutar dependen del sistema operativo, algunas son comunes a
Windows y a Linux, y otras slo funcionan en uno de ellos.
Con unos ejemplos veremos las posibilidades:
# configura el servidor a quien se le preguntar y se le pregunta por los servidores autorizados para
ugr.es
nslookup
> server 8.8.8.8
> set type=NS
> ugr.es
# configura el servidor a quien se le preguntar y se pregunta por el nombre de dominio
correspondiente a la IP
nslookup
> server a.nic.es
> set type=PTR
> 150.214.20.1
dig. La herramienta dig ofrece ms opciones y suministra ms informacin en sus respuestas que
nslookup. Organiza la informacin en secciones que se corresponden con los campos principales de
los mensajes DNS. Los registros de recursos los muestra con un formato similar a como se escriben
en los archivos de zona.
Tradicionalmente dig slo ha estado disponible en sistemas Unix/Linux, pero actualmente existen
versiones para Windows; incluso como aplicacin con interfaz grfica, como es el caso de Ezdig,
aplicacin freeware de la empresa Eztk (http://www.eztk.com/).
El formato (simplificado) es el siguiente:
dig [@dns] domain [question-type]
donde dns especifica el servidor de dominio al que se le realizar la consulta; domain indica el
nombre de dominio a preguntar, y question-type expresa el tipo de recurso consultado. Ejemplo:
#obtiene por defecto la IP correspondiente al nombre del dominio (registro tipo A)
dig www.mec.es
#obtiene la direccin IP correspondiente al nombre de dominio
dig x 8.8.4.4
# pregunta al servidor 8.8.8.8 por el nombre del dominio mostrando la traza de la consulta
dig @8.8.8.8 www.google.es +trace
#pregunta a 8.8.8.8 por los servidores autorizados para el dominio es
dig @8.8.8.8 es NS
# pregunta a 8.8.8.8 por todos los registros de recursos del dominio mec.es
dig @8.8.8.8 mec.es ANY
donde options indica entre otras cosas el tipo de recurso a preguntar, name es el nombre de dominio
por el que se consulta y server es el servidor de dominio consultado. Ejemplo:
#obtiene la IP correspondiente al nombre del dominio (registro tipo A)
host www.mec.es
#obtiene la direccin IP correspondiente al nombre de dominio
host 8.8.4.4
#pregunta a 8.8.8.8 por los servidores autorizados para el dominio
host -t NS es 8.8.8.8
# pregunta a 8.8.8.8 por todos los registros de recursos del dominio con informacin detallada en
secciones
host v t ANY mec.es 8.8.8.8