En esta entrada vas a ver la configuracion de bind9 y asi tener configurado tu propio servidor DNS.
La configuracion de bin9, la haremos sobre debian.
Indice de Contenidos
¿Que significa DNS?
DNS, viene de la abreviatura Domain Name Server, Servidor de Nombres de Dominio.
En internet cada equipo esta identificado mediante una dirección ip. Es mucho mas difícil acordarse de una dirección ip, que al fin y al cabo son una serie de numero, que acordarse de un nombre de dominio.
¿Para que sirven los DNS?
Si hacemos en nuestro equipo, mediante la consola, un nslookup a un nombre de dominio, obtendremos la siguiente salida.
nslookup google.com
Name: google.es
Address: 172.217.16.227
Como vemos, la salida nos esta diciendo, que google.es, esta la dirección ip 172.217.16.227. Por lo tanto es mas fácil, decir y aprenderse metete en la pagina google.es y busca configuración de bind9 que decir metete en la pagina 172.217.16.227 y busca configuración bind9.
De ahi, surge la necesidad de los nombres de dominio. Ante esa necesidad se crearon los servidores DNS, que basicamente lo que hace es resolver los nombres.
Al poner en la barra del navegador google.com, lo que hace mi equipo es ir a los servidores DNS, que tengo configurados para mi interfaz de red y hacer la consulta. Entrega el nombre google.com y ese servidor DNS, hace la consulta en su base de datos y me devuelve la ip.
Instalación
Vamos a ver la instalación y configuracion de Bind9, que es el servidor DNS, mas popular y con mas tiempo en internet.
Procedemos a la instalación con el siguiente comando.
apt-get install bind9
Configuracion de bind9
Una vez instalado nos vamos al archivo /etc/bind/named.conf al final y añadimos las siguientes lineas.
zone "midominio.es" {
type master;
file "/etc/bind/midominio.conf";
};
zone "8.168.192.in-addr.arpa" {
type master;
file "/etc/bind/midominio.conf.inversa";
};
Estamos definiendo dos zonas, la directa y la inversa. Una nos dirá cual es la ip del dominio y la inversa, hace lo contrario, nos indica cual es el nombre de dominio para la dirección ip.
- En zone estamos indicando el nombre de dominio
- Con type le estamos indicando que nuestro servidor es el servidor primario o maestro de la zona. Si cambiamos master por slave sera un servidor secundario.
- En file le estamos indicando donde esta el fichero de configuración para esta zona.
Zona Directa
Ahora vamos a configurar el fichero de nuestra zona directa.Cogemos el fichero de /etc/bind/db.local y lo copiamos como midominio.conf.
Lo modificamos y lo dejamos asi:
;
; BIND data file for local loopback interface
;
$TTL 604800
@ IN SOA midominio.es. root.midiominio.es. (
2020041201 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
IN NS ns.midominio.es.
IN A 192.168.8.1
@ IN MX 10 mx.midominio.es.
ns IN A 192.168.8.1
ns.midominio.es. IN A 192.168.8.1
Registro SOA y Directrices
- $TTL 604800: Es el tiempo máximo de validez, tras el cual deberá refrescarse o actualizarse (para comprobar que no haya cambiado). Por defecto se usan segundos (604800 segundos equivale a siete días exactos).
- @ IN SOA midominio.es. root.midiominio.es. (: Estamos especificando el dominio que vamos a resolver y el correo del administrador del dominio. Nos fijamos que el dominio y el correo llevan un punto al final, esto es obligatorio. El correo no lleva @, se sustituye por un punto.
- 2020041201 ; Serial: Es un número que se incrementa cada vez que se modifica un fichero de una zona, de forma que Bind se dé cuenta de que tiene que recargar esta zona. Se recomienda usar la fecha de modificación en formato AAAAMMDD, donde AAAA es el año en formato de cuatro cifras, MM es el mes en dos cifras, y DD es el día de mes en dos cifras, seguido de un número de dos cifras, empezando por el 01.
- 604800 ; Refresh: Número de segundos que un servidor de nombres secundario debe esperar para comprobar de nuevo los valores de un registro.
- 86400 ; Retry: Número de segundos que un servidor de nombres secundario debe esperar después de un intento fallido de recuperación de datos del servidor primario.
- 2419200 ; Expire: Número de segundos máximo que los servidores de nombre secundarios retendrán los valores antes de expirarlos.
- 604800 ) ; Negative Cache TTL: Número de segundos que los registros se mantienen activos en los servidores NS caché antes de volver a preguntar su valor real. Aqui serían 7 dias.
Registros de Subdominios
- IN NS ns.midominio.es.: Indica los servidores de nombre que tienen autoridad sobre el dominio. Debe haber al menos uno y pueden declararse varios para un dominio.
- IN A 192.168.8.1: Con esta linea le estamos indicando que midominio.es, sin ningún subdominio está en la ip 192.168.8.1
- ns IN A 192.168.8.1: Estamos indicandole que el subdominio ns.midominio.es esta en la ip 192.168.0.254
- * IN A 192.168.8.1: Todos los subominios están en la ip 192.168.8.1
- @ IN MX 10 mx.midominio.es.: El domino que se utilizara para la recepción de correos.
Zona Inversa
Ahora a continuacion vamos a configurar la zona inversa. Cogemos el fichero de /etc/bind/db.127 y lo copiamos como midominio.inversa.
Lo editamos y nos quedaria una cosa asi:
; BIND reverse data file for local loopback interface
;
$TTL 604800
@ IN SOA midominio.es. root.midominio.es. (
1002 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns.midominio.es.
1 IN PTR ns.midominio.es.
Lo unico a resaltar es la ultima linea que añadimos:
- 1 IN PTR ns.midominio.es.: Lo que estamos es, indicándole que la dirección 192.168.8.1 pertenece a ns.midominio.es. En esta linea le indicamos el 1 y el 192.168.8 se lo decimos en el fichero named.conf en la linea zone «8.168.192.in-addr.arpa» {
Ya con esto hemos terminado la configuracion de bind9 y tenemos nuestro servidor DNS.
resolv.conf
Ahora solo tenemos que añadir la siguiente linea, en el archivo /etc/resolv.conf. Lo que le estamos indicando es que para que resuelva los dominios, use nuestro servidor DNS.
nameserver 127.0.0.1
Reiniciamos bind.
/etc/init.d/bind9 restart
Pruebas
Ahora toca hacer las pruebas pertinentes, para ello vamos a usar dos herramientas.
nslookup, que esta herramienta la marcan como obsoleta, pero la podemos encontrar en el paquete dnsutils. Asi que aprovechamos para instalarlo.
apt-get install dnsutils
La otra herramienta es host. Ambas cumplen con su función y son aptas.
Prueba de resolución directa
nslookup ns.midominio.es
Server: 192.168.8.1
Address: 192.168.8.1#53
Name: ns.midominio.es
Address: 192.168.8.1
Prueba de resolución inversa
nslookup 192.168.8.1
Server: 192.168.8.1
Address: 192.168.8.1#53
1.8.168.192.in-addr.arpa name = ns.midominio.es.
Tambien te puede interesar
Para cualquier duda o sugerencia, puedes contactarme a traves del fomulario de contacto.
Tambien te animo a que te suscribas a la newsletter, donde solo envio las nuevas publicaciones.
Deja un Comentario
Debes de estar logueado para comentar.