¿Te ha gustado el artículo?
0
¿Te ha gustado el artículo?
0

El DHCP y la configuración de redes

Conectar dispositivos a una red TCP/IP ya no es tan difícil como antes, porque en lugar de tener que asignar las direcciones IP manualmente e introducirlas en los diferentes sistemas, hoy la gestión de direcciones tiene lugar automáticamente. Si los routers, hubs o conmutadores pueden asignar de forma automática una dirección individual a los dispositivos que solicitan conectarse a una red, es gracias al protocolo de configuración dinámica de host, en inglés, Dynamic Host Configuration Protocol o más comúnmente DHCP.

Qué es el DHCP

El DHCP es una extensión del protocolo Bootstrap (BOOTP) desarrollado en 1985 para conectar dispositivos como terminales y estaciones de trabajo sin disco duro con un Bootserver, del cual reciben su sistema operativo. El DHCP se desarrolló como solución para redes de gran envergadura y ordenadores portátiles y por ello complementa a BOOTP, entre otras cosas, por su capacidad para asignar automáticamente direcciones de red reutilizables y por la existencia de posibilidades de configuración adicionales.

Tras unas primeras definiciones del protocolo en 1993 en los RFC 1531 y 1541, su especificación definitiva llegó en 1997 con el RFC 2131. La IANA (Internet Assigned Numbers Authority) provee al protocolo de los puertos UDP 67 y 68 (para IPv6, los puertos 546 y 547), también reservados para el protocolo Bootstrap.

La asignación de direcciones con DHCP se basa en un modelo cliente-servidor: el terminal que quiere conectarse solicita la configuración IP a un servidor DHCP que, por su parte, recurre a una base de datos que contiene los parámetros de red asignables. Este servidor, componente de cualquier router ADSL moderno, puede asignar los siguientes parámetros al cliente con ayuda de la información de su base de datos:

  • Dirección IP única
  • Máscara de subred
  • Puerta de enlace estándar
  • Servidores DNS
  • Configuración proxy por WPAD (Web Proxy Auto-Discovery Protocol)

Así se comunican el cliente DHCP y el servidor DHCP

La asignación automática de direcciones mediante el protocolo de configuración dinámica de host tiene lugar en cuatro pasos consecutivos:

  1. El cliente DHCP envía un paquete DHCPDISCOVER a la dirección 255.255.255.255 desde la dirección 0.0.0.0. Con esta denominada difusión amplia o broadcast, el cliente establece contacto con todos los integrantes de la red con el propósito de localizar servidores DHCP disponibles e informar sobre su petición. Si solo hay un servidor, entonces la configuración es extremadamente sencilla.

  2. Todos los servidores DHCP que escuchan peticiones en el puerto 67 responden a la solicitud del cliente con un paquete DHCPOFFER, que contiene una dirección IP libre, la dirección MAC del cliente y la máscara de subred, así como la dirección IP y el ID del servidor.

  3. El cliente DHCP escoge un paquete y contacta con el servidor correspondiente con DHCPREQUEST. El resto de servidores también reciben este mensaje de forma que quedan informados de la elección. Con esta notificación, el cliente también solicita al servidor una confirmación de los datos que le ha ofrecido. Esta respuesta también sirve para confirmar parámetros asignados con anterioridad.

  4. Para finalizar, el servidor confirma los parámetros TCP/IP y los envía de nuevo al cliente, esta vez con el paquete DHCPACK (DHCP acknowledged o «reconocido»). Este paquete contiene otros datos (sobre servidores DNS, SMTP o POP3). El cliente DHCP guarda localmente los datos que ha recibido y se conecta con la red. Si el servidor no contara con ninguna dirección más que ofrecer o durante el proceso la IP fuera asignada a otro cliente, entonces respondería con DHCPNAK (DHCP not acknowledged o «no reconocido»).

La dirección asignada se guarda en la base de datos del servidor junto con la dirección MAC del cliente, con lo cual la configuración se hace permanente, es decir, el dispositivo se conecta a la red siempre con esa dirección que le ha sido asignada automáticamente y que ya no está disponible para ningún otro cliente, lo que significa que los clientes DHCP nuevos no pueden recibir ninguna dirección si ya están todas asignadas, incluso aunque algunas IP ya no se usen activamente. Esto ha llevado a la expansión de las direcciones dinámicas y, en casos especiales, a la asignación manual vía servidor DHCP, que explicamos en los párrafos que siguen.

