Instalación de un servidor DNS (Bind9) en Debian.
21 Noviembre, 2007 por PedroEste documento es parte de los pasos para instalar y configurar un Sandbox para Drupal con Eclipse y CVS.
Si has llegado aquí, pero no sabes lo que es un servidor DNS, echale un vistazo a la wikipedia.
Para instalar el BIND (Berkeley Internet Name Domain):
apt-get install bind9
Ojo: Si el sistema lleva tiempo sin actualizarse será necesario realizar un apt-get update y luego instalar el bind.
Una vez finalizada la instalación, deberemos editar el fichero /etc/bind/named.conf.options para indicarle las direcciones de los DNS proporcionados por el ISP (en este caso Telefónica), en forwarders, también se debe descomentar la línea query-source address * port 53; y se debe añadir la sentencia dnssec-enable yes;
options {
directory "/var/cache/bind";
// If there is a firewall between you and nameservers you want
// to talk to, you might need to uncomment the query-source
// directive below. Previous versions of BIND always asked
// questions using port 53, but BIND 8.1 and later use an
// unprivileged port by default.
query-source address * port 53;
// If your ISP provided one or more IP addresses for stable
// nameservers, you probably want to use them as forwarders.
// Uncomment the following block, and insert the addresses
// replacing the all-0's placeholder.
forwarders {
80.58.61.250;
80.58.61.254;
};
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
dnssec-enable yes;
};
También se debe modificar el fichero /etc/resolv.conf , la parte de dominio no debe tocarse, y se debe añadir como primer nameserver, localhost, esto es:
search
nameserver 127.0.0.1
Una vez hecho esto, se deben reiniciar los servicios de dns y de red
/etc/init.d/networking restart
/etc/init.d/bind9 restart
Ahora mismo el servidor DNS debería estar operativo, pero para que el resto de sistemas de la red lo utilicen, deben configurarse para usarlo como servidor principal de DNS. Esto es, añadir la ip del servidor DNS en el fichero /etc/resolv.conf de cada cliente.
Queda un paso más, para que sea capaz de resolver las direcciones de los dominios definidos en red local, es necesario modificar dos ficheros más:
/etc/bind/named.conf.local
zone "local.neurotic" {
type master;
file "/etc/bind/db.local.neurotic";
allow-query { any; };
};
De esta forma las direcciones que terminen en local.neurotic, serán resueltas localmente.
El fichero /etc/bind/db.local.neurotic debe contener lo siguiente:
$TTL 604800
@ IN SOA local.neurotic. hostmaster.local.neurotic. (
2005052401 ; Serial yyyy/mm/dd/id
10800 ; Refresh (3 hours)
7200 ; Retry (2 hours)
1296000 ; Expire (15 days)
172800 ) ; Negative Cache TTL (2 days)
;
local.neurotic. IN NS ns1.local.neurotic.
localhost IN A 127.0.0.1
@ IN TXT "Servidor"
@ IN HINFO "Servidor privado" "lan interno"
;
@ IN A 192.168.1.2
* IN A 192.168.1.2
Ojo: 192.168.1.2 es la IP local del servidor en la LAN.
Ojo: Cuidado con los espacios en este fichero, el formato debe ser estricto, ya que sino dará muchos problemas.
Para que los cambios surtan efecto, se debe reiniciar el servidor DNS
/etc/init.d/bind9 restart
En este caso se ha utilizado local.neurotic para distinguir rápidamente si estamos trabajando con la web en local o en remoto, pero se puede poner cualquier dominio, el cual se resolvería primero en local.
Esto es una configuración simple para un servidor en una LAN, solamente se utiliza para resolución de nombres, si queréis extender la información, a mí me han servido de mucho estas tres referencias:
http://www.yohnah.net/
http://laespiral.org/articulos/bind/bind18052000.html#bindprimary
http://manes.debian-cl.org/bind.html
El siguiente paso en nuestro servidor, será configurar el Apache 2 para trabajar con Virtual Hosts
Enero 23rd, 2008 at 12:39 am
Muy sencillo y practico, gracias :)
Julio 10th, 2009 at 7:00 am
Esta configuracion me permitira acceder en una red local al nombre de dominio que configuremos en el servidor dns sin necesidad de Internet?, y si tengo clientes windows tambien funciona?
Saludos Gracias…