20.5. Archivos de zona

Son necesarios dos tipos de archivos de zona. Uno asigna direcciones IP a nombres de host y el otro hace lo contrario: ofrece un nombre de host para una dirección IP.

[Tip]Uso del punto (.) en los archivos de zona

El punto tiene un significado importante en los archivos de zona. A todos los nombres de host que se indican sin un punto al final, se les añade la zona. Los nombres de host completos especificados con un nombre de dominio completo deben acabar en un punto para evitar que se tenga que añadir de nuevo un dominio. Si el punto falta o está en una posición equivocada puede dar lugar al error más frecuente en la configuración de un servidor de nombres.

El primer caso que vamos a explicar es el archivo de zona world.zone, que es el responsable del dominio world.cosmos. Consulte el Ejemplo 20.6, “Archivo /var/lib/named/world.zone”.

Ejemplo 20.6. Archivo /var/lib/named/world.zone

$TTL 2D
world.cosmos. IN SOA      gateway  root.world.cosmos. (
            2003072441  ; serial
            1D          ; refresh
            2H          ; retry
            1W          ; expiry
            2D )        ; minimum

            IN NS       gateway
            IN MX       10 sun

gateway     IN A        192.168.0.1
            IN A        192.168.1.1
sun         IN A        192.168.0.2
moon        IN A        192.168.0.3
earth       IN A        192.168.1.2
mars        IN A        192.168.1.3
www         IN CNAME    moon
Línea 1:

$TTL define la duración por defecto que debería aplicarse a todas las entradas del archivo. En este ejemplo, las entradas son válidas durante un periodo de dos días (2 D).

Línea 2:

Aquí comienza la parte del registro de control SOA (Inicio de autoridad):

  • En primer lugar figura el nombre del dominio que administrar: world.cosmos. Termina en punto porque, de lo contrario, se añadiría la zona otra vez. Una alternativa sería escribir el símbolo @, en cuyo caso la zona se extraería de la entrada correspondiente en /etc/named.conf.

  • Detrás de IN SOA se encuentra el servidor de nombres que actuará como principal en esta zona. En este caso, el nombre se amplía de gateway a gateway.world.cosmos ya que no termina en punto.

  • A continuación aparece la dirección de correo electrónico de la persona que se encarga de este servidor de nombres. Como el símbolo @ ya tiene un significado especial, se reemplaza por un punto. Por tanto, para root@world.cosmos se debe escribir root.world.cosmos.. Debe incluirse un punto al final para impedir que la zona se añada.

  • El paréntesis de apertura ( incluye todas las líneas que haya en el registro SOA hasta el paréntesis de cierre ).

Línea 3:

El número de serie es un número al azar que debe aumentarse después de cada modificación del archivo. Es necesario para informar a los servidores de nombres secundarios (servidores esclavos) acerca de los cambios. El formato más común para indicarlo es mediante una cifra de 10 dígitos formada por la fecha y el número de orden en la forma AAAAMMDDNN.

Línea 4:

La frecuencia de actualización especifica la frecuencia con la que los servidores de nombres secundarios verifican el número de serie de la zona. En este caso, un día.

Línea 5:

La frecuencia de reintento especifica después de cuánto tiempo el servidor de nombres secundario intenta conectar nuevamente con el servidor primario en caso de error. En este caso son dos horas.

Línea 6:

La hora de caducidad especifica el tiempo transcurrido después del cual el servidor de nombres secundario debe desechar los datos almacenados en caché si no se ha podido restablecer el contacto con el servidor primario. En este caso es una semana.

Línea 7:

La última entrada del registro SOA especifica el tiempo de vida (TTL) de almacenamiento en caché negativo; es decir, el tiempo que los resultados de las consultas DNS sin resolver de otros servidores pueden almacenarse en caché.

Línea 9:

IN NS especifica el servidor de nombres responsable de este dominio. En este caso gateway se vuelve a convertir en gateway.world.cosmos porque no termina en punto. Puede haber varias líneas de este tipo, una para el servidor de nombres primario y otra para cada servidor de nombres secundario. Si la variable notify no está definida en no en /etc/named.conf, se informará a todos los servidores de nombres aquí mencionados de los cambios en los datos de zona.

Línea 10:

