20.3. Inicio del servidor de nombres BIND

En un sistema SUSE Linux, el servidor de nombres BIND (Berkeley Internet Name Domain, Dominio de nombres de Internet de Berkeley) viene configurado previamente, de manera que puede iniciarse justo después de la instalación sin ningún problema. Si ya hay una conexión de Internet y ha introducido 127.0.0.1 como la dirección del servidor de nombres para localhost en /etc/resolv.conf, por lo general ya tendrá una resolución de nombres en funcionamiento sin tener que saber el DNS del proveedor. BIND lleva a cabo una resolución de nombres mediante el servidor de nombres raíz, un proceso mucho más lento. Por norma general, debería introducirse el DNS del proveedor con su dirección IP en el archivo de configuración /etc/named.conf en la línea forwarders para asegurar una resolución de nombres efectiva y segura. Si todo esto funciona hasta ahora, el servidor de nombres se ejecutará como un servidor de nombres sólo para almacenamiento en caché. Únicamente cuando configure sus propias zonas, se convertirá en un DNS adecuado. En la documentación de /usr/share/doc/packages/bind/sample-config. se muestra un ejemplo sencillo de todo lo explicado hasta ahora.

[Tip]Adaptación automática de la información del servidor de nombres

Dependiendo del tipo de conexión a Internet o a la red, la información del servidor de nombres puede adaptarse automáticamente a las condiciones actuales. Para hacerlo, defina la variable MODIFY_NAMED_CONF_DYNAMICALLY del archivo /etc/sysconfig/network/config en yes (sí).

Sin embargo, no configure ningún dominio oficial hasta que la institución responsable asigne uno. Aunque cuente con su propio dominio y éste esté gestionado por el proveedor, es mejor no utilizarlo, ya que BIND no remitiría de todas formas las peticiones para este dominio. Por ejemplo, no se podría acceder al servidor Web del proveedor para este dominio.

Para iniciar el servidor de nombres, introduzca el comando rcnamed start como usuario Root. Si a la derecha aparece “done” (finalizado) en verde, querrá decir que "named", que es como se denomina al proceso del servidor de nombres, se ha iniciado correctamente. Compruebe el servidor de nombres inmediatamente en el sistema local con los programas host o dig, que deberían devolver localhost como servidor por defecto con la dirección 127.0.0.1. Si este no es el caso, /etc/resolv.conf contiene probablemente una entrada del servidor de nombres incorrecta o el archivo no existe. Para la primera prueba, introduzca host 127.0.0.1, que debería funcionar siempre. Si aparece un mensaje de error, utilice rcnamed status para ver si el servidor se está ejecutando realmente. Si el servidor de nombres no se inicia o se comporta de manera inesperada, normalmente podrá encontrar la causa en el archivo de registro /var/log/messages.

Para usar el servidor de nombres del proveedor, o uno que ya se esté ejecutando en la red como remitente, introduzca la dirección o direcciones IP correspondientes en la sección options en la línea forwarders. Las direcciones incluidas en el Ejemplo 20.1, “Remisión de opciones en named.conf” son sólo ejemplos. Ajuste estas entradas a su propia configuración.

Ejemplo 20.1. Remisión de opciones en named.conf

options { 
        directory "/var/lib/named";
        forwarders { 10.11.12.13; 10.11.12.14; };
        listen-on { 127.0.0.1; 192.168.0.99; };
        allow-query { 127/8; 192.168.0/24; };
        notify no;
        };

La entrada options está seguida de las entradas para la zona, localhost y 0.0.127.in-addr.arpa. La entrada type hint situaba bajo el “.” siempre debería estar presente. Los archivos correspondientes no tendrían que modificarse y deberían funcionar tal y como estén. Asegúrese de que cada entrada está cerrada con un punto y coma “;” y que las llaves ({ }) se encuentran en los lugares correctos. Después de cambiar el archivo de configuración /etc/named.conf o los archivos de zona, indique a BIND que vuelva a leerlos con rcnamed reload. Puede conseguir lo mismo deteniendo y reiniciando el servidor de nombres con rcnamed restart. Detenga el servidor en cualquier momento introduciendo rcnamed stop.