0% encontró este documento útil (0 votos)
68 vistas7 páginas

Dinamic DNS

Este documento describe cómo configurar un servidor DNS dinámico en un equipo que también actúa como servidor DHCP. Se instalan y configuran los servicios Bind9 para DNS y dhcp3-server para DHCP, y se habilita la actualización dinámica de registros DNS cuando cambian las direcciones IP asignadas por DHCP.

Cargado por

aaa20013547
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
68 vistas7 páginas

Dinamic DNS

Este documento describe cómo configurar un servidor DNS dinámico en un equipo que también actúa como servidor DHCP. Se instalan y configuran los servicios Bind9 para DNS y dhcp3-server para DHCP, y se habilita la actualización dinámica de registros DNS cuando cambian las direcciones IP asignadas por DHCP.

Cargado por

aaa20013547
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 7

CONSEJERIA DE EDUCACION

CEP Lora del Ro

DNS dinmico
Alberto Molina Coballes, Jos Domingo Muoz Rodrguez y Jos Luis Rodrguez Rodrguez
17 de marzo de 2010

Usted es libre de copiar, distribuir y modificar este documento de acuerdo


con las condiciones de la licencia Attribution-ShareAlike 3.0 de Creative Commons. Puede ver una copia de sta en:
http://creativecommons.org/licenses/by-sa/3.0/es/

Indice

1. Introduccin

2. Instalacin y configuracin de Bind9

2.1. Creacin de las zonas locales . . . . . . . . . . . . . . . . . . . . . . . . .

2.2. Prueba de funcionamiento del servidor DNS . . . . . . . . . . . . . . . . . .

3. Instalacin y configuracin de dhcp3-server

4. Puesta en marcha de los servicios

5. Configuracin de los clientes DHCP

1. Introduccin

Es muy cmodo utilizar DHCP en una red local, pero tiene un inconveniente: no sabemos qu
direccin tiene en cada momento un equipo. Una solucin para esto es sincronizar el servidor
DHCP con el DNS, creando lo que se denomina un servidor DNS dinmico (DDNS). Esta
configuracin permite que cada vez que se modifique una direccin IP, se registre el cambio
en los ficheros que controlan la zona local y, de esta manera, poder acceder a un equipo a
travs de su nombre.
Vamos a utilizar un mismo equipo como servidor DHCP y DNS, por lo que la comunicacin
entre estos dos servicios ser a travs de localhost. Configuraremos incialmente DNS con
RNDC, para la sincronizacin entre los dos servicios a travs del puerto 953/tcp.

2. Instalacin y configuracin de Bind9


avatar :# aptitude install bind9

El directorio /etc/bind/ contiene los siguientes ficheros:


-rw -r--r--rw -r--r--rw -r--r--rw -r--r--rw -r--r--rw -r--r--rw -r--r--rw -r--r--rw -r--r--rw -r-----rw -r--r--

1
1
1
1
1
1
1
1
1
1
1

root
root
root
root
root
root
root
root
root
bind
root

root 237 oct 7 23:47


root 271 oct 7 23:47
root 237 oct 7 23:47
root 353 oct 7 23:47
root 270 oct 7 23:47
root 2878 oct 7 23:47
bind 907 oct 7 23:47
bind 165 oct 7 23:47
bind 572 oct 7 23:47
bind
77 nov 13 13:57
root 1317 oct 7 23:47

db.0
db .127
db .255
db.empty
db.local
db.root
named.conf
named.conf.local
named.conf. options
rndc.key
zones. rfc1918

Los ficheros named.conf.* eran originalmente slo uno, ahora se modifican principalmente
named.conf.options y named.conf.local, para incluir respectivamente las opciones de bind y
la definicin de las zonas locales.
El fichero rndc.key contiene una clave para el rndc, que ser muy importante en la sincronizacin con el servidor DHCP:
/etc/bind/rndc.key
1
2
3
4

key "rndc -key" {


algorithm hmac -md5;
secret " S9QTPFn8zklrPHQ7z6XcOA ==";
};

Obviamente la clave cambiar en cada equipo y se genera de forma automtica al instalar


bind9, aunque es posible generar una nueva clave mediante la instruccin rndc-confgen.
Para que bind utilice rndc, hay que incluir las siguientes lneas en alguno de los ficheros
named.conf.*:
1

include "/ etc/bind/rndc.key ";

2
3
4
5
6

controls {
inet 127.0.0.1 port 953
allow { 127.0.0.1; } keys { "rndc -key "; };
};

de esta manera se permiten actualizaciones de las entradas DNS, pero slo a quien facilite la
clave y slo desde localhost.

Nota: Conviene aclarar que el demonio de bind9 se denomina named y el usuario que lo
ejecuta es bind (esto se especifica en el fichero /etc/default/bind9). Lgicamente el usuario
bind deber tener los permisos pertinentes para actualizar los registros del DNS.

