jueves, 8 de mayo de 2008

Servidor DNS Esclavo

Un servidor 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.





Consulta a un DNS esclavo



Configuración DNS esclavo

Si deseamos configurar nuestro servidor DNS para qué actúe como esclavo de un servidor DNS maestro, en la configuración ú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.

Ejemplo: supongamos que el nombre del DNS maestro es dns.medellin.com (IP 192.168.0.112) y que el nombre del DNS esclavo es dns2.medellin.com.
En el archivo 'medellin.db' de zona de búsqueda directa añadiremos la línea del segundo dns justo debajo de donde está la del primero:

// Añadir línea en /etc/bind/medellin.db del maestro.... IN NS dns.medellin.com. IN NS dns2.medellin.com. // Nueva línea....
De esta forma indicaremos que existen más servidores DNS para dicha zona.

Lo mismo haremos en el archivo '192.rev' de la zona inversa:
// Añadir línea en /etc/bind/192.rev del maestro.... IN NS dns.medellin.com. IN NS dns2.medellin.com. // Nueva línea....

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 "medellin.com" { type slave; file "/etc/bind/medellin.db"; masters { 192.168.0.112; }; }; zone "0.168.192.in-addr.arpa" { type slave; file "/etc/bind/192.rev"; masters { 192.168.0.112; }; };

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 en el maestro al esclavo:

// Archivo /etc/bind/named.conf.local del maestro zone "medellin.com" { type master; file "/etc/bind/medellin.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;} };

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.

Cada vez que hagamos un cambio en los archivos /etc/bind/medellin.db y /etc/bind/192.rev del maestro, debemos 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.


No hay comentarios: