El protocolo de configuración dinámica de host (DHCP) es un protocolo de red que permite a un servidor DHCP/servidor de red asignar dinámicamente la dirección IP, la máscara de subred, los gateways predeterminados y otros parámetros de configuración de red a los dispositivos que lo soliciten. Automatiza la tediosa tarea de configurar la IP para el administrador de la red, automatizando eficazmente las asignaciones de IP y minimizando el desaprovechamiento de IP y los conflictos de IP. El servidor DHCP puede asignar dinámicamente direcciones IP a los dispositivos de red desde su pool de direcciones, y reclamarlas. En este documento, discutimos:
Para empezar, aquí hay una lista de términos que necesita conocer para entender mejor el DHCP.
Servidor DHCP: Un servidor de red que está configurado para ejecutar el servicio DHCP. Los servidores DHCP se encargan de asignar IP automáticamente a los dispositivos de red. El almacén de datos del servidor contiene un conjunto de direcciones IP que se pueden asignar a los clientes que lo soliciten.
Cliente DHCP: Un dispositivo de red, como un portátil o una impresora, que soporta los servicios de cliente DHCP. Los clientes DHCP pueden solicitar a los servidores DHCP direcciones IP dinámicas y parámetros de red para poder comunicarse a través de Internet.
Alcance DHCP: El ámbito o alcance DHCP especifica el rango de direcciones IP que un servidor DHCP puede proporcionar a sus clientes. Se debe configurar el alcance DHCP para determinar el conjunto de direcciones IP que el servidor DHCP puede alquilar o renovar.
Pool de IP: Un conjunto de direcciones IP secuenciales que un servidor DHCP puede asignar a los clientes que lo soliciten.
Por ejemplo: Si el servidor DHCP A tiene un pool de IP en el rango 192.168.20.1 - 192.168.20.25, entonces puede asignar cualquier dirección IP dentro de este rango a los dispositivos de red que lo soliciten.
IP estática: Las IP estáticas son direcciones IP que se asignan manualmente a los dispositivos de red.
Son direcciones fijas que se asignan y no están sujetas a cambios en ningún momento de la conexión.
Por ejemplo: 172.217.6.164 es la dirección IP estática de Google. Siempre puede acceder a Google utilizando su IP estática.
IP dinámica: Las IP dinámicas son direcciones IP que un proveedor de direcciones, como los servidores DHCP, asignan automáticamente al dispositivo de red. Estas asignaciones están sujetas a cambios. Un dispositivo que admite la asignación de IP dinámica no está obligado a tener la misma dirección IP cada vez que se conecta a Internet.
Por ejemplo: La dirección IP que se le asigna a su dispositivo al conectarse a una red Wi-Fi gratuita puede cambiar cada vez que realice una nueva conexión.
Gateway predeterminado: Los gateways predeterminados son dispositivos, como los routers, que permiten la comunicación entre redes.
Aunque es posible que el administrador de la red configure manualmente las direcciones IP y otros parámetros de red para cada dispositivo de la red, esto se vuelve cada vez más tedioso y difícil a medida que crece la red. Las políticas que se implementan para mejorar la productividad, como la de "traiga su propio dispositivo" (BYOD), obligan a los administradores de redes de TI a asignar direcciones IP y controlarlas manualmente. DHCP se introdujo para agilizar el proceso. DHCP automatiza esta tediosa tarea de configurar la IP asignando automáticamente direcciones IP y otros parámetros relacionados a los dispositivos de red.
Cuando un dispositivo de red solicita una dirección IP para comunicarse en la red, el servidor DHCP ofrece al cliente una de las direcciones IP de su reserva de direcciones IP. Cuando el dispositivo acepta esta dirección IP, el servidor DHCP actualiza su almacén de datos con la dirección IP y el cliente asignado.
Dado que el DHCP permite asignar direcciones IP dinámicas, la dirección que se asigna a un dispositivo de cliente DHCP no es fija. El servidor DHCP no asigna permanentemente una dirección IP a un dispositivo, sino que la proporciona durante un periodo de tiempo determinado.
Cuando un cliente solicita al servidor DHCP una dirección IP, el servidor DHCP le proporciona la dirección IP y los parámetros de configuración de la red, como la máscara de subred y los gateways predeterminados, durante un periodo de tiempo determinado, denominado arrendamiento. El periodo para el que se asigna la dirección IP al cliente se denomina periodo de arrendamiento. El cliente puede utilizar todos los parámetros de red asignados dentro de este periodo, y se identifica de forma única en la red utilizando la dirección IP asignada.
Durante o al finalizar el periodo de arrendamiento, si el cliente desea seguir utilizando los mismos parámetros de red, incluida la dirección IP, se puede solicitar una renovación del alquiler a través del servidor DHCP. El servidor DHCP, al recibir este mensaje, renueva el periodo de arrendamiento del cliente, y éste puede seguir utilizando la dirección IP durante más tiempo.
Al finalizar el periodo de arrendamiento, si un cliente no ha solicitado una renovación, o si el servidor no ha recibido una solicitud de renovación, se vencerá el alquiler de la IP asignada. Esto hace que el DHCP recupere la IP y las configuraciones de red relacionadas, y la añada de nuevo a su pool de direcciones IP.
Como se mencionó anteriormente, cada servidor DHCP tiene un Pool de direcciones IP. Cualquier dirección IP dentro de este pool se puede asignar dinámicamente a los clientes que lo soliciten, y reclamar de nuevo para el pool.
¿Por qué DHCP arrienda las direcciones IP en lugar de asignarlas permanentemente? La asignación permanente de direcciones IP, o la asignación de direcciones IP durante largos períodos de tiempo, pueden agotar las direcciones. Un servidor DHCP sólo tiene un conjunto limitado de direcciones IP en su Pool de IP. Si asignamos una dirección IP durante un largo periodo de tiempo a un dispositivo concreto, cuando el número de dispositivos que quieran conectarse a la red supere el número de direcciones IP disponibles, se producirá una interrupción del servicio, ya que el servidor DHCP no podrá dar servicio a los nuevos clientes.
Por ejemplo:
Digamos que tiene un servidor DHCP que tiene 3 IP (196.128.12.1, 196.128.12.2, 196.128.12.3) en su pool de IP. El servidor DHCP se utiliza para asignar direcciones IP dinámicas a los dispositivos que entran en la red local.
Los dispositivos A, B y C, entran en la red al mismo tiempo. El servidor DHCP asigna para A - 196.128.12.1, para B - 196.128.12.2, y para C -196.128.12.3.
Ahora se han asignado todas las IP disponibles del pool de IP del servidor DHCP.
Cada dispositivo permanece en la red durante dos horas y luego se desconecta.
Escenario 1: No hay periodo de arrendamiento. (Las IP se asignan permanentemente con asignación estática).
Cuando otro dispositivo, D, entra en la red después de dos horas, no puede conectarse a la red ya que no hay direcciones IP disponibles en el pool de IP del servidor DHCP. Todas las IP han sido asignadas a los dispositivos A, B y C de forma permanente.
Escenario2: Periodo de arrendamiento de dos días. (Las IP se asignan dinámicamente). Cuando otro dispositivo, D, entra en la red después de dos horas, no se puede conectar a la red, ya que todavía no hay ninguna dirección IP disponible. Esto se debe a que, aunque después de dos horas los dispositivos A, B y C, se han desconectado de la red, las direcciones IP que tienen asignadas tienen un periodo de arrendamiento de dos días. Es decir, las direcciones IP permanecen asignadas durante los dos días siguientes. Así, el dispositivo D no puede adquirir una dirección IP para conectarse a la red.
Problema: En ambos casos (con y sin periodo de arrendamiento), con un pool de 3 direcciones IP, el dispositivo D no pudo conectarse a la red.
Solución: La solución es implementar el DHCP con un periodo de asignación de dos horas como requisito.
Al finalizar el periodo de asignación de dos horas, el arrendamiento expira para los dispositivos A, B y C. Los dispositivos que decidan permanecer en la red pueden renovar el arrendamiento, mientras que el arrendamiento expirará para los demás dispositivos.
Así, cuando el dispositivo D entre en la red, el arrendamiento para el dispositivo A habrá expirado y la IP 196.128.12.1 estará de nuevo en el pool de IP. Entonces, esta IP se podrá asignar al dispositivo D.
El proceso que el servidor DHCP realiza para asignar la dirección IP y otros parámetros de configuración de red al dispositivo de red ocurre en cuatro pasos:
Paso 1: El cliente DHCP descubre el servidor DHCP.
Para que un dispositivo se comunique dentro de una red, necesita una dirección IP. Un dispositivo de cliente DHCP adquiere la dirección IP y los parámetros de red mediante la difusión de un paquete UDP llamado DHCPDISCOVER dentro de la red.
Al recibir la difusión de DHCPDISCOVER, todos los servidores no autorizados descartan o ignoran el mensaje. Los servidores DHCP dentro de la red reciben y procesan el paquete de difusión.
El mensaje DHCP DISCOVER contiene detalles como:
Puerto de origen de UDP | 68 |
Puerto de destino de UDP | 67 |
IP de origen | 0.0.0.0 |
IP de destino | 255.255.255.255 |
Contenidos del paquete DHCPDISCOVER |
Aquí, la IP de origen del paquete de difusión es 0.0.0, ya que al dispositivo cliente no se le ha asignado aún la dirección IP. Con la IP de destino 255.255.255.255, el paquete de difusión se envía a todos los dispositivos de la red, a través de un proceso llamado difusión limitada. Se debe establecer la IP de destino con un ID de subred particular para permitir una difusión dirigida.
Paso 2: El servidor DHCP ofrece la IP y los parámetros de configuración de la red al cliente.
Cuando un servidor DHCP válido recibe el mensaje de difusión DHCPDISCOVER, reserva una IP en su pool de IP, y ofrece esa IP en arrendamiento al cliente que lo solicite. Transmite su oferta de alquiler de IP, la máscara de subred y los gateways predeterminados al cliente que lo solicita a través de un mensaje DHCPOFFER.
Puerto de origen de UDP | 68 |
Puerto de destino de UDP | 67 |
IP de origen | 192.168.31.9 |
IP de destino | 255.255.255.255 |
Contenidos del paquete DHCPDISCOVER |
Aquí 192.168.31.9 es el servidor DHCP que ofrece una dirección IP de su pool. Tradicionalmente, este mensaje de oferta se envía al cliente especificando el hardware o la dirección MAC del cliente.
Paso 3: El cliente acepta la oferta del DHCP requerida y solicita el arrendamiento de la IP.
Al recibir un mensaje DHCPOFFER, el cliente solicita la asignación de la dirección IP ofrecida a través del mensaje DHCPOFFER enviando un mensaje DHCPREQUEST al servidor. Este mensaje indica al servidor DHCP que ya puede asignar al cliente la dirección IP ofrecida bajo arrendamiento.
Al recibir más de un mensaje DHCPOFFER de los servidores de la red, el cliente envía un mensaje DHCPREQ (solicitud de DHCP) sólo al servidor DHCP cuyo mensaje fue recibido primero por el cliente. Las demás ofertas se descartan o se ignoran.
Puerto de origen de UDP | 68 |
Puerto de destino de UDP | 67 |
IP de origen | 0.0.0.0 |
IP de destino | 255.255.255.255 |
Contenidos del paquete DHCPREQ |
Paso 4: El servidor DHCP acepta la solicitud de arrendamiento de IP del cliente.
Al recibir el mensaje DHCPREQUEST, el servidor DHCP asigna la dirección IP al cliente y la registra en su almacén de datos. El servidor confirma la dirección IP asignada, la máscara de subred y los detalles del gateway predeterminado enviando un mensaje DHCPACK (aceptación de DHCP).
El cliente ahora puede empezar a utilizar la IP asignada y los parámetros de red.
Puerto de origen de UDP | 68 |
Puerto de destino de UDP | 67 |
IP de origen | 192.168.31.9 |
IP de destino | 255.255.255.255 |
Contenidos del paquete DHCPACK |
El cliente DHCP se configura con los parámetros de red recibidos.
Los dispositivos pueden enviar mensajes de difusión sólo dentro de la red de la que forman parte. No pueden emitir mensajes a través de redes o subredes. Cuando no hay un servidor DHCP válido dentro de una red, un dispositivo en esa red no puede adquirir una dirección IP ya que no puede emitir mensajes DHCPDISCOVER a los servidores fuera de su red.
Este problema se resuelve utilizando un agente de retransmisión del DHCP.
Digamos que hay dos redes, la red A y la red B, conectadas por un router. Hay un servidor DHCP válido en la red A. Cada dispositivo dentro de la red A puede arrendar una IP a través de este servidor. Imagine que no hay un servidor DHCP en la red B. Dado que los dispositivos no pueden emitir mensajes entre redes, los dispositivos de la red B no pueden arrendar una IP.
Las dos formas de resolver este problema son:
Utilizamos un agente de retransmisión del DHCP configurando el servicio de retransmisión de DHCP en uno de los dispositivos de la red B. Este dispositivo recibe los mensajes de difusión DHCPDISCOVER de los clientes de la red B, y los reenvía al servidor DHCP de la red A. El servidor DHCP de la red A envía el mensaje DHCPOFFER al agente de retransmisión de la red B, que difunde el mensaje dentro de su red. Del mismo modo, los mensajes DHCPREQ y DHCPACK se intercambian entre el cliente DHCP de la red B y el servidor DHCP de la red A mediante la retransmisión a través del agente DHCP, que puede actuar como intermediario o man-in-the-middle.
Usar un servidor DHCP separado en la red B implica dos dificultades en comparación con usar un agente de retransmisión:
Configurar un agente de retransmisión independiente facilita mucho el proceso. El agente de retransmisión puede ser un dispositivo dentro de la red, o se puede configurar el propio router de la red para que proporcione el servicio de retransmisión del DHCP.
El DHCP base no tiene mecanismos de autentificación o validación estándar. Esto puede abrir la red a:
Uno de los ataques DHCP más comunes es la suplantación del DHCP.
Un atacante o agente malicioso puede hacerse pasar por un servidor DHCP válido utilizando la técnica man-in-the-middle. Este atacante puede ser un router falso o inalámbrico con un servidor DHCP incorporado. Cuando un cliente DHCP válido envía un mensaje DHCPDISCOVER, el atacante en la red envía un mensaje DHCPOFFER. Cuando el cliente solicita y comienza a utilizar la dirección IP proporcionada por el servidor del atacante, el gateway predeterminado dado por el atacante le permite obtener visibilidad de todo el tráfico entre el cliente y la red a través del gateway predeterminado. Así, el atacante puede interceptar el tráfico del cliente.
Para evitar este ataque, los administradores de red configuran la inspección o snooping DHCP en la red.
El snooping DHCP permite a un switch procesar un mensaje DHCPOFFER sólo si ha sido enviado a través de un puerto de confianza.
El proceso de snooping DHCP implica marcar todos los puertos como no confiables inicialmente. Luego, el administrador de la red marca sólo los puertos DHCP válidos en la red. Cuando se envía una difusión DHCPDISCOVER, el cliente descarta todos los mensajes DHCPOFFERS recibidos de los puertos no confiables, y envía un mensaje DHCPREQUEST sólo a la oferta que ha sido enviada a través de los puertos válidos. Así, se descartan los paquetes que podrían haber sido enviados por atacantes.
El snooping DHCP refuerza la infraestructura DHCP en una red.
Los administradores de la red pueden configurar los servidores y clientes DHCP manualmente, y ver el arrendamiento de IP y la configuración de los clientes DHCP utilizando comandos nativos. Algunos de ellos se enumeran en la siguiente tabla.
Aunque los comandos nativos permiten configurar el DHCP en el dispositivo, configurar los servidores y clientes de DHCP con estos comandos es lento y tedioso a medida que crece la red. Para administrar los servidores DHCP en organizaciones grandes, se recomienda utilizar un software de gestión de recursos de red, como ManageEngine OpUtils.
Los servidores DHCP son la base de la infraestructura de red. Debido a su facilidad de funcionamiento y uso, los servidores DHCP se emplean en operaciones pequeñas y grandes, desde redes domésticas hasta redes de nivel empresarial.
Las ventajas de utilizar servidores DHCP son:
Uso óptimo del espacio de direcciones IP: Al asignar direcciones IP manualmente a los dispositivos de una red, se podrían desperdiciar IP, ya que las direcciones IP permanecen asignadas incluso después de que el dispositivo se desconecte de la red.
Reserva de IP: El DHCP permite reservar direcciones IP específicas para dispositivos concretos, que no se asignan a otros dispositivos, incluso cuando los dispositivos asignados se desconectan de la red.
Asignación dinámica: El servidor DHCP automatiza la tediosa tarea de asignar direcciones IP manualmente. Las direcciones IP se asignan y reclaman dinámicamente del pool de IP.
Reduce los conflictos de IP: La asignación manual puede hacer que se asigne la misma dirección IP a más de un dispositivo, provocando conflictos de IP. El arrendamiento de IP del DHCP elimina este problema.
Gestión más sencilla: El almacén de datos del DHCP mantiene registros de los usuarios, como el usuario al que se le asigna la dirección IP, el tiempo de arrendamiento y otros parámetros de red.
Escalabilidad: Los routers DHCP admiten la escalabilidad de la red.
Las complejas infraestructuras de red que utilizan DHCP se pueden gestionar fácilmente con OpUtils, un completo gestor de IP de red y puertos de switch. OpUtils se integra con los servidores DHCP más populares y ofrece:
OpUtils proporciona una gestión de direcciones IP y puertos de switch mejorada, incluyendo el escaneo, el monitoreo y la gestión de la red en tiempo real con una solución de problemas de red más rápida y sencilla.
¿Es nuevo en OpUtils? Programe una demostración gratuita con un experto en el producto o explore las funciones para ver cómo OpUtils puede ayudarle a gestionar sus recursos de red. También puede descargar una prueba gratuita de 30 días para implementar y probar OpUtils en su red. ¿Tiene un presupuesto en mente? Contáctenos.