2.1. Creacin de las zonas locales


Supongamos que queremos resolver las direcciones de nuestra red local, y que pertenecen al
dominio example.com. Para ello editamos el fichero named.conf.local que inicialmente slo
tiene algunas lneas comentadas e incluimos las siguientes entradas:
/etc/bind/named.conf.local
1
2
3

//
// Do any local configuration here
//

4
5
6
7

// Consider adding the 1918 zones here , if they are not used in your
// organization
// include "/ etc/bind/ zones . rfc1918 ";

8
9
10
11
12
13
14

zone " example .com" {


type master ;
file "db. example ";
allow - update { key "rndc -key "; };
notify yes;
};

15
16
17
18
19
20
21

zone "2.168.192. in -addr.arpa" {


type master ;
file "db .192.168.2";
allow - update { key "rndc -key "; };
notify yes;
};

Es decir, crearemos dos ficheros que incluirn las entradas para la resolucin directa (db.example)
e inversa (db.192.168.2), adems se incluye la directiva allow-update para que puedan
actualizarse las entradas DNS a travs de rndc y se indica el nombre de la clave.
Los ficheros db.example y db.192.168.2 se deben crear en el directorio de trabajo, que en
este caso es /var/cache/bind, aunque hay gente que prefiere modificar este directorio por /etc/bind, en cualquier caso es importante asignar a estos ficheros el usuario y grupo propietario
adecuado y los permisos siguientes:
-rw -rw -r-- 1 bind bind 313 nov 14 16:25 db .192.168.2
-rw -rw -r-- 1 bind bind 440 nov 14 16:25 db. example

Y su contenido podra ser (incluyendo slo el propio servidor DNS de forma esttica, ya que
estar fuera del rango de direcciones IP que reparte el servidor DHCP):
/var/cache/bind/db.example
1
2
3
4
5
6

$ORIGIN example .com.


