Lo primero será instalar el paquete bind9
sudo apt-get install bind9
Un paquete importante para poder realizar troubleshooting de DNS es el paquete dnsutils. En la mayoría de veces, con la instalación anterior va incluído, pero sino…
sudo apt-get install dnsutils
a. Configuración de un Caching Nameserver
Es la configuración más sencilla y comúnmente utilizada en PYMES que no alberguen su propio datacenter ya que el servidor en realidad sólo hace cacheo de otro servidor DNS.
Todo lo que se necesita es saber la IP del servidor DNS del ISP.
Para configurar, necesitamos editar el archivo /etc/bind/named.conf.options
sudo nano /etc/bind/named.conf.options
Dentro del archivo, hay una parte donde se encuentra pero esta “comentareado” (o sea, inicia con un “;” ó «#» y ésta línea es ignorada). Hacer las modificaciones necesarias para que quede así:
forwarders {
8.8.8.8;
};
Para que surta efecto, se debe reiniciar el servicio dns, o sea, reiniciar el demonio bind9.
sudo service bind9 restart
Para probar el servicio debemos hacer uso del comando dig ó nslookup, entonces haremos un par de pruebas. digitamos:
dig www.lapagina.com.sv
Debería mostrar algo similar a esto:
Podemos observar 2 registros DNS: CNAME (llamado Alias también) y registro A (Host)
b. DNS Primary Master
Ahora, configuraremos bind9 como el principal servidor DNS (Primary Master) para el dominio minombre.net
Forward Zone (o Zona directa)
Para añadir una zona DNS en bind9 y así volverlo como el servidor primario, lo primero que debemos hacer es entrar y editar el archivo /etc/bind/named.conf.local
sudo nano /etc/bind/named.conf.local
Deberá de agregar lo siguiente:
zone «minombre.net» {
type master;
file «/etc/bind/db.minombre.net»;
};
Ahora, utilizaremos un template para crear el archivo de configuración. Copiar el archivo /etc/bind/db.local a /etc/bind/db.minombre.net
sudo cp /etc/bind/db.local /etc/bind/db.minombre.net
Editamos dicho archivo (db.minombre.net)…
sudo nano /etc/bind/db.minombre.net
… y debemos tener una configuración similar a esta (parametrizar de esa forma):
;
; BIND data file for minombre.net
;
$TTL 604800
@ IN SOA minombre.net. root.minombre.net. (
2014021701 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
IN A 192.168.1.10 ; La IP real del servidor Ubuntu!
;
@ IN NS ns.minombre.net.
@ IN A 192.168.1.10
@ IN AAAA ::1
ns IN A 192.168.1.10
Una vez terminada la configuración y después de habernos asegurado de que los detalles son correctos, debemos reiniciar el servicio dns:
sudo service bind9 restart
Reverse Zone File
Ahora que el servidor puede resolver nombres a direcciones IP, es importante crear una Reverse zone para que pueda resolver direcciones IP a nombres.
Para tal efecto debemos configurar nuevamente el archivo named.conf.local que ya se modificó antes:
sudo /etc/bind/named.conf.local
Se deberá de añadir lo siguiente a la configuración ya existente:
zone «1.168.192.in-addr.arpa» {
type master;
file «/etc/bind/db.192»;
};
Se debe reemplazar 1.168.192 con los primeros 3 octetos de la red en la que esta el servidor DNS y eso implica que el próximo archivo tenga un nombre correcto. En nuestro caso, dado que se esta usando ésa red, se deberá de ingresar exactamente como esta en éste ejemplo.
Ahora debemos crear el archivo db.192
Básicamente, copiaremos el archivo /etc/bind/db.127 en /etc/bind/db.192
sudo cp /etc/bind/db.127 /etc/bind/db.192
A continuación, editamos ese archivo casi con las mismas opciones que el
/etc/bind/db.minombre.net:
;
; BIND reverse data file for local 192.168.1.XXX net
;
$TTL 604800@ IN SOA ns.minombre.net. root.minombre.net. (
2014021701 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns.
10 IN PTR ns.minombre.net.
Por cada registro que se tenga en db.minombre.net, debemos crear un registro PTR en este archivo.
Ahora debemos reiniciar el servidor DNS
sudo service bind9 restart
Resumen
Ahora sí. Se debe de modificar /etc/bind/db.minombre.net para cuando se quiera agregar un registro DNS en la zona directa. O sea, sirve para poder hacerle consultas al DNS sobre qué IP tiene un nombre de host de dominio específico.
Luego, se debe debe de modificar el archivo /etc/bind/db.192 para cuando se quiera agregar un registro PTR en la zona reversa. O sea, sirve para poder hacerle consultas al DNS sobre qué nombre de dominio tiene una dirección IP específica.
excelente. Lo realizé de inicio a fin sin problemas. terminé con un monton de dudas pero logre ejecutarlo. Gracias por compartir tus conocimientos. Saludos desde México.
De nada! Saludos!. Cualquier duda es bienvenida jejej
Buen tutorial, pero no entiendo como puedo tener mis propios dns de mi vps,… asi como el cpnel?
dns1.miip
dns2.miip
Por ahora estoy usando de esta forma.
tengo 3 wordpress instalados, los dominios apunta A record , IP,,,,,
Pero no uso dns,,,, esto esta bien ò mal?
saludos soy novato.
¡Hola! En tu caso, creo que tendrías que tener un server del lado de Internet, con una IP Pública configurada y pues tendrías que tener la autoridad de la zona, pero realmente para lo que entiendo que lo necesitas, basta con los DNS’s que te da el proveedor… Espero haber aclarado algo jajajj ¡Saludos!
¿Cómo se configura un servidor DNS primario y cómo creo y configuro archivos de zona?
Hola. Pues básicamente, ésta entrada es una guía para configurar un servidor DNS primario y para configurar los archivos de zona, solo que es basado en Ubuntu Server. ¡Saludos!