Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Instalacion y Configuracion de Un Servidor DNS Bind en Ubuntu
Instalacion y Configuracion de Un Servidor DNS Bind en Ubuntu
En Ubuntu existen varios software que permiten instalar un servidor DNS en un equipo
cualquiera. Los 2 ms conocidos son:
a) Bind: cuyo paquete de instalacin se llama bind9.
b) Dnsmasq: cuyo paquete de instalacin se llama dnsmasq
Empezaremos viendo un servidor DNS usando Bind y luego lo haremos con Dnsmasq
para que veais 2 softwares diferentes (e incompatibles) que hacen lo mismo. Los 2 usan
el puerto 53, por tanto, o instalais uno u otro. Pero NUNCA ambos.
La aplicacin que hace de servidor DNS en Linux se denomina bind9. Para instalarla,
podemos hacerlo con apt-get desde una consola de root:
// Instalacin del servidor DNS
# apt-get install bind9
60
TEMA 6
61
TEMA 6
62
TEMA 6
Descripcin
Archivo principal de configuracin que define zonas y
opciones del servidor
db.localhost
db.127
db.root
otros
db.0, db.255,
zones.rfc1918
db.empty,
rndc.conf,
rndc.key,
/etc/bind/named.conf.options
En este fichero, se deben especificar las IPs de 2 servidores DNS (que
normalmente sern las de nuestro proveedor ISP) donde redirigir las
peticiones DNS que reciba nuestro servidor y que sern quienes realmente
resuelvan los nombres.
63
TEMA 6
/etc/resolv.conf
//
Indicamos
que
nosotros
mismos
//
y
por
defecto
buscamos
// Editar /etc/resolv.conf del servidor DNS
domain XXmicentro.com
nameserver
search XXmicentro.com
somos
en
servidores
DNS
nuestro
dominio
127.0.0.1
Tan solo nos faltar poner en marcha nuestro servidor de nombres ejecutando en el
servidor el script de inicio (o demonio) correspondiente:
// Arranque del servidor DNS
# /etc/init.d/bind9 restart
64
TEMA 6
El resto de PCs de la red, sern los clientes. Estos clientes pueden ser equipos con
Windows XP, con Ubuntu, Explicaremos cmo configurar un cliente Windows XP y
otro Ubuntu.
a) Configuracin de un cliente XP:
Debemos incorporar nuestro cliente XP al dominio de nuestro servidor Ubuntu.
Para ello, en el cliente XP pulsamos Botn Dcho sobre MI PC y elegimos
PROPIEDADES:
65
TEMA 6
O tambin:
nslookup ip_de_Internet
TEMA 6
Otra forma de probar si funciona es usar: dig , host, ping o nslookup desde la
consola MS-DOS:
O tambin:
host www.google.es
COMANDO dig
El comando dig hace una consulta DNS a un servidor. Difiere del ping,
host o nslookup en que adems de hacer la consulta, muestra el QUERY
TIME.
El QUERY TIME es el tiempo que tarda un servidor DNS en
respondernos. Por eso, esta orden (dig) es muy importante para
comprobar si de verdad hemos agilizado el acceso a Internet o no, al
instalar un servidor DNS cach en nuestra red. Para realizar esta
comprobacin debemos hacer los siguiente:
1) una vez instalado nuestro servidor DNS cach, desde cualquier
cliente con Ubuntu (Windows no incluye dig) ponemos en la consola:
dig nombre_dns_de_internet
Por ejemplo:
dig www.google.es
Acto seguido observamos el Query Time con que nos responde.
2) Volvemos a ejecutar el mismo comando otra vez y observamos el
nuevo Query Time. Veremos que el tiempo de consulta se ha
reducido mucho. Esto es debido a que esta segunda consulta no la ha
hecho al DNS , sino que la ha sacado de la cach donde la haba
almacenado en la primera consulta.
67
TEMA 6
O tambin:
nslookup ip_de_Internet
/etc/bind/named.conf.local
En este fichero aadiremos las zonas de nuestro dominio
XXmicentro.com y su zona reverse, que no es ms que la forma de
decirle al servidor cmo localizar el nombre de dominio si le preguntamos
por una IP. Escribimos el cdigo siguiente y guardamos el archivo.As pues
el fichero de configuracin named.conf.local debe quedar como:
XX es vuestro n de dominio: 01,
// Aadir en /etc/bind/named.conf.local
02,
//Archivo de zona para bsquedas directas
zone "XXmicentro.com" {
type master;
file "/etc/bind/db.XXmicentro.com";
};
red.
68
TEMA 6
69
TEMA 6
IN
IN
PTR pc2.XXmicentro.com.
PTR pc5.XXmicentro.com.
IN
IN
PTR pc2.XXmicentro.com.
PTR pc5.XXmicentro.com.
IN
IN
PTR pc2.XXmicentro.com.
PTR pc5.XXmicentro.com.
/etc/bind/db.XXmicentro.com
Este fichero NO EXISTE. Debemos crearlo nuevo y es el que contendr los
registros de recursos de nuestra zona de bsqueda directa.
Para crearlo, lo ms fcil es copiar el contenido del fichero
/etc/bind/db.local que s existe y luego modificarlo. Para ello, desde la
consola ejecutamos el comando:
cp /etc/bind/db.localhost /etc/bind/db.XXmicentro.com
Con
este
comando
tendremos
en
nuestro
fichero
/etc/bind/db.XXmicentro.com
una
copia
del
contenido
de
/etc/bind/db.localhost. Ahora tendremos que modificarlo para adaptarlo
a nuestra zona de forma que nos podra quedar algo as:
Supongamos que en nuestra red local tenemos un aula llamada asi1 con 10
PCs con IPs que van desde la 192.168.2.203 hasta 210 y cuyos nombres van
desde asi1pc3 hasta asi1pc10, luego un servidor web (pc11) y un servidor de
correo electrnico que adems es servidor DNS (pc2). Supongamos tambin
que nuestro servidor DNS se llama sandra-PC (su hostname).
70
TEMA 6
root.XXmicentro.com. (
; Serial
; Refresh
; Retry
; Expire
; Default TTL
@
@
@
IN
IN
IN
NS
A
MX
sandra-PC.XXmicentro.com.
192.168.2.202
10
mail.XXmicentro.com.
sandra-PC
asi1pc3
asi1pc4
asi1pc5
asi1pc6
asi1pc7
asi1pc8
asi1pc9
asi1pc10
www
mail
IN
IN
IN
IN
IN
IN
IN
IN
IN
IN
IN
A
A
A
A
A
A
A
A
A
A
A
192.168.2.202
192.168.2.203
192.168.2.204
192.168.2.205
192.168.2.206
192.168.2.207
192.168.2.208
192.168.2.209
192.168.2.210
192.168.2.211
192.168.2.202
71
TEMA 6
/etc/bind/db.192
Este fichero NO EXISTE. Debemos crearlo nuevo y es el que contendr los
registros de recursos de nuestra zona de bsqueda inversa.
Para crearlo, lo ms fcil es copiar el contenido del fichero
/etc/bind/db.127 que s existe y luego modificarlo. Para ello, desde la
consola ejecutamos el comando:
cp /etc/bind/db.127 /etc/bind/db.192
IN
IN
NS
PTR
203
204
205
206
207
208
209
210
211
202
IN
IN
IN
IN
IN
IN
IN
IN
IN
IN
PTR
PTR
PTR
PTR
PTR
PTR
PTR
PTR
PTR
PTR
sandra-PC.XXmicentro.com.
sandra-PC.XXmicentro.com.
asi1pc3.XXmicentro.com.
asi1pc4.XXmicentro.com.
asi1pc5.XXmicentro.com.
asi1pc6.XXmicentro.com.
asi1pc7.XXmicentro.com.
asi1pc8.XXmicentro.com.
asi1pc9.XXmicentro.com.
asi1pc10.XXmicentro.com.
www.XXmicentro.com.
mail.XXmicentro.com.
72
TEMA 6
/etc/bind/named.conf.options
Ahora es el turno de decirle a BIND las DNS de nuestro proveedor de
servicios (ISP), para ello editaremos el fichero de opciones
(/etc/bind/named.conf.options) poniendo dentro de fowarders{} las IPs de
los servidores DNS de nuestro ISP. As conseguiremos que nuestro servidor
DNS tambin resuelva IPs de Internet. Si nuestros servidores DNS de
nuestro ISP son 195.235.113.3 y 62.37.228.20, nos quedar el fichero:
// Archivo /etc/bind/named.conf.options
options {
directory "/var/cache/bind";
//
//
//
//
//
forwarders {
// Aqu las DNS de tu proveedor ISP
195.235.113.3;
62.37.228.20;
};
auth-nxdomain no;
# conform to RFC1035
listen-on-v6 { any; };
};
/etc/resolv.conf
Indicamos
y
que
por
nosotros
defecto
mismos
buscamos
somos
en
servidores
nuestro
DNS
dominio
domain XXmicentro.com
nameserver 127.0.0.1
search XXmicentro.com
73
TEMA 6
/etc/init.d/bind9 restart
Ya slo falta probar nuestro servidor con la orden ping, host, dig o
nslookup y configurar nuestros clientes y probar desde ellos si resuelve
nuestro servidor.
74
TEMA 6
O tambin:
nslookup ip_de_Internet
Ahora, desde nuestro cliente probamos si el servidor DNS resuelve nombre
internos: podemos usar: ping o nslookup desde la consola MS-DOS.
75
TEMA 6
O tambin:
nslookup nombreservidor
O tambin:
nslookup ip_del_servidor
76
TEMA 6
O tambin:
nslookup ip_de_Internet
O tambin:
nslookup nombreservidor
O tambin:
dig nombreservidor
O tambin:
host nombreservidor
O tambin:
nslookup ip_del_servidor
77
TEMA 6
NS
NS
sandra-PC.XXmicentro.com.
dns2.XXmicentro.com.
//
Nueva
lnea
....
de esta forma indicaremos que existen ms servidores DNS para dicha zona.
Lo mismo haremos en el archivo db.192 de la zona inversa del maestro:
// Aadir lnea en /etc/bind/db.192 del maestro
....
IN
IN
NS
NS
sandra-PC.XXmicentro.com.
dns2.XXmicentro.com.
//
Nueva
lnea
....
78
TEMA 6
De sta forma dispondremos en la red de un servidor DNS esclavo que podr satisfacer
las peticiones DNS al igual que lo hara el maestro. Es interesante si el nmero de
peticiones es muy elevado y se requiere distribuir la carga entre los dos servidores, o si
deseamos disponer de servicio DNS de alta disponibilidad de forma que aunque el
servidor maestro deje de funcionar, el servidor esclavo podr seguir ofreciendo el
servicio.
NOTA:
Cada vez que hagamos un cambio en los archivos
/etc/bind/db.XXmicentro.com y /etc/bind/db.192 del maestro,
debemos acordarnos de actualizar el parmetro serial
(incrementar en una unidad) para que los dns dependientes del
maestro sepan que ha cambiado y actualicen su informacin para
mantenerse perfectamente sincronizados.
79