$TTL 86400 ; 1 day
@
IN
SOA
avatar
postmaster (
1 ; serial
21600 ; refresh (6 hours )
3600 ; retry (1 hour)

8
9

10
11

604800 ; expire (1 week)


21600 ; minimum (6 hours )

avatar

NS
A

avatar
192.168.2.1

/var/cache/bind/db.192.168.2
1
2
3
4
5
6
7
8
9
10
11

$ORIGIN 2.168.192. in -addr.arpa.


$TTL 86400 ; 1 day
@
IN
SOA
avatar
postmaster (
200811131 ; serial
21600 ; refresh (6 hours )
3600 ; retry (1 hour)
604800 ; expire (1 week)
21600 ; minimum (6 hours )
)
NS
avatar . example .com.
1
PTR
avatar . example .com.

2.2. Prueba de funcionamiento del servidor DNS


Utilizando algn cliente DNS (preferentemente dig), haremos consultas al servidor DNS local
y comprobaremos si responde correctamente, por ejemplo:
avatar :$ dig @127 .0.0.1 avatar . example .com
; <> DiG 9.5.0 - P2 <> @127 .0.0.1 avatar . example .com
; (1 server found )
;; global options : printcmd
;; Got answer :
;; ->>HEADER <<- opcode : QUERY , status : NOERROR , id: 29030
;; flags : qr aa rd ra; QUERY : 1, ANSWER : 1, AUTHORITY : 1, ADDITIONAL : 0
;; QUESTION SECTION :
; avatar . example .com.

IN

;; ANSWER SECTION :
avatar . example .com. 86400 IN

192.168.2.1

;; AUTHORITY SECTION :
example .com. 86400

NS

avatar . example .com.

;;
;;
;;
;;

IN

Query time: 0 msec


SERVER : 127.0.0.1#53(127.0.0.1)
WHEN: Tue Feb 23 17:27:49 2010
MSG SIZE rcvd: 77

3. Instalacin y configuracin de dhcp3-server


avatar :# aptitude install dhcp3 - server

No se inicia y nos indica que busquemos el motivo en syslog, editamos el fichero /var/log/syslog
y encontramos la lnea:
dhcpd : Not configured to listen on any interfaces !

Editamos el fichero /etc/default/dhcp3-server y ponemos la interfaz de red por la que avatar


debe ofrecer direcciones IP a sus clientes:
/etc/default/dhcp3-server
11

INTERFACES =" eth1"

Ahora queda definir un rango de direcciones para el servidor DHCP y los parmetros que hay
que entregar a los clientes:
/etc/dhcp3/dhcpd.conf
1
2

#################################################
# Lneas para la actualizacin del servidor DNS:

3
4
5
6
7
8
9

server - identifier
ddns - updates
ddns -update - style
ddns - domainname
ddns -rev - domainname
deny

avatar ;
on;
interim ;
" example .com .";
"in -addr.arpa .";
client - updates ;

include

"/ etc/bind/rndc.key ";

10
11
12
13
14
15
16

zone example .com. {


primary 127.0.0.1;
key rndc -key;
}

17
18
19
20
21

zone 2.168.192. in -addr.arpa. {


primary 127.0.0.1;
key rndc -key;
}

22
23
24

#################################################
# Configuracin general del servidor DHCP

25
26
27
28

default -lease -time 3600;


max -lease -time 86400;
authoritative ;

29
30
31
32

#################################################
# Se reparten las direcciones 192.168.2.2 -192.168.2.127
# entre los clientes :

33
34
35
36
37
38
39
40

subnet 192.168.2.0 netmask 255.255.255.0 {


range 192.168.2.2 192.168.2.127;
option routers 192.168.2.1;
option domain -name " example .com .";
option domain -name - servers 192.168.2.1;
option broadcast - address 192.168.2.255;
}

4. Puesta en marcha de los servicios

Lo primero que haremos ser parar ambos servidores y vaciar los ficheros de peticiones dhcp
que se pudiesen haber generado:
avatar :#
avatar :#
avatar :#
avatar :#

/etc/init.d/ bind9 stop


/etc/init.d/dhcp3 - server stop
echo "" > /var/lib/ dhcp3 / dhcpd. leases
echo "" > /var/lib/ dhcp3 / dhcpd. leases

Ponemos en marcha de nuevo los dos servidores y realizamos una peticin DHCP desde un
cliente de la red, abrimos el fichero /var/log/syslog y si todo va bien nos aparecern lneas
como:
avatar
avatar
avatar
avatar
avatar
avatar
avatar
avatar
avatar
avatar
avatar
avatar
avatar
avatar
avatar

dhcpd : DHCPDISCOVER from 00:11:09:60: c6 : ec v i a eth2


dhcpd : DHCPOFFER on 192.168.2.2 t o 00:11:09:60: c6 : ec ( c l i e n t e ) v i a eth2
named [ 4 5 9 6 ] : c l i e n t 127.0.0.1#51880: s i g n e r " rndckey " a p p r o v e d
named [ 4 5 9 6 ] : c l i e n t 127.0.0.1#51880: u p d a t i n g zone ' example . com / IN ' : a d d i n g an RR a t c l . . .
named [ 4 5 9 6 ] : c l i e n t 127.0.0.1#51880: u p d a t i n g zone ' example . com / IN ' : a d d i n g an RR a t ' c . . .
named [ 4 5 9 6 ] : j o u r n a l f i l e db . example . j n l does n o t e x i s t , c r e a t i n g i t
dhcpd : Added new f o r w a r d map from c l i e n t e . example . com . t o 192.168.2.2
named [ 4 5 9 6 ] : c l i e n t 127.0.0.1#39603: s i g n e r " rndckey " a p p r o v e d
named [ 4 5 9 6 ] : c l i e n t 127.0.0.1#39603: u p d a t i n g zone ' 2 . 1 6 8 . 1 9 2 . i naddr . a r p a / IN ' : d e l e t i . . .
named [ 4 5 9 6 ] : c l i e n t 127.0.0.1#39603: u p d a t i n g zone ' 2 . 1 6 8 . 1 9 2 . i naddr . a r p a / IN ' : a d d i n g . . .
named [ 4 5 9 6 ] : j o u r n a l f i l e db .192.168.2. j n l does n o t e x i s t , c r e a t i n g i t
named [ 4 5 9 6 ] : zone 2.168.192. i naddr . a r p a / IN : s e n d i n g n o t i f i e s ( s e r i a l 200811133)
dhcpd : added r e v e r s e map from 2.2.168.192. i naddr . a r p a . t o c l i e n t e . example . com .
dhcpd : DHCPREQUEST f o r 192.168.2.2 ( 1 2 7 . 0 . 1 . 1 ) from 00:11:09:60: c6 : ec ( c l i e n t e ) v i a eth2
dhcpd : DHCPACK on 192.168.2.2 t o 00:1d : 0 9 : 6 0 : c6 : ec ( c l i e n t e ) v i a eth2

Tambin podemos comprobar que se han creado dos nuevos ficheros en el directorio de trabajo
de bind:
-rw -r--r-- 1 bind bind 844 nov 14 18:08 db .192.168.2. jnl
-rw -r--r-- 1 bind bind 911 nov 14 18:08 db. dominio .jnl

5. Configuracin de los clientes DHCP


El principal requisito que debe cumplir un cliente DHCP para funcionar en este entorno es
que debe enviar el nombre del host (hostname) en la peticin inicial. El cliente ms habitual
en las distribuciones linux es dhcp3-client, que no viene configurado inicialmente para enviar
el hostname. Para solucionar esto editamos el fichero /etc/dhcp3/dhclient.conf e incluimos la
lnea:
/etc/dhcp3/dhclient.conf
16

send host -name cliente ;

donde hay que sustituir en cada caso cliente por el nombre del equipo.

También podría gustarte