El registro MX indica el servidor de correo que acepta, procesa y remite los mensajes de correo electrónico al dominio world.cosmos. En este ejemplo, se trata del host sun.world.cosmos. El número situado delante del nombre del host se corresponde con el valor de preferencia. Si existen varias entradas MX, primero se utiliza el servidor de correo con el valor de preferencia más bajo y, si la entrega del correo a este servidor no se produce, se hará un intento con el valor inmediatamente superior.

Líneas 12 a 17:

Se corresponden con los registros de direcciones reales en los que una o varias direcciones IP se asignan a nombres de host. Todos los nombres aparecen sin un punto porque no incluyen el dominio, de tal forma que world.cosmos se añadirá a todos ellos. Las dos direcciones IP se asignan al host gateway porque cuenta con dos tarjetas de red. Allí donde la dirección del host es de tipo tradicional (IPv4), el registro aparece marcado con una A. Si la dirección es una dirección IPv6, la entrada aparece marcada con A6. El testigo anterior para las direcciones IPv6 era AAAA, que ahora está obsoleto.

[Note]Sintaxis A6

Los registros A6 tienen una sintaxis ligeramente distinta a AAAA. Debido a que existe la posibilidad de fragmentación, es necesario ofrecer información acerca de los bits que faltan antes de la dirección. Debe ofrecer esta información incluso si desea usar una dirección completamente desfragmentada. En el caso del registro AAAA antiguo, con la sintaxis siguiente:

 pluto IN            AAAA 2345:00C1:CA11:0001:1234:5678:9ABC:DEF0
 pluto IN            AAAA 2345:00D2:DA11:0001:1234:5678:9ABC:DEF0

Tiene que añadir información acerca de los bits que faltan cuando lo haga en formato A6. Debido a que el ejemplo de arriba está completo (no falta ningún bit), el formato A6 de este registro será:

 pluto  IN            AAAA 0 2345:00C1:CA11:0001:1234:5678:9ABC:DEF0
 pluto  IN            AAAA 0 2345:00D2:DA11:0001:1234:5678:9ABC:DEF0

No use direcciones IPv4 con la asignación de IPv6. Si un host cuenta con una dirección IPv4, utilizará un registro A no uno A6.

Línea 18:

Se puede utilizar el alias www para acceder a mond (CNAME significa nombre canónico).

Para la resolución inversa de direcciones IP en nombres de host, se utiliza el seudodominio in-addr.arpa. Se añadirá al final de la parte correspondiente a la red de la dirección escrita en orden inverso. De tal forma que 192.168.1 se convierte en 1.168.192.in-addr.arpa. Consulte el Ejemplo 20.7, “Resolución inversa”.

Ejemplo 20.7. Resolución inversa

    

$TTL 2D
1.168.192.in-addr.arpa. IN SOA gateway.world.cosmos. root.world.cosmos. (
                        2003072441      ; serial
                        1D              ; refresh
                        2H              ; retry
                        1W              ; expiry
                        2D )            ; minimum

                        IN NS           gateway.world.cosmos.

1                       IN PTR          gateway.world.cosmos.
2                       IN PTR          earth.world.cosmos.
3                       IN PTR          mars.world.cosmos.
Línea 1:

$TTL define el tiempo de vida (TTL) estándar que se aplica a todas las entradas.

Línea 2:

El archivo de configuración debería activar la resolución inversa para la red 192.168.1.0. Puesto que la zona se denomina 1.168.192.in-addr.arpa, no deberían añadirse a los nombres de host. Por lo tanto, todos estos se introducirán con la forma completa; es decir, con el dominio y el punto al final. Las entradas que queden se corresponderán con las descritas en el ejemplo anterior de world.cosmos.

Líneas 3 a 7:

Consulte el ejemplo anterior de world.cosmos.

Línea 9:

Esta línea indica el servidor de nombres responsable de esta zona. No obstante, en este caso el nombre se introduce con su nombre completo, o sea, con el dominio y el punto al final.

Líneas 11 a 13:

Hay registros de puntero que llevan a las direcciones IP de los hosts correspondientes. Al principio de la línea sólo se introduce la última parte de la dirección IP, sin el punto al final. Al añadir la zona al final (sin .in-addr.arpa) dará como resultado la dirección IP completa en orden inverso.

Por lo general, las transferencias de zonas entre versiones distintas de BIND no deberían representar ningún problema.