Asignación dinámica y manual de direcciones con DHCP

El problema del agotamiento del rango de direcciones es más bien improbable en el caso de la asignación dinámica. En principio, este procedimiento es ampliamente equiparable con la asignación automática, aunque con una pequeña pero decisiva diferencia: los parámetros de configuración que envía el servidor DHCP no son válidos para un periodo indeterminado de tiempo, sino por un tiempo de “préstamo” definido por el administrador que se conoce como concesión o alquiler de direcciones (lease time). Este indica cuánto tiempo puede acceder un dispositivo a la red con esa dirección. Antes de que se agote (transcurrida la mitad del tiempo), los clientes han de solicitar una prolongación de la concesión enviando una nueva DHCPREQUEST. Si no lo hace, no tiene lugar el DHCP refresh y, en consecuencia, el servidor la libera.

Si en las variantes automática y dinámica los administradores no tienen mucho que hacer, la situación es algo diferente en el caso de la asignación manual, que también se conoce como DHCP estático y en el cual las direcciones IP se asignan “a mano” con ayuda de las direcciones MAC definidas por el servidor DHCP sin limitación temporal.

 Debido a sus elevados costes de gestión, que contradice la misma razón de ser del Dynamic Host Configuration Protocol, este tipo de asignación solo se reserva para unos pocos escenarios. Las direcciones IP estáticas son necesarias, por ejemplo, cuando en un ordenador se alojan servicios de servidor que han de estar permanentemente disponibles para los otros integrantes de la red, o en las redirecciones de puerto, en las que la dirección IP no puede variar.

El servidor DHCP informa al Domain Name System

La dirección IP asignada a un cliente tiene que poderse asociar con su nombre de dominio. Es aquí donde entra en juego un servidor DNS, que se ocupa de la resolución de nombres.

Cuando una dirección registrada o el nombre de host se modifican, es necesario actualizar el servidor de nombres de dominio. Para un administrador, así como para el usuario que se conecta a Internet desde su casa, la actualización manual del DNS en el caso de las direcciones IP variables asignadas dinámicamente por un servidor DHCP conllevaría mucho trabajo. El que no tengan que hacerlo es posible gracias al servidor DHCP, que se encarga de hacer llegar la nueva información al DNS tan pronto como se asigna una nueva dirección IP.

¿Es seguro el DHCP?

El Dynamic Host Configuration Protocol tiene un punto débil y es su capacidad para ser manipulado fácilmente. Como el cliente hace un llamamiento a discreción a todos los servidores DHCP que podrían responder a su petición, a un atacante le sería relativamente sencillo entrar en la red y hacerse pasar por uno de ellos si tuviera acceso a ella. Este denominado servidor DHCP “Rogue” (corrupto) intenta adelantarse con su respuesta al servidor legítimo y si tiene éxito envía parámetros manipulados o inservibles. Si no envía puerta de enlace, asigna una subred a cada cliente o responde a todas las peticiones con la misma dirección IP, este atacante podría iniciar en la red un ataque de denegación de servicio o Denial of Service.

Más dramático, pero factible, sería el intento de colarse en un router utilizando datos falsos sobre la puerta de enlace y el DNS, de modo que se estaría en posición de copiar o desviar el tráfico de datos. Este ataque man in the middle no tiene el propósito, como el primero, de ocasionar una caída de la red, sino de apropiarse de información sensible como datos bancarios, contraseñas o direcciones postales.

Sea cual sea el tipo de ataque, sus artífices necesitan tener acceso directo a la red para abusar del protocolo DHCP, así que no dejes de implementar las medidas de seguridad necesarias que te permitan disfrutar las ventajas de este protocolo de comunicación sin temor a sufrir las consecuencias de una amenaza de este tipo. Para el responsable de una red local es fundamental la protección absoluta ante intentos externos e internos de ataque y la supervisión constante de todos los procesos de red con herramientas como Nagios. En nuestra guía sobre la seguridad WLAN también repasamos las opciones de que dispones para proteger redes inalámbricas.

Activar y desactivar DHCP: manual para usuarios de Windows

