Servicio de resolución de nombres de dominio (DNS)

Introducción a DNS

BIND [4] es el servidor DNS de facto en Internet, originalmente creado en la Universidad de California, Berkeley y en la actualidad mantenido por el Internet Systems Consortium. La versión BIND 9, reescrita desde cero para soportar las últimas funcionalidades del protocolo DNS, es la usada por el módulo de DNS de Zentyal.

[4]http://www.isc.org/software/bind

Configuración de un servidor DNS caché con Zentyal

El módulo de servidor de DNS de Zentyal siempre funciona como servidor DNS caché para las redes marcadas como internas en Zentyal, así que si solamente queremos que nuestro servidor realice caché de las consultas DNS, bastará con habilitar el módulo.

En ocasiones, puede que este servidor DNS caché tenga que ser consultado desde redes internas no configuradas directamente en Zentyal. Aunque este caso es bastante excepcional, puede darse en redes con rutas hacia segmentos internos o redes VPN.

Zentyal permite configurar el servidor DNS para que acepte consultas de estas subredes a través de un fichero de configuración. Podremos añadir estas redes en el fichero /etc/ebox/80dns.conf mediante la opción intnets=:

# Internal networks allowed to do recursive queries
# to Zentyal DNS caching server. Localnetworks are already
# allowed and this settings is intended to allow networks
# reachable through static routes.
# Example: intnets = 192.168.99.0/24,192.168.98.0/24
intnets =

Y tras reiniciar el módulo DNS se aplicarán los cambios.

El servidor DNS caché de Zentyal consultará directamente a los servidores DNS raíz a qué servidor autoritario tiene que preguntar la resolución de cada petición DNS y las almacenará localmente durante el período de tiempo que marque el campo TTL. Mediante esta funcionalidad reduciremos el tiempo necesario para iniciar cada conexión de red, aumentando la sensación de velocidad de los usuarios y reduciendo el consumo real de tráfico hacia Internet.

Para que el servidor Zentyal utilice su propio servidor DNS caché, que acabamos de configurar, tendremos que ir a Red ‣ DNS y configurar 127.0.0.1 como primer servidor DNS.

_images/zentyal-dnscache.png

DNS configurado como caché local

El dominio de búsqueda es básicamente una cadena que se añadirá a la búsqueda en caso de que sea imposible resolver con la cadena de texto que el usuario ha pedido. El dominio de búsqueda se configura en los clientes, pero se puede servir automáticamente por DHCP, de tal manera que cuando nuestros clientes reciban la configuración inicial de red, podrán adquirir también este dato. Por ejemplo nuestro dominio de búsqueda podría ser foocorp.com, el usuario intentaría acceder a la máquina example; al no estar presente en sus hosts conocidos, la resolución de este nombre fallaría, por lo que su sistema operativo probaría automáticamente con example.foocorp.com, resultando en una resolución de nombre con éxito en este segundo caso.

En Red ‣ Herramientas de diagnóstico disponemos de la herramienta de Resolución de Nombres de Dominio, que mediante dig nos muestra los detalles de una consulta DNS al servidor que tengamos configurado en Red ‣ DNS.

_images/zentyal-dig.png

Resolución de un nombre de dominio usando el DNS caché local

Configuración de un servidor DNS autoritario con Zentyal

Además de DNS caché, Zentyal puede funcionar como servidor DNS autoritario para un listado de dominios que configuremos. Como servidor autoritario responderá a consultas sobre estos dominios realizadas tanto desde redes internas como desde redes externas, para que no solamente los clientes locales, sino cualquiera pueda resolver estos dominios configurados. Como servidor caché responderá a consultas sobre cualquier dominio solamente desde redes internas.

La configuración de este módulo se realiza a través del menú DNS, dónde podremos añadir cuantos dominios y subdominios deseemos.

_images/zentyal-dns_domains.png

Lista de dominios

Para configurar un nuevo dominio, desplegaremos el formulario pulsando Añadir nuevo. Desde éste se configurará el Nombre del dominio y opcionalmente la Dirección IP a la que hará referencia el dominio.

_images/zentyal-dns-add-domain.png

Añadiendo un nuevo dominio

Una vez creado un dominio, podemos definir cuantos nombres queramos dentro de él mediante la tabla Nombres. Para cada uno de estos nombres Zentyal configurará automáticamente la resolución inversa. Además para cada uno de los nombres podremos definir cuantos Alias queramos.

Normalmente los nombres apuntan a la máquina dónde está funcionando el servicio y los alias a los servicios alojados en ella. Por ejemplo, la máquina amy.zentyal.com tiene los alias smtp.zentyal.com y mail.zentyal.com para los servicios de mail y la máquina rick.zentyal.com tiene los alias www.zentyal.com o store.zentyal.com entre otros, para los servicios web.

_images/zentyal-dnsalias.png

Añadiendo un nuevo alias

Adicionalmente, podemos definir los servidores de correo encargados de recibir los mensajes para cada dominio. Dentro de Intercambiadores de correo elegiremos un servidor del listado definido en Nombres o uno externo. Mediante la Preferencia, determinamos a cuál de estos servidores le intentarán entregar los mensajes otros servidores. Si el de más preferencia falla lo reintentarán con el siguiente.

_images/zentyal_dns_addmx.png

Añadiendo un nuevo intercambiador de correo

Además también podemos configurar los registros NS para cada dominio o subdominio mediante la tabla Servidores de nombres.

_images/zentyal_adddns.png

Añadiendo un nuevo servidor de nombres

Hay que mencionar que cuando se añade un nuevo dominio, se puede apreciar la presencia de un campo llamado Dinámico con valor falso. Un dominio se establece como dinámico cuando es actualizado automáticamente por un proceso externo sin reiniciar el servidor. Si un dominio se establece como dinámico no puede configurarse a través del interfaz. En Zentyal los dominios dinámicos son los actualizados automáticamente por DHCP con los nombres de las máquinas a las que ha asignado una dirección IP, véase Actualizaciones dinámicas.