Índice/Index

viernes, 10 de agosto de 2012

Configuración de un DNS IPv6 local en Linux con Bind

Hoy escribiré sobre como crear un DNS dentro de nuestra LAN utilizando IPv6.

Como en un tema anterior ya escribí sobre algo de teoría del DNS y Bind9 y su respectiva instalación pasaremos directamente a la configuración de los archivos para un DNS IPv6. Si tienen dudas de teoría consulten el post anterior aquí.

Para Ubuntu y similares

Utilizaremos las siguientes IPv6 de sitio de ejemplo:

  • Servidor DNS - fec0::a987:200:27ff:fe59:bfd6
  • Cliente - fec0::a987:21f:d0ff:fe45:4e76 para el cliente
  • Con una máscara de red de 64 bits 
  • Por lo que nuestra dirección IPv6 de red es fec0:0:0:a987::/64

Y los siguientes dominios de ejemplo:

  • Servidor - rukia.com y también responderá por www.rukia.com
  • Cliente - goku.rukia.com

Los archivos a configurar se encuentran en el directorio /etc/bind

Primero editamos este archivo:


Por default el archivo contiene lo siguiente:


En este archivo se declaran las zonas.

Para agregar nuestra zona agregamos estas líneas:


Ahora agregamos la zona inversa de nuestra red:


Noten que la dirección de red se escribe de derecha a izquierda.
Nuestra dirección de red IPv6 escrita completamente es:

f.e.c.0.0.0.0.0.0.0.0.0.a.9.8.7 (fec0:0:0:a987)

Recuerden que el nombre de los archivos de zona puede ser el que quieran, en este ejemplo para el archivo de zona se está utilizando db.rukiav6 y para la zona inversa db.rukiaRevv6.

Al final nuestro archivo named.conf.default-zones se ve de esta forma:


Ahora antes de continuar revisemos que nuestro archivo de zonas y el de las opciones está incluido dentro de named.conf, entonces revisemos este archivo:


Debe de conener lo siguiente:


Ahora editemos nuestro archivo de zona (/etc/bind/db.rukiav6):


Recuerden que para IPv6 se utiliza el registro AAAA.

Ahora a editar el archivo de zona inversa (/etc/bind/db.rukiaRevv6):


Noten que las direcciones de host se escriben de derecha a izquierda.

Nuestra dirección de host IPv6 escrita completamente para el servidor es:

0.2.0.0.2.7.f.f.f.e.5.9.b.f.d.6 (0200:27ff:fe59:bfd6)

Y la dirección de host IPv6 escrita completamente para el cliente es: 

0.2.1.f.d.0.f.f.f.e.4.5.4.e.7.6 (021f:d0ff:fe45:4e76)

Ahora sólo falta el archivo named.conf.options, pero la configuración que viene de default para Ubuntu es suficiente. Sólo si tenemos un error que dice que el servidor rechaza las conexiones al tratar de resolver dominios desde el cliente debemos revisar que el archivo incluya estas líneas:


Para iniciar el servicio ejecutamos este comando:


Y listo, ya tenemos un DNS IPv6.


Configuración para Fedora y similares

Utilizaremos las siguientes IPv6 de sitio de ejemplo:

  • Servidor DNS - fec0::a987:200:27ff:fe59:bfd6
  • Cliente - fec0::a987:21f:d0ff:fe45:4e76 para el cliente
  • Con una máscara de red de 64 bits 
  • Por lo que nuestra dirección IPv6 de red es fec0:0:0:a987::/64

Y los siguientes dominios de ejemplo:

  • Servidor - rukia.com y también responderá por www.rukia.com
  • Cliente - goku.rukia.com

El primer archivo a editar es:


En este archivo se declaran las opciones y archivos de zona, por default el archivo contiene lo siguiente:



Primero editemos las opciones, las que nos interesan son:

  • listen-on-v6
  • directory
  • allow-query
  • recursion

Así que la sección de opciones debe tener lo siguiente:


Ahora pasemos a agregar la zona y zona inversa al archivo.



Como agregar la zona:


Como agregar la zona inversa:


Noten que la dirección de red se escribe de derecha a izquierda.
Nuestra dirección de red IPv6 escrita completamente es:

f.e.c.0.0.0.0.0.0.0.0.0.a.9.8.7 (fec0:0:0:a987)

Recuerden que el nombre de los archivos de zona puede ser el que quieran, en este ejemplo para el archivo de zona se está utilizando named.rukiav6 y para la zona inversa named.rukiaRevv6.

Al final nuestro archivo named.conf se ve de esta forma:


Ahora escribamos los archivos de zona. Por default y para el ejemplo se encuentran en el directorio /var/named.

Archivo de zona (named.rukiav6):


Archivo de zona inversa (named.rukiaRevv6):


Noten que las direcciones de host se escriben de derecha a izquierda.

Nuestra dirección de host IPv6 escrita completamente para el servidor es:

0.2.0.0.2.7.f.f.f.e.5.9.b.f.d.6 (0200:27ff:fe59:bfd6)

Y la dirección de host IPv6 escrita completamente para el cliente es: 


0.2.1.f.d.0.f.f.f.e.4.5.4.e.7.6 (021f:d0ff:fe45:4e76)

Esta es toda la configuración.

Para iniciar el servicio ejecutamos lo siguiente:



Y listo ya tenemos un DNS IPv6.


Configuración del DNS en los clientes

Para establecer el DNS en los clientes sólo hay que agregar la IP del servidor de nombres de dominio o DNS a nuestra configuración de red. Voy a explicar como se haría en modo consola, en modo gráfico es con el editor de conexiones de red en configuración manual para IPv6.

En consola sólo hay que editar el archivo:


Con esto los clientes ya podrán consultar nuestro DNS.


Como comprobar la resolución de nombres de dominio

Se pueden utilizar los comandos nslookup y dig, la diferencia es que dig nos manda un poco más de información.

Sólo que para que funcionen con IPv6, hay que mandar un parámetro extra a estos comandos.

Comprobar con nslookup:


Comprobar con dig:



Y bueno esto es todo para tener un DNS IPv6 rápido dentro de una LAN. Saludos!

2 comentarios:

  1. Buenas Tardes

    Muchas gracias por la idea para la configuración del servidor DNS en IPv6. saludos "Excelente articulo".

    Julio Escalona

    ResponderEliminar