Cuando se accede con un dispositivo a una red local o inalámbrica entra en juego de forma automática el DHCP sin tener que modificar la configuración de red. Los ordenadores con sistemas de Microsoft Windows, por ejemplo, hace tiempo que están predefinidos como clientes DHCP que por lo general obtienen automáticamente la dirección IP por asignación dinámica, en la cual los parámetros se han de “prorrogar” o asignar de nuevo cuando el plazo de concesión expira. En las redes locales también puede utilizarse la asignación automática de direcciones fijas siempre y cuando participe un servidor DHCP.

En caso de querer revisar la configuración actual de la asignación de direcciones o desactivar el DHCP y adoptar la variante manual, en los siguientes pasos puedes ver cómo hacerlo, pero para ello deberás contar con permisos de administrador.

Activar o desactivar DHCP en Windows 7

  1. Abre el panel de control en el menú de inicio de tu ordenador y selecciona la categoría “Network and Internet” («Redes e Internet»):

2. Abre el “Network and Sharing Center” («Redes y recursos compartidos») y en el menú lateral izquierdo pincha en “Change adapter settings” («Cambiar la configuración del adaptador»):

3. Ahora haz clic con el botón derecho del ratón en la conexión de área local que quieras configurar y selecciona la categoría “Propiedades” en el menú emergente:

4. En el siguiente menú puedes ver todos los servicios que utiliza la conexión seleccionada. Para configurar el DHCP en Windows nos interesa el protocolo de Internet (TCP/IPv4 o IPv6), por lo que en este punto seleccionas la versión correspondiente del IP y accedes a sus propiedades haciendo clic en el botón homónimo:

5. En el menú de propiedades del protocolo de Internet puedes ver si el DHCP obtiene la dirección IP y el servidor DNS automáticamente —como en la captura de pantalla—, pero también tienes ocasión de definir una dirección IP fija, una puerta de enlace por defecto, una máscara de subred y el servidor DNS preferido:

6. Si tienes la intención de desactivar DHCP deberías introducir en este punto una dirección IP fija y una máscara de subred (255.255.255.0 por defecto). En los ajustes del servidor DHCP, accesibles en la interfaz de usuario del router si funciona como servidor, se define el rango potencial de direcciones para la IP. En el router también se desconecta el servidor DHCP y con ello la asignación de direcciones con el protocolo.

Configurar DHCP en Windows 8

1. Haz clic en el menú de inicio y busca el panel de control en la lista de aplicaciones del sistema. Otra forma de abrir el panel de control consiste en utilizar el atajo de teclado [Windows]+[X] y seleccionar la categoría “Control Panel” o “Panel de control” en el menú emergente:

2. Desde “Network and Internet” accedes a “Network and Sharing Center”, en donde obtienes un listado de las conexiones de red instaladas al seleccionar “Change adapter settings”:

2. Haciendo clic con el botón derecho del ratón en la conexión de red seleccionada y pinchando en el apartado de propiedades se abre el menú con los componentes del sistema que utiliza la conexión LAN:

4. Selecciona la versión del protocolo que corresponda y haz clic en “Propiedades”.

5. En este menú de opciones puedes ver cómo tu sistema gestiona la asignación de direcciones IP actual. Si en lugar del usual procedimiento automático quieres activar el DHCP estático, selecciona el punto “Use the following IP address” («Utilizar la siguiente dirección IP») e introduce la dirección y la máscara de subred (255.255.255.0 por defecto) en sus campos. Opcionalmente puedes indicar la puerta de enlace estándar (normalmente la dirección IP del router) y la dirección del servidor DNS que quieras utilizar:

6. Para desactivar DHCP se configura el servidor como indicamos en el caso anterior.

Activar y configurar DHCP con Windows 10

1. Abre el panel de control desde el menú inicial o con [Windows]+[X]

2. Ahora haz clic en “Redes e Internet” y a continuación en “Cambiar la configuración del adaptador”, como en los casos anteriores:

3. Con el botón derecho del ratón haz clic en la conexión LAN y selecciona “Propiedades” en el menú desplegable.

4. Del listado de protocolos y servicios activados y desactivados que aparece a continuación marca la versión del protocolo que corresponda y abre la ventana de propiedades:

5. Por defecto está definida la obtención automática de dirección IP y si no lo estuviera se activa marcando esta opción. También se puede escoger la asignación estática, para lo cual se introducen los parámetros de red manualmente:

6. Para desactivar DHCP en Windows 10 hay que abrir la interfaz del servidor DHCP y llevar a cabo los ajustes correspondientes.

Red Protocolos