Capítulo 12. Berkeley Internet Name Domain (BIND)

En la mayoría de las redes modernas, incluyendo la Internet, los usuarios localizan otras máquinas por su nombre. Esto libera a los usuarios de la pesada tarea de recordar la dirección numérica de los recursos de red. La forma más efectiva de configurar una red para permitir tales conexiones basadas en nombres es configurando un Domain Name Service (DNS) o servidor de nombres, el cual resuelve los nombres de hosts en la red a direcciones numéricas y viceversa.

Este capítulo revisa el servidor de nombres incluido con Red Hat Enterprise Linux, el servidor DNS Berkeley Internet Name Domain (BIND), con énfasis en la estructura de sus archivos de configuración y en cómo deberían ser administrados localmente y remótamente.

Para instrucciones sobre la configuración de BIND usando la Herramienta de configuración del Servicio de Nombres de Dominio (redhat-config-bind) gráfica, consulte el capítulo llamado Configuración de BIND en el Manual de administración del sistema de Red Hat Enterprise Linux.

AvisoAviso
 

Si utiliza la Herramienta de configuración del Servicio de Nombres de Dominio, no edite manualmente ningún archivo de configuración BIND pues todos los cambios serán sobreescritos la próxima vez que utilice la Herramienta de configuración del Servicio de Nombres de Dominio.

12.1. Introducción a DNS

Cuando hosts en una red se conectan a través de sus nombres de máquinas, también llamado nombre de dominio completamente cualificado (FQDN), DNS es usado para asociar los nombres de las máquinas a las direcciones IP para el host.

El uso de nombres de un dominio completamente cualificado y DNS tiene ventajas para los administradores del sistema, éstos dan a los administradores flexibilidad a la hora de cambiar las direcciones IP para máquinas individuales sin realizar preguntas sobre el nombre en las máquinas. Por otro lado, los administradóres pueden revolver cuáles máquinas manejan consultas basadas en nombre .

DNS es normalmente implementado usando servidores centralizados que autorizan algunos dominios y se refieren a otros servidores DNS para otros dominios.

Cuando un host cliente solicita información desde un servidor de nombres, usualmente se conecta al puerto 53. El nombre de servidor luego intenta resolver el FQDN basado en su librería de resolución, la cual puede contener información de autorización sobre el host solicitado o datos en caché de una consulta anterior. Si el nombre del servidor no tiene la respuesta en su librería de resolución, consultará otros nombres de servidores, llamados servidores de nombres de root, para determinar cuáles servidores de nombres son fidedignos para el FQDN en cuestión. Luego, con esa información, consulta los servidores de nombres autoritarios para determinar la dirección IP del host solicitado. Si se está realizando una búsqueda inversa, se usa el mismo procedimiento, excepto que la consulta es realizada con una dirección IP desconocida en vez de un nombre.

12.1.1. Zonas de servidores de nombres

En Internet, el FQDN de un host se puede dividir en diversas secciones. Estas secciones son organizadas en orden jerárquico (como en un árbol), con un tronco, ramas principales, ramas secundarias, etc. Por ejemplo, considere el siguiente FQDN:

bob.sales.example.com

Cuando miramos cómo un FQDN es resuelto para encontrar la dirección IP que se relaciona a un sistema particular, lea el nombre de derecha a izquierda, con cada nivel de la jerarquía dividido por puntos (.). En nuestro ejemplo, com define el dominio de nivel superior para este FQDN. El nombre example es un subdominio bajo com, mientras que sales es un subdominio bajo example. El nombre más hacia la izquierda, bob, identifica el nombre de una máquina específica.

Aparte del nombre del dominio, cada sección se llama zona, la cual define un espacio de nombre particular. Un espacio de nombre, controla los nombres de los subdominios de la izquierda. Aunque en el ejemplo solamente hay dos subdominios, un FQDN tiene que contener al menos un subdominio pero puede incluir muchos más; depende de la organización del espacio de nombres elegido.

Las zonas son definidas en servidores de nombres autorizados a través del uso de archivos de zona, lo cual describen el espacio de nombres de esa zona, los servidores de correo a ser utilizados por un dominio particular o sub-dominio, y más. Los archivos de zona son almancenados en servidores de nombres primarios (también llamados servidores de nombres maestro), los cuales son verdaderamente autorizados y donde los cambios se hacen a los archivos, y servidores de nombres secundarios (también llamados servidores de nombres esclavos), que reciben sus archivos de zona desde los servidores de nombres primarios. Cualquier servidor de nombres puede ser un servidor primario y secundario para zonas diferentes al mismo tiempo, y también pueden ser considerados autoritarios para múltiples zonas. Todo depende de cómo se configure el servidor de nombres.

12.1.2. Tipos de servidores de nombres

Existen cuatro tipos de configuración de servidores de nombres primarios:

  • maestro — Almacena los registros de las zonas originales y de autoridad para un cierto espacio de nombres y responde a consultas sobre el espacio de nombres de otros servidores de nombres.

  • esclavo — Responde a las peticiones que provienen de otros servidores de nombres y que se refieren a los espacios de nombres sobre los que tiene autoridad. Sin embargo, los servidores esclavos obtienen la información de sus espacios de nombres desde los servidores maestros.

  • sólo caché — ofrece servicios de resolución de nombres a direcciones IP pero no tiene ninguna autoridad sobre ninguna zona. Las respuestas en general se introducen en un caché por un período de tiempo fijo, la cual es especificada por el registro de zona recuperado.

  • reenvío — Reenvía las peticiones a una lista específica de servidores de nombres para la resolución de nombres. Si ninguno de los servidores de nombres especificados puede resolver los nombres, la resolución falla.

Un servidor de nombres puede ser uno o más de estos tipos. Por ejemplo, un servidor de nombres puede ser un maestro para algunas zonas, un esclavo para otras y sólo ofrecer el reenvío de resoluciones para otras.

12.1.3. BIND como un servidor de nombres

BIND realiza la resolución de nombres a través del demonio /usr/sbin/named. BIND también incluye una utilidad de administración llamada /usr/sbin/rndc. Se puede encontrar más información sobre rndc en Sección 12.4.

BIND almacena sus archivos de configuración en los siguientes lugares:

  • /etc/named.conf — El archivo de configuración para el demonio named.

  • directorio /var/named/ — El directorio de trabajo named el cual almacena zonas, estadísticas y archivos caché.

Las próximas secciones revisan los archivos de configuración de BIND en más detalle.