Académique Documents
Professionnel Documents
Culture Documents
Servicio DHCP
Caractersticas.
El servicio usa el protocolo DHCP (Dynamic Host Configuration Protocol) cuyo funcionamiento se
basa en el documento RFC 1531 y que fue desarrollado a partir del protocolo BOOTP en los aos 90.
Es un protocolo de la capa de aplicacin cuya funcin principal es permitir a los equipos de una red
obtener de forma automtica sus parmetros de configuracin de red.
Este servicio es muy til para los administradores de red ya que simplifica las tareas a la hora de
aadir nuevos equipos a una red o hacer cambios en los existentes.
Sus ventajas son:
Un servidor DHCP suministra de forma automtica la informacin de configuracin de los
equipos, en lugar de configurar y mantener manualmente dicha informacin en cada uno de los
equipos: direccin IP, mscara de red, servidores DNS, puerta de enlace, etc.
Cuando se aaden nuevos equipos a la red, el administrador no debe realizar ninguna tarea.
Al mantenerse centralizada la informacin de configuracin de los equipos en el servidor, sta es
congruente y ms fiable. Hay ms probabilidades de cometer errores cuando la informacin de
configuracin hay que establecerla equipo por equipo.
Si cambia la estructura de la red o de los servicios que en ella se prestan, no es necesario acceder
a cada uno de los equipos, basta cambiar la configuracin que se enviar a los equipos.
Si un equipo cambia de ubicacin, no es necesario configurarlo ya que obtendr su informacin
de su nueva red de forma automtica.
No es recomendable usar DHCP para configurar equipos que vayan a realizar funciones de servidor
(servidores DNS, correo, web, etc.), ya que si el servicio DHCP falla, provocar que los dems servicios
de la red no se puedan usar. Lo normal es que los equipos con funciones de servidor estn configurados
manualmente.
El servicio de configuracin automtica de red debe proporcionar como mnimo la direccin IP y la
mscara de red de los equipos. Parmetros como la puerta de enlace, la IP de los servidores DNS, etc.
puede que sean necesarios o no, en funcin de los servicios que deben operar en la red.
Las mquinas que estn configuradas para obtener la configuracin de red de forma automtica y no
lo consiguen, pueden usar un protocolo de direccionamiento privado automtico que permite configurar
sus parmetros de red.
El direccionamiento privado automtico asigna una direccin IP de clase B en el rango 169.254.0.1 a
169.254.255.254 y mscara 255.255.0.0 asegurndose de que dicha direccin no est ya usndose; si as
fuera, le asignara una nueva direccin. El cliente posteriormente y cada cierto intervalo de tiempo,
intentar obtener sus configuracin de red de un servidor DHCP.
Este mecanismo permite que los equipos de una red puedan comunicarse aunque no se disponga de un
servidor DHCP. Esta tcnica se denomina en Windows APIPA, en Linux Avahi y en Apple Bonjour.
2.
Componentes.
El servicio DHCP se basa en el modelo cliente-servidor y est formado por los componentes
siguientes:
Servidor DHCP. Encargado de asignar la configuracin de red a los clientes. Escucha por 67/UDP.
Clientes DHCP. Realizan las peticiones al servidor DHCP y configuran sus parmetros de red con
los valores que recibe del servidor. Escuchan por el puerto 68/UDP.
Protocolo DHCP. Especifica las reglas y normas con que se comunican los clientes y servidores
DHCP.
3.
Asignacin de direcciones.
Existen tres tipos de asignaciones que puede recibir un cliente por parte de un servidor DHCP:
Asignacin esttica: El servidor asigna una direccin fija a modo de reserva a un equipo concreto
identificado por su MAC (Media Access Control).
Asignacin dinmica. El servidor elige una direccin perteneciente a un grupo de direcciones
disponibles y se la concede durante un plazo determinado (tiempo de concesin o lease time).
Asignacin automtica. Se asigna la direccin de forma permanente al cliente la primera vez que
hace la solicitud al servidor DHCP. En este caso el tiempo de concesin es ilimitado y la IP
asignada no se podr utilizar de nuevo hasta que el cliente la libere.
En el proceso de asignacin usaremos los conceptos de mbito y rango. Un mbito es un conjunto de
equipos o clientes que usan el servicio DHCP. Dentro de un mbito se reservan un rango de direcciones
IP que se ofrecern a los clientes del mbito.
Lo habitual es que el administrador de red cree una serie de mbitos, uno por cada subred, y defina
para cada uno de ellos un rango de direcciones IP, adems de otros parmetros de configuracin.
Los rangos se componen de un intervalo de direcciones consecutivas, dentro de las cuales se pueden
excluir algunas que no se asignarn a clientes DHCP, sino que se otorgarn a aquellos equipos que
necesiten una direccin fija y que se configurarn de forma manual.
Tambin los servidores DHCP pueden realizar reservas de direcciones IP fijas para clientes concretos
identificados por su MAC (asignacin esttica).
El tiempo de concesin, es el tiempo en que un cliente mantiene los datos de configuracin que le
otorg un servidor DHCP. Cuando la interfaz de red se inicializa, cada cierto tiempo o cuando el tiempo
de concesin caduca, el cliente solicita su renovacin.
Cuando el tiempo de concesin finaliza, el servidor puede renovar la informacin del cliente
asignndole una nueva, o mantener la que tena prorrogndole el tiempo de concesin. Esto permite que
el usuario no tenga que estar pendiente de la configuracin de red del equipo; sabe que cuando el tiempo
de concesin se agote, de una forma u otra tendr su configuracin de red.
Los administradores deben ajustar los tiempos de concesin que otorgar el servidor DHCP en
funcin de las caractersticas de la red. Si en la red hay pocos equipos en comparacin con las direcciones
IP disponibles, y los clientes no suelen cambiar de configuracin, se pueden usar tiempos de concesin
elevados, de varias semanas o meses.
Lgicamente los servidores conocen que direcciones IP estn asignadas y cuales estn libres gracias a
que dichas informaciones las almacena de forma interna mediante tablas.
4.
Los servidores DHCP asignan la configuracin de red a las mquinas de la red cuando arrancan o
inician las interfaces de red. Los clientes realizan sus peticiones al servidor el cual escucha por el puerto
67/UDP. Los clientes escuchan los mensajes que le enva el servidor por el puerto 68/UDP.
La configuracin de red suministrada por un servidor DHCP permite a los clientes obtener los
parmetros siguientes: direccin IP, mscara de subred, servidores DNS, puerta de enlace, nombre del
dominio, servidores de correo, servidores de hora, etc.; as hasta una treintena.
Esta informacin se puede suministrar a los clientes a varios niveles:
Nivel de mbito: se enva slo a los clientes de un mbito, sobrescribiendo la informacin que se
hubiera especificado a nivel de servidor.
Nivel de clase o grupo: se envan a los clientes que pertenezcan a una clase/grupo determinado.
Microsoft Windows 2003/2008 Server dispone de un servidor DHCP. En Linux el servidor DHCP
ms usado es ISC DHCP (https://www.isc.org/software/dhcp).
La mayora de los modems-routers que entregan los ISP a sus clientes incluyen un servidor DHCP.
Esto permite que los usuarios puedan fcilmente conectarse a Internet ya que la configuracin de red para
tal fin de las mquinas clientes queda suministrada por el servidor DHCP del propio modem-router.
Los clientes DHCP realizan las peticiones al servidor DHCP para configurar sus parmetros de red
con las informaciones que reciben por el puerto 68/UDP. Los sistemas operativos llevan integrados estos
clientes DHCP por lo que no es necesario instalarlos explcitamente.
5.
El funcionamiento del servicio DHCP se basa en el protocolo DHCP, el cual define las reglas y
normas con que dialogan los clientes y servidores. El dilogo se establece mediante el envo y recepcin
de mensajes DHCP, los cuales tienen un formato determinado en el protocolo. Existen diferentes tipos de
mensajes en donde cada uno de ellos tiene una funcin especfica en la comunicacin.
El funcionamiento del servicio sigue los siguientes pasos:
Los servidores a los que le ha llegado la solicitud responden al cliente con sus propuestas.
Cada vez que expire el tiempo de concesin, el servidor intentar renovar la informacin al
cliente, bien:
- asignndole una nueva informacin, o
- prorrogndole el plazo con la misma informacin.
de una concesin.
Comenzamos con el servidor DHCP configurado para otorgar la informacin de red, y a la escucha de
las peticiones de los clientes. La concesin por
parte de un cliente se produce en cuatro pasos,
donde en cada uno de ellos se utiliza un
mensaje DHCP diferente:
1.
2.
DHCPOFFER.
Los
servidores
responden a la peticin del cliente con
este paquete
ofrecindole
una
direccin IP, la mscara de red, el
tiempo de concesin, etc.
DHCPREQUEST. De las ofertas llegadas al cliente, ste elige una de ellas (normalmente la
primera) y difunde mediante broadcast un mensaje de DHCPREQUEST con el nombre del
servidor elegido. En el caso del que cliente no hubiera recibido un mensaje DHCPOFFER,
expirado el tiempo, reenva un nuevo mensaje DHCPDISCOVER.
4.
Lgicamente si el servidor DHCP no est operativo, los clientes no podrn obtener una concesin, por
lo que resulta conveniente tener ms de un servidor DHCP funcionando simultneamente.
5.2. Renovacin
de una concesin.
DHCP simultneos.
En una red pueden funcionar varios servidores DHCP de forma simultnea. En este caso los
administradores de los servidores deben configurarlos para que funcionen de forma independiente, de tal
forma que no puedan asignar la misma direccin a dos ordenadores distintos. Una solucin es usar rangos
de direcciones IP distintos sin que se solapen.
Si se quiere que varios servidores trabajen con el mismo rango de direcciones es necesario que
sincronicen su informacin almacenada sobre las concesiones y el estado de stas. El protocolo DHCP
Failover Protocol permite esta situacin trabajando en dos modos posibles:
1.
Se configura un servidor DHCP primario y otro secundario. Cuando un cliente solicite una
configuracin, es el servidor primario el que le responde, salvo que falle y ser el secundario el que
responda otorgando la configuracin. El servidor secundario recibe actualizaciones del primario
para conocer el estado de los equipos de la red.
2.
Se configura para que el trabajo se reparta entre los servidores balanceando la carga de stos y
contestando ambos servidores a las peticiones de los clientes.
5.4. Servidor
Si disponemos de varias redes conectadas por un router, se puede configurar el servicio DHCP
configurando un servidor DHCP en cada subred, o bien configurando un nico servidor DHCP que
ofrezca el servicio de forma centralizada.
En este ltimo caso, podemos conectar el servidor DHCP a todas las redes usando routers que sean
capaces de transmitir los mensajes DHCP entre las redes, o bien instalar un agente de retransmisin
DHCP en algn equipo que escuche los mensajes de difusin usados en el protocolo DHCP y los redirija
a un servidor DHCP determinado.
6.
Hombre de en medio. Un intruso responde a las peticiones de los clientes pero les asigna como
puerta de enlace su propia IP, y por lo tanto enviando los paquetes al intruso.
En las redes de rea local, algunos switches se pueden configurar para evitar ataques de tipo spoofing
mediante el mecanismo denominado DHCP snooping. Consiste en configurar el switch con un puerto de
confianza por donde el servidor DHCP autorizado responder. Si otros servidores DHCP responden por
un puerto que no est sealado como de confianza en el switch, sus mensajes sern rechazados.
7.
Las versiones Windows 200X Server disponen de un paquete con el software de servidor DHCP. Para
otras versiones se puede instalar el Pack de Herramientas Administrativas de Servidor o bien instalar
paquetes de otros fabricantes.
Para configurar un equipo con Windows 2003 Server como servidor DHCP se realizarn los
siguientes pasos:
Instalacin. Desde el botn "Inicio" accederemos al "Panel de Control", y tras ello haremos clic sobre
el icono "Agregar o quitar programas", y luego pulsaremos sobre el icono "Agregar o quitar
componentes de Windows". Pasar a ser mostrada la ventana del "Asistente para componentes de
Windows", en la que nos situaremos sobre el apartado "Servicios de red", y tras ello pulsaremos
sobre el botn "Detalles". Activaremos la casilla "Protocolo de configuracin dinmica de host
(DHCP)", y tras ello pulsaremos sobre el botn "Aceptar", y de vuelta a la ventana anterior, sobre el
botn "Siguiente". Finalizada la instalacin dispondremos en las "Herramientas Administrativas" del
"Panel de Control" de de una nueva entrada "DHCP", correspondiente al servidor DHCP recin
instalado.
8.
Cuando termina la instalacin del paquete, el sistema intentar iniciar el demonio, pero normalmente
fallar ya que el archivo de configuracin no est adaptado a la configuracin de nuestra red.
En donde "x" ser el nmero de la interfaz de red usada por el servidor para conectarse a la red. Si se
usan varias interfaces deben ir separadas unas de otras por un espacio en blanco.
El archivo /var/log/daemon.log es donde se almacena el registro de las incidencias relativas a DHCP.
El archivo de configuracin /etc/dhcp3/dhcpd.conf contiene una lista de directivas que podemos
clasificar en dos grandes grupos:
Parmetros.
Indican qu debe hacer el servidor y cmo hacerlo. Se usan parmetros a los que se les asigna valores.
Declaraciones.
Las declaraciones describen la topologa de la red, las caractersticas de los clientes y el rango de
direcciones IP que sern asignadas a los clientes. Tambin permiten agrupar opciones de
configuracin (parmetros) y asignarlas a un grupo de declaraciones.
Las dos declaraciones principales que describen la topologa de red son: subnet (subred) y sharednetwork (red compartida).
Por cada subred a la que se da servicio y por cada subred a la que el servidor est conectado
deberemos utilizar una declaracin subnet. De esta forma el servidor puede identificar a qu subred
pertenece cada direccin IP. Es necesario utilizar una declaracin subnet incluso para subredes donde
no se utilice asignacin dinmica.
La sintaxis de la declaracin subnet es la siguiente:
subnet direccin_subred netmask mscara_subred {
[parmetros]
[declaraciones]
Si en una determinada subred (identificada por una declaracin subnet) la asignacin de direcciones
IP es automtica o dinmica ser necesario introducir una declaracin range (rango) para especificar
qu direcciones IP sern asignadas.
range ip_menor ip_mayor
Cuando se definen varias subredes sobre una misma red fsica es necesario una declaracin subnet por
cada subred y una declaracin shared-network que las englobe. En este caso, no se podr controlar a
qu subred pertenecern los equipos que obtengan su configuracin del servidor, salvo los equipos
que obtengan una configuracin esttica. La sintaxis de la declaracin shared-network es:
shared-network nombre {
[parmetros]
subnet direccin_subred_1 netmask mscara_subred_1 {
...
}
subnet direccin_subred_2 netmask mscara_subred_2 {
...
}
}
1.1
1.1
n.1
n.m
Para determinar que configuracin se asignarn a un cliente, el servidor recorre las declaraciones
desde las ms especficas a ms globales.
Aunque son muchos los parmetros disponibles los principales y de mayor uso son:
host servidor1 {
# Asignacin esttica
hardware ethernet 00:0c:29:1e:88:1d;
fixed-address 192.168.0.66;
}
host laser1 {
# Asignacin esttica
hardware ethernet 00:0d:34:3e:fd:3c;
fixed-address 192.168.0.67;
option host-name "laser1";
}
# Direccin MAC
# IP a asignar (siempre la misma) al host
# Direccin MAC
# IP a asignar (siempre la misma) al host
# nombre a asignar al host
Existen ms declaraciones y parmetros que los mostrados en el ejemplo anterior. Podemos ver todos
ellos en el manual que se instala junto al paquete mediante:
$ man dhcpd.conf
Una vez configurado el servidor DHCP al igual que todos los servicios de las distribuciones basadas
en Debian, se dispone de un script para arranque, parada y reinicio:
$ sudo /etc/init.d/dhcp3-server start | stop |restart
El archivo /var/lib/dhcp3/dhcpd.leases (los que haya
Los sistemas operativos actuales se instalan por defecto con una configuracin de red que se espera
sea obtenida por un servidor DHCP, o bien si usa IPv6 mediante un mecanismo definido en este
protocolo que es capaz de generar su propia IP obteniendo la informacin de los encaminadores de la red
y de informaciones previas de direcciones asignadas a otros equipos.
9.1. Clientes
Windows.
En los clientes Windows XP la configuracin de red se establece a travs de las propiedades del
protocolo TCP/IP que podemos activar mediante las propiedades de la Conexin de rea local. Slo hay
que marcar la opcin obtener una direccin IP automticamente. La opcin Obtener la direccin del
servidor DNS automticamente se marcar o no en funcin de la informacin que el servidor DHCP
suministre al cliente.
En la pestaa Configuracin alternativa podemos seleccionar el botn Direccin IP privada
automtica para que el equipo se asigne una direccin mediante el mecanismo APIPA si no consigue
ninguna por DHCP. Si se marca el botn Configuracin por el usuario, se puede especificar una
configuracin de red de forma manual si no se consigue por DHCP.
En los clientes Windows 7, las propiedades del protocolo TCP/IP se activan mediante las propiedades
de Conexin de rea local de la opcin Cambiar configuracin del adaptador del Centro de redes y
recursos compartidos.
En Windows 7 las opciones disponibles para IPv4 son las mismas que en Windows XP. Respecto a
IPv6, Windows 7 la incluye por defecto, y si estn disponibles los dos protocolos, el equipo obtiene la
configuracin necesaria para ambos protocolos. Cuando un equipo utiliza IPv4 e IPv6 a la vez, siempre
tiene preferencia IPv6, a no ser que las direcciones de los equipos con los que se va a comunicar sean
IPv4.
La orden ipconfig /all permite conocer la configuracin de red asignada a un cliente as como el
servidor DHCP que otorg los parmetros de configuracin de red.
Si un cliente desea liberar la concesin que ha recibido puede ejecutar el comando
ipconfig /release
Ahora bien, si desea renovar la concesin que ha recibido o pedir una nueva puede ejecutar
ipconfig /renew
9.2. Clientes
Linux.
En los clientes Linux de la distribucin Ubuntu, la configuraciones de red deben siempre realizarse a
travs de aplicaciones grficas o siempre editando los archivos de configuracin. Mezclar ambos modos
produce configuraciones inconsistentes.
La herramienta grfica Network Manager permite la configuracin de los adaptadores de red. Con la
opcin Editar las conexiones y seleccionando el adaptador de red, podemos con la opcin Ajustes IPv4
editar el mtodo donde se elegiremos Automtico (DHCP) para configurar el cliente. Es necesario
desactivar y volver a activar el adaptador de red para que se aplique la nueva configuracin.
Si por el contrario usamos archivos de configuracin, lo primero es desactivar la interfaz de red.
Suponiendo que la interfaz de red a configurar es eth0, haramos:
$ ifdown eth0
Luego deberemos editar el archivo /etc/network/interfaces, eliminar, si hubiera, las lneas referentes a
una configuracin manual (address, network, netmask, broadcast, gateway, ) y modificar la lnea iface
para que en vez de static aparezca dhcp. La configuracin sera:
# the loopback network interface
auto lo
iface lo inet loopabck
# the primary network interface
auto eth0
iface eth0 inet dhcp
en lugar de desactivar y activar la interfaz de red, pero esto hara que todas las interfaces de red de
nuestro equipo se reiniciaran.
Para configurar los clientes, tambin podemos usar los comandos de configuracin a bajo nivel
o ip. El problema es que la nueva configuracin que indicramos, no se registra, por lo que en el
siguiente reinicio de la mquina volveramos a la configuracin de red previa. Con ifconfig sera:
ifconfig
El paquete del cliente DHCP viene incluido por defecto en las instalaciones Linux. El demonio cliente
habitualmente denominado dhclient es el encargado de realizar las peticiones a los servidores. Este
proceso guarda la informacin que recibe del servidor DHCP en el archivo /var/lib/dhcp3/dhclient.leases.
Los clientes Linux pueden liberar la concesin que ha recibido mediante la orden
$ dhclient ethX -r
El demomio dhclient dispone del archivo de configuracin dhclient.conf. En dicho archivo podemos
establecer aquellos valores de la configuracin de red que el servidor DHCP no es capaz de proporcionar.
Por ejemplo, si el servidor no proporciona el nombre de dominio al equipo, o queremos enviar el nombre
del equipo al servidor podemos establecerlo en el archivo /etc/dhcp3/dhclient.conf.
10.
En Linux verificar en /etc/default/dhcp3-server las interfaces de red (eth0, eth1,) por donde el
servidor debera aceptar las peticiones de los clientes.
Si el equipo tarda mucho en arrancar es que DHCP est especificando que se realicen varios
intentos si no obtiene la IP.
Comprobar los cortafuegos del servidor y de los clientes. (Por defecto se permite el servicio
DHCP, no obstante comprobar los puertos 67 y 68 de UDP).
Ojo con los clientes Windows 7. Cuando el servidor tiene reservada una IP para un equipo
Windows 7, ste no es capaz de obtenerla por lo que el servidor le vuelve a asignar una libre. La
solucin es utilizar un parche o bien actualizar Windows 7 con el SP1.