2010 C.I.F.P Juan de Colonia Yuliyan Tsvetanov Marinov [CONFIGURACIÓN DE DNS] A través de este documento se verán las generalidades del servicio de resolución de nombres (DNS) y como configurarlo bajo la plataforma Linux (en este caso vamos a utilizar Ubuntu 9.10) con la herramienta Bind 9.
Servidor DNS Contenido Introducción... 2 Configuración de servidor DNS en Ubuntu 9.10 con Bind 9... 3 Instalación y configuración de Bind 9... 3 Comprobar el fincionamiento... 6 1
Introducción Domain Name System (o DNS, en español: sistema de nombre de dominio) es un sistema de nomenclatura jerárquica para computadoras, servicios o cualquier recurso conectado al internet o a una red privada. Este sistema asocia información variada con nombres de dominios asignado a cada uno de los participantes. Su función más importante, es traducir (resolver) nombres inteligibles para los humanos en identificadores binarios asociados con los equipos conectados a la red, esto con el propósito de poder localizar y direccionar estos equipos mundialmente. El DNS es una base de datos distribuida y jerárquica que almacena información asociada a nombres de dominio en redes como Internet. Aunque como base de datos el DNS es capaz de asociar diferentes tipos de información a cada nombre, los usos más comunes son la asignación de nombres de dominio a direcciones IP y la localización de los servidores de correo electrónico de cada dominio. La asignación de nombres a direcciones IP es ciertamente la función más conocida de los protocolos DNS. Por ejemplo, si la dirección IP del sitio FTP de prox.mx es 200.64.128.4, la mayoría de la gente llega a este equipo especificando ftp.prox.mx y no la dirección IP. Además de ser más fácil de recordar, el nombre es más fiable. La dirección numérica podría cambiar por muchas razones, sin que tenga que cambiar el nombre. Inicialmente, el DNS nació de la necesidad de recordar fácilmente los nombres de todos los servidores conectados a Internet. En un inicio, SRI (ahora SRI International) alojaba un archivo llamado HOSTS que contenía todos los nombres de dominio conocidos (técnicamente, este archivo aún existe - la mayoría de los sistemas operativos actuales todavía pueden ser configurados para revisar su archivo hosts). El crecimiento explosivo de la red causó que el sistema de nombres centralizado en el archivo hosts no resultara práctico y en 1983, Paul Mockapetris publicó los RFCs 882 y 883 definiendo lo que hoy en día ha evolucionado hacia el DNS moderno. (Estos RFCs han quedado obsoletos por la publicación en 1987 de los RFCs 1034 y 1035). Domain Name System. (2010, 4) de febrero. Wikipedia, La enciclopedia libre. Fecha de consulta: 21:54, febrero 5, 2010 de http://es.wikipedia.org/w/index.php?title=domain_name_system <http://es.wikipedia.org/w/index.php?title=domain_name_system&oldid=33637443 2
Configuración de servidor DNS en Ubuntu 9.10 con Bind 9 Instalación y configuración de Bind 9 Para instalar el Bind 9 entramos en el terminal y ponemos el siguiente comando: Sudo apt-get install bind9 dnsutils El ordenador empezara a descargar todo lo necesario e instalarlo. Cuando la instalación este completada nos desplazamos al directorio de bind de donde podemos modificar los archivos de configuración. Cd /etc/bind/ Para empezar la configuración de nuestro servidor DNS vamos a editar el archivo named.conf.local y añadimos la zona adminis.local haciendo referencia a su fichero de configuración: Zone admini.esim { Type master; File /etc/bind/db.adminis ; }; Si deseamos también disponer de resolución de dominios inversa, es decir, que podamos preguntar por la IP 192.168.48.32 y el servidor DNS nos diga que pertenece a marblestation.homeip.net, debemos añadir a /etc/bind/named.conf.local : Zone 25.168.192.in-addr.arpa { Type master; File /etc/bind/db.25.168.192.in-addr.arpa ; }; 3
Creamos el archivo de configuración /etc/bind/db.192 a partir del /etc/bind/db.127 : cd /etc/bind/ cp db.127 db.192 Editamos /etc/bind/db.192, substituimos localhost por adminis.esim y cambiamos la última línea: ; ; BIND reverse data file for local loopback interface ; $TTL 604800 @ IN SOA admis.esim. root.adminis.esim. ( 1 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; 4
@ IN NS adminis.esim 32.48.168 IN PTR adminis.esim. De forma que, la última línea indica que la IP (escrita a la inversa y omitiendo el 192 que ya se especificó en named.conf.local ) corresponde al dominio adminis.esim. Creamos el fichero de configuración db.adminis a partir de db.local : Cp db.local db.adminis Editamos el nuevo archivo db.adminis, reemplazamos la palabra localhost por adminis.esim.local. Despued cambiamos la IP a 27.0.0.1 por la que queramos asignar al dominio y añadimos al final del fichero todos los A, MX y CNAME que queramos. En este ejemplo vemos primero el dominio para resolver adminis.esim.local y el segundo es la cuenta del administrador, root.adminis.esim.local (sustituyendo el primer punto por por @ será root@adminis.esim.local ). Vemos que al final de cada dominio hay un punto, que identifica la raíz. Significado del resto de los parámetros: Serial: es un identificador del archivo, puede tener un valor arbitrario pero se recomienda que tenga la fecha con una estructura AAAA-MM-DD y un consecutivo (por ejemplo 2010011201 lo que sería el primer archivo del día 12 de enero del año 2010). Refresco: número de segundos que un servidor de nombres secundario debe esperar para comprobar de nuevo los valores de un registro. Reintentos: número de segundos que un servidor de nombres secundario debe esperar después de un intento sin éxito de recuperación de datos del servidor primario. Expiración: número de segundos máximo que los servidores de nombre secundarios retendrán los valores antes de expirarlos. TTL mínimo: Significa Time To Live y es el número de segundos que los registros se mantienen activos en los servidores NS caché antes de volver a preguntar su valor real. Lo siguiente es definir los registros necesarios. Cada vez que se cambia la configuración de Bind9, debemos reiniciar el dominio para que los cambios se efectúen: Sudo service bind9 restart Para que nuestra maquina utilice el servidor DNS que hemos configurado, tenemos que editar /etc/resolv.conf y dejamr solo la línea: 5
Nameserver 127.0.0.1 Se tiene que hacer lo mismo con el resto de las máquinas de la red que van a utilizar el servidor, con la diferencia de cambiar la IP 127.0.0.1 por la IP que tenga el servidor en la red. Comprobar el fincionamiento Para comprobar que el servidor DNS realmente funciona podemos ejecutar lo siguiente: Nslookup www.rediris.net Y después: Dig 130.206.1.22 En la siguiente imagen vemos el resultado. * Fragmentos de texto extraídos del tutorial "Cómo configurar BIND" de Hugo Madrid Luna (Crowley) bajo FDL. 6