Servidor DNS Definición de servidor DNS Instalación del servidor DNS Configuración del servidor DNS Servidor DNS maestro Servidor DNS esclavo Servidor caché DNS Archivos de configuracion del DNS Configuración como caché DNS Configuración DNS maestro Archivo de zona de búsqueda directa Archivo de zona de búsqueda inversa Configuración DNS esclavo Arranque y parada manual del servidor DNS Arranque automático del servidor DNS al iniciar el sistema
Definición de servidor DNS Trabajar con direcciones IP es incómodo para las personas. En su lugar utilizamos nombres que son más fáciles de recordar y utilizar como por ejemplo: www.iesromerovargas.net www.google.es
Definición de servidor DNS Cada equipo conectado a Internet, dispone de una dirección IP y de un nombre perteneciente a un dominio. La comunicación entre los PCs se realiza utilizando direcciones IP. Por eso es necesario algún sistema que permita, a partir de los nombres de los PCs, averiguar las direcciones IPs de los mismos.
Definición de servidor DNS Un servidor DNS es un servidor que permite averiguar la IP de un PC a partir de su nombre. Para ello, el servidor DNS dispone de una base de datos en la cual se almacenan todas las direcciones IP y todos los nombres de los PCs pertenecientes a su dominio. No existe una base de datos única de Ips del mundo Cada servidor almacena las IPs correspondientes a su dominio.
Definición de servidor DNS Los servidores DNS están dispuestos jerárquicamente de forma que cuando nuestro servidor más inmediato no puede atender nuestra petición, éste la traslada al DNS superior. En el proceso de resolución de un nombre los servidores DNS funcionan como clientes DNS, consultando a otros servidores para resolver completamente un nombre consultado.
Definición de servidor DNS
Definición de servidor DNS Configuraremos un servidor DNS local. Las entradas existentes en nuestro DNS no serán visibles en Internet solamente servirán a los equipos de nuestra red local. Para recursos de Internet, el DNS local se la trasladará al siguiente servidor DNS (que sí estará en Internet).
Definición de servidor DNS Casos útiles: Las estaciones reciben su IP por DHCP y desconocemos su IP aunque no su nombre de dominio. Acceso a un servidor web, FTP o cualquier otro servicio instalado en nuestro servidor local.
Definiciones Zona de Búsqueda Directa Devuelven la dirección IP correspondiente al recurso solicitado. Zona de Búsqueda Inversa Buscan un nombre de equipo en función de su dirección IP. Reenviador DNS Servidor DNS designado para resolver nombres de dominio DNS externos o fuera del dominio local.
Instalación del servidor DNS La aplicación que hace de servidor DNS en Linux se denomina bind. sudo apt get install bind De esta forma instalaríamos los programas necesarios para disponer de un servidor DNS. Tan solo será necesario configurarlo y ponerlo en marcha.
Configuración del servidor DNS El servidor DNS admite tres modos de funcionamiento: Servidor DNS maestro Servidor DNS esclavo Servidor caché DNS
Configuración del servidor DNS Servidor DNS maestro El servidor se comporta como un auténtico servidor DNS para nuestra red local. 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.
Configuración del servidor DNS Consulta a un DNS maestro.
Configuración del servidor DNS Servidor DNS esclavo Actúa como un servidor espejo de un servidor DNS maestro. Permanece 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 es raro que exista la necesidad de tener dos servidores DNS ya que con uno será suficiente.
Configuración del servidor DNS Servidor DNS esclavo.
Configuración del servidor DNS Servidor caché DNS Se comporta como si fuera un auténtico servidor DNS aunque realmente no lo sea. Cuando recibe una petición de DNS la trasladará a un DNS maestro, dentro o fuera de la red, la almacenará en una memoria caché y 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.
Configuración del servidor DNS Disponer de un servidor caché DNS en nuestra red local: aumenta la velocidad de la conexión a Internet. si almacena la gran mayoría de peticiones que se realizan las respuestas se satisfarán de forma instantánea. Es un modo de funcionamiento de sencilla configuración Se configuran 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
Configuración del servidor DNS
Archivos de configuracion del DNS /etc/bind/named.conf hace referencia a otros archivos: Archivo principal de configuración named.conf Opciones genéricas named.conf.options Especificación particular named.conf.local Especificación dirección de retorno db.127 DNS de nivel superior db.root Otros db.0, db.255, db.empty, db.local, rndc.conf, rndc.key, zones.rfc1918
Configuración como caché DNS Es la configuración por defecto. Tan solo será necesario editar el archivo... /etc/bind/named.conf.options... y añadir en la sección forwarders las IPs de dos servidores DNS donde redirigir las peticiones: forwarders { 80.58.0.33; 80.58.32.97; };
Configuración DNS maestro Deseamos asignar un nombre a todos los equipos de nuestra red: iesromerovargas.net Todos los PCs de nuestra red pertenecerán al dominio que funcionará solo en nuestra red interna, no en Internet. Los equipos serán: asi101.iesromerovargas.net Lo ideal será disponer de un servidor DNS maestro de nuestro dominio interno.
Configurarión DNS maestro Resolverá peticiones internas de nombres de este dominio, tanto de forma directa como de forma inversa. Por ello deberemos añadir la especificación de maestro para el dominio y para la resolución inversa en el archivo /etc/bind/named.conf.local
Configuración DNS maestro // Añadir en /etc/bind/named.conf.local // Archivo para búsquedas directas zone "iesromerovargas.net" { type master; file "/etc/bind/iesromerovargas.db"; }; // Archivo para búsquedas inversas zone "2.168.192.in addr.arpa" { type master; file "/etc/bind/192.rev"; };
Configuración DNS maestro Evidentemente será necesario crear los archivos iesromerovargas.db y 192.rev que especificarán la asociación entre nombres y direcciones IP de nuestra red en un sentido y en otro respectivamente.
Configuración DNS maestro Archivo de zona de búsqueda directa Supuesto: Dominio: iesromerovargas.net Equipos: asi201 a asi215 IPs: 192.168.2.1-15 Servidor Web Servidor de correo electrónico Servidor DNS
; Archivo /etc/bind/iesromerovargas.db ; ; BIND data file for iesromerovargas.net ; @ IN SOA iesromerovargas.net. root.iesromerovargas.net. ( 1 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Default TTL asi101 IN A 192.168.2.1 asi102 IN A 192.168.2.2 asi103 IN A 192.168.2.3 asi104 IN A 192.168.2.4 asi105 IN A 192.168.2.5 asi106 IN A 192.168.2.6 asi107 IN A 192.168.2.7 asi108 IN A 192.168.2.8 asi109 IN A 192.168.2.9 asi110 IN A 192.168.2.10 asi111 IN A 192.168.2.11 asi212 IN A 192.168.2.12 asi213 IN A 192.168.2.13 asi214 IN A 192.168.2.14 asi215 IN A 192.168.2.15 www IN A 192.168.2.100 dns IN A 192.168.2.111 mail IN A 192.168.2.111 IN NS dns.iesromerovargas.net. IN MX 10 mail.iesromerovargas.net.
Configuración DNS maestro Las primeras líneas son parámetros de actualización del DNS (número de serie y periodos de actuación). Servidor primario (NS = Name Server) Quien procesa el correo electrónico del dominio (MX = Mail exchange). IPs de los distintos PCs componentes del dominio (A = Address). Ojo con los ;
Configuración DNS maestro Para revisar los archivos disponemos de los comandos que analizan que esté correcta la sintaxis de los mismos: named checkconf named checkzone Veamos ahora el archivo de zona de búsqueda inversa:
; Archivo /etc/bind/192.rev ; ; BIND reverse data file for 192.168.2.0 ; @ IN SOA iesromerovargas.net. root.iesromerovargas.net. ( 1 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Default TTL 100 IN PTR www.iesromerovargas.net. 111 IN PTR dns.iesromerovargas.net. IN NS dns.iesromerovargas.net. 1 IN PTR asi201.iesromerovargas.net. 2 IN PTR asi202.iesromerovargas.net. 3 IN PTR asi203.iesromerovargas.net. 4 IN PTR asi204.iesromerovargas.net. 5 IN PTR asi205.iesromerovargas.net. 6 IN PTR asi206.iesromerovargas.net. 7 IN PTR asi207.iesromerovargas.net. 8 IN PTR asi208.iesromerovargas.net. 9 IN PTR asi209.iesromerovargas.net. 10 IN PTR asi210.iesromerovargas.net. 11 IN PTR asi211.iesromerovargas.net. 12 IN PTR asi212.iesromerovargas.net. 13 IN PTR asi213.iesromerovargas.net. 14 IN PTR asi214.iesromerovargas.net. 15 IN PTR asi215.iesromerovargas.net.
Configuración DNS maestro Una vez configurado nuestro servidor DNS, debemos indicar a nuestro servidor Linux que el servidor DNS es él mismo, lo cual se especifica en el archivo: /etc/resolv.conf Escribimos en él lo siguiente: nameserver 127.0.0.1 search iesromerovargas.com
Configuración DNS maestro En el resto de PCs de la red, indicaremos que el servidor DNS es 192.168.0.112 en el fichero /etc/resolv.conf: nameserver 192.168.0.112 Y a poner en marcha nuestro servidor de nombres ejecutando: /etc/init.d/bind start
Configuración DNS esclavo Ú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.
Configuración DNS esclavo Ejemplo DNS maestro: dns.iesromerovargas.net (IP 192.168.2.111) DNS esclavo: dns2.iesromerovargas.net En zona de búsqueda directa En el archivo 'iesromerovargas.db' de zona de búsqueda directa añadiremos la línea: IN NS dns.iesromerovargas.net. IN NS dns2.iesromerovargas.net. //añadida
Configuración DNS esclavo Ejemplo En zona de búsqueda inversa En el archivo '192.rev' de zona de búsqueda directa añadiremos la línea: IN NS dns.iesromerovargas.net. IN NS dns2.iesromerovargas.net. //añadida 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...
Configuración DNS esclavo // Añadir en /etc/bind/named.conf.local del esclavo zone "iesromerovargas.net" { type slave; file "/etc/bind/iesromerovargas.db"; masters { 192.168.2.111; }; }; zone "0.168.192.in-addr.arpa" { type slave; file "/etc/bind/192.rev"; masters { 192.168.2.111; }; };
Configuración DNS esclavo En el archivo /etc/bind/named.conf.local del servidor DNS maestro podemos utilizar, para mantener los DNS sincronizados, also notify. Con also notify pasamos los cambios de zonas en el maestro al esclavo...
Configuración DNS esclavo // Archivo /etc/bind/named.conf.local del maestro zone "iesromerovargas.net" { type master; file "/etc/bind/iesromerovargas.db"; also notify {<ip_del_esclavo>;}; }; zone "0.168.192.in addr.arpa" { type master; file "/etc/bind/192.rev"; also notify {<ip_del_esclavo>;}; };
Configuración DNS esclavo Ahora dispondremos de un servidor DNS esclavo para satisfacer las peticiones DNS al igual que el maestro. Es interesante Si el número de peticiones es muy elevado y se requiere distribuir la carga entre los dos servidores 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.
Configuración DNS esclavo Hemos de recordar que si hacemos cambios en los archivos /etc/bind/iesromerovargas.db y /etc/bind/192.rev del maestro, debemos actualizar el parámetro serial (incrementar en una unidad) para que los dns dependientes del maestro sepan que ha cambiado y se sincronicen.
Arranque y parada manual del servidor DNS Arranque del servidor DNS /etc/init.d/bind start Parada del servidor DNS /etc/init.d/bind stop Reinicio del servidor DNS /etc/init.d/bind restart