Saltar la navegación

1.11.5.- Configuración como DNS esclavo.

Citas para pensar

"Hace mal quien lo secundario hace principal."Proverbio español

En GNU/Linux Debian 6.0 (Squeeze) puedes configurar un servidor DNS BIND como esclavo modificando el archivo /etc/bind/named.conf.local realizando el siguiente procedimiento:

  1. Configuras el fichero /etc/bind/named.conf.local del servidor esclavo para indicar: qué zonas son servidas por el servidor, qué zonas son servidas como slave, la IP del servidor master -de donde se transferirá la zona cuando se reciba una notificación de cambio, o se supere el TTL de la zona- y el fichero donde se guarda el contenido de la zona. Por ejemplo:
    //zonas creadas tipo esclavo
    zone "ejemplo.com" {
            type slave;
            masters {
                    192.168.200.250;
            };
            file "/var/lib/bind/slave/db.ejemplo.com.hosts";
    };
    

    En este ejemplo, el servidor sirve el dominio "ejemplo.com" como slave, y la zona se guarda en el fichero /var/lib/bind/slave/db.ejemplo.com.hosts.

    Habrá una entrada de este tipo por cada zona servida.

Normalmente los ficheros de zona están situados en la ruta /var/lib/bind. Entonces, para una mayor comprensión y entendimiento, y para facilidad de uso en posteriores momentos, estaría bien que crearas los directorios master y slave dentro de esa ruta. Así, los ficheros con zonas maestras se pueden encontrar en /var/lib/bind/master/db.*.hosts y los ficheros con zonas esclavas se pueden encontrar en /var/lib/bind/slave/db.*.hosts.

  1. En el servidor maestro configuras la sección correspondiente al servidor master en el fichero /etc/bind/named.conf.local:
    1. Para indicar qué servidores tienen permitido la transferencia de los ficheros de zona, mediante la directiva allow-transfer. Por ejemplo:
      allow-transfer {192.168.200.100;192.168.210.100;10.10.42.41;10.10.42.42;};

      En este listado deberán estar incluidos todos los servidores slave que tengan configurado a éste como servidor master, y adicionalmente alguna IP que debiera tenerlo permitido por alguna razón.

    2. Mediante la directiva notify-yes se consigue enviar automáticamente una notificación de cambio de zona del maestro, cuando ésta se produce, a los servidores DNS especificados en la zona mediante el registro de recurso NS.

      Adicionalmente, se puede enviar una notificación de cambio de zona a servidores esclavos que no aparecen en la misma, mediante la directiva also-notify:

      also-notify {192.168.200.100;10.10.42.41;};

      Por ejemplo, una zona tipo master con las directivas anteriores podría ser la siguiente:

      //zonas creadas tipo master
      zone "ejemplo.com" {
              type master;
              file "/var/lib/bind/master/db.ejemplo.com.hosts";
              allow-transfer {
                      192.168.200.100;
                      192.168.210.100;
                      10.10.42.41;
                      10.10.42.42;
                      };
              notify yes;
              also-notify {
                      192.168.200.100;
                      10.10.42.41;
                      };
      };
Mediante la directiva also-notify se mantienen los servidores DNS sincronizados. Así, el servidor DNS esclavo podrá satisfacer las peticiones DNS al igual que lo haría el maestro. Esto implica que se garantiza la disponibilidad del servicio DNS puesto que aunque el servidor maestro deje de funcionar, el servidor esclavo podrá seguir ofreciendo el servicio. Además, en caso de recibir múltiples conexiones concurrentes, siendo, por tanto, el número de peticiones muy elevado, la carga se distribuye entre los servidores.