¿Cuál es el propósito del protocolo DHCP?
Dynamic Host Configuration Protocol (DHCP) es un protocolo de red que le permite asignar automáticamente direcciones IP y otros parámetros de configuración a los dispositivos conectados a la red. Simplifica la administración y reduce la probabilidad de conflictos al asignar la misma dirección a dos dispositivos.
Una dirección IP es un identificador de un recurso en una red TCP/IP. Consta de cuatro bloques (octetos) de dígitos separados por puntos: por ejemplo, 98.139.100.15 es la dirección del sitio web. yahoo.com . Los recursos en este contexto son dispositivos de red y páginas web.
Computadoras, teléfonos, etc. puede enviar y recibir datos dentro de una red local si su dirección es única dentro de esa red. Para intercambiar datos en Internet, el dispositivo emisor debe tener una dirección única a través de Internet en el campo correspondiente del paquete IP. También se le llama público o»blanco».
Puede asignarse directamente al dispositivo o convertirse desde una dirección local. La conversión la realiza el enrutador o firewall utilizando el método NAT.
Al acceder a la red, el dispositivo recibe una dirección IP. La dirección estática puede ser asignada manualmente por el administrador o por el servidor DHCP. Dinámico solo lo asigna el servidor DHCP
El estándar para el protocolo DHCP
Los principios, reglas y funciones del protocolo DHCP están documentados en RFC 2131, publicado en 1997. Reemplazó al RFC 2141 de 1993.
El RFC (Request for Comments) es una serie de publicaciones sobre los principales estándares y protocolos de Internet. Por ejemplo, hay RFC en el protocolo IP, conceptos y objetos de infraestructura DNS y un identificador de recurso URL único.
Desde 1969, dichos documentos han sido emitidos por el IETF (Grupo de Trabajo de Ingeniería de Internet) y otras organizaciones para el desarrollo técnico y el desarrollo de estándares para Internet. Algunas RFC son aceptadas por el IETF como estándares de Internet.
Incluso antes, en 1985, apareció el predecesor del protocolo DHCP BOOTP (Protocolo Bootstrap, RFC 951).
¿Cómo funciona DHCP?
Cuando un dispositivo se conecta a una red que tiene un servidor DHCP, le solicita una dirección IP.
Este servidor almacena una lista de direcciones IP que se emitirán, lo que se denomina grupo. Incluye uno o más rangos de direcciones consecutivas.
El servidor asigna una dirección IP y otros parámetros de configuración de red al nuevo dispositivo, como la dirección de la puerta de enlace predeterminada, el tiempo de alquiler y otros (estos parámetros se describen en detalle en la sección Opciones de DHCP).
Tiempo de alquiler
Las direcciones IP se emiten durante un cierto período de tiempo, que se denomina tiempo de arrendamiento. Su duración la determina el administrador de la red.
Si la concesión expira y el cliente DHCP continúa usando la dirección, envía una solicitud para extender la concesión (este proceso se describe en detalle en la sección Procedimiento para asignar una dirección IP). Al mismo tiempo, los usuarios generalmente no notan la desconexión. Si el cliente se desconecta de la red, su dirección se devuelve al grupo y se asigna a nuevos dispositivos.
Por ejemplo, un servidor DHCP en una cafetería, donde los nuevos dispositivos están constantemente conectados a la red Wi-Fi, puede tener un tiempo de alquiler de una hora. En redes públicas tan concurridas, no es práctico asignar direcciones IP durante un período de tiempo más prolongado, de lo contrario, su suministro se agotará rápidamente.
Al mismo tiempo, en una red Wi-Fi corporativa, el período de alquiler puede ser de 8 a 12 horas, ya que los mismos empleados permanecen dentro del edificio con sus teléfonos y computadoras portátiles durante toda la jornada laboral.
Y para las computadoras de oficina que están conectadas permanentemente a la red a través de un cable Ethernet, es razonable establecer períodos de alquiler de una semana o más. Si hay docenas o cientos de estos trabajos en la organización, las solicitudes frecuentes de extensiones de arrendamiento por parte de los clientes aumentarán el tráfico de la red y ralentizarán la red.
La arquitectura DHCP
El protocolo DHCP utiliza un modelo de comunicación cliente-servidor. Incluye un servidor DHCP, clientes y, a veces, agentes de retransmisión.
El servidor DHCP
Este es el nombre del programa que emite automáticamente direcciones a los clientes y el equipo en la red local en la que se ejecuta este programa: una computadora o enrutador en una organización o un proveedor de servicios de Internet.
En una red local, se asignan uno o más de estos servidores que, previa solicitud, conectan los dispositivos cliente a la red y les dan direcciones IP de un grupo determinado por el administrador.
La mayor parte del grupo está asignado para asignación dinámica( los métodos de asignación se describen en detalle en la sección Métodos de asignación de direcciones): los dispositivos están conectados a la red durante un período limitado, que puede extenderse una vez finalizado.
A menudo, varias direcciones están reservadas para fines estáticos. Por ejemplo, las impresoras de red, el almacenamiento en red y las cámaras IP deben estar encendidos todo el tiempo y ser accesibles en las mismas direcciones.
Algunas direcciones o rangos pueden excluirse del grupo, por ejemplo, si el administrador ya los ha asignado manualmente a ciertos dispositivos.
El cliente DHCP
Un cliente DHCP es un programa que accede a la configuración de red mediante el protocolo DHCP. Al conectarse, el cliente solicita la dirección IP y otros parámetros de configuración de red al servidor mediante mensajes DHCP. Los datos de configuración se transmiten en los campos de opciones, que se describen en detalle en la sección Opciones de DHCP.
El Agente de Retransmisión DHCP
Si la red consta de varias subredes, entonces instalar un servidor DHCP en cada una de ellas es irracional; es más conveniente administrar un centro de administración de red que varios. Al mismo tiempo, se configura un agente de retransmisión en cada subred donde no hay servidor, ya que los mensajes DHCP no pasan a través de enrutadores de una subred a otra.
Dicho agente es un programa alojado en un conmutador o enrutador que tiene acceso a un servidor DHCP configurado para aceptar solicitudes de conexión de red.
Opciones de DHCP
Para transferir parámetros de configuración de red adicionales en el protocolo DHCP, se utilizan opciones estándar y, a veces, menos comunes.
Opciones estándar
Opción 001: Máscara de subred
El valor de este parámetro determina el tamaño de la subred administrada por el servidor DHCP, es decir, el número de dispositivos que pueden recibir la dirección. Depende de a qué equipo de red, el conmutador o el enrutador — se enviarán los datos del cliente.
Para acceder a un recurso fuera de la subred, como Internet, el dispositivo necesita un enrutador. Y si accede a un nodo en su subred, por ejemplo, un servidor de torrents, entonces están conectados por un conmutador.
Opción 003: Enrutador (puerta de enlace predeterminada)
Una puerta de enlace es un nodo que sirve como punto de acceso a otra red para dispositivos de red. Esto suele ser un enrutador.
Cuando se especifica la dirección de puerta de enlace predeterminada, los dispositivos de la LAN pueden comunicarse con redes externas. Cuando necesita acceder a un recurso fuera de la red local, la cadena de transición comienza con la puerta de enlace predeterminada.
Opción 006: Servidor DNS
Esta opción le permite especificar la dirección del servidor DNS para que los dispositivos de la red local puedan acceder a ella para resolver (convertir) nombres de dominio en direcciones IP. Puede especificar las direcciones principal y de respaldo aquí. Dicho servidor puede estar ubicado dentro de esta red o fuera de ella.
Opción 051: tiempo de alquiler
Esta opción especifica la cantidad máxima de tiempo en segundos que el cliente puede usar la dirección antes de extender la concesión.
Opción 082: Información para configurar el agente de retransmisión
Esta opción especifica los datos que transmiten los agentes, no los clientes. En relación con el servidor DHCP al que el agente reenvía mensajes, el cliente es remoto porque se encuentra en una subred diferente.
Las subopciones más importantes en ti son:
082.1 Identificador de puerto: información para identificar el puerto al que está conectado el cliente remoto.;
082.2 ID del cliente remoto.
Opciones menos comunes
Los siguientes son ejemplos de opciones que se asignan con menos frecuencia a los dispositivos cliente conectados.
Opción 012: Nombre de host del cliente
Si es necesario, el administrador puede averiguar el nombre del fabricante por la dirección MAC del dispositivo y, por el valor de este parámetro, puede obtener más información, como su tipo, modelo y funciones. Identificar un dispositivo es especialmente importante si no tiene un usuario específico.
El valor de este parámetro, por ejemplo, galaxywatch — se especifica durante la fabricación del dispositivo (más tarde, el usuario puede cambiar el nombre de host a su discreción). El dispositivo puede enviarlo al servidor en una solicitud de conexión: «Necesito una dirección IP a nombre de galaxywatch.”
No todos los servidores admiten esta opción. Además, puede desactivarse por motivos de seguridad.
Opción 015: Nombre de dominio
Esta opción le permite transferir el nombre de dominio al dispositivo, que se agregará automáticamente al acceder a recursos cuyo nombre no contenga una parte de dominio. De esta manera, puede usar nombres de recursos simples sin especificar el nombre de dominio completo.
Por ejemplo, si una computadora recibe una opción del servidor DHCP que especifica el dominio astrahosting, al acceder al recurso de archivos desde el host, la consulta DNS irá automáticamente a los archivos de direcciones.astrahosting.
Opción 042: lista de servidores NTP en orden de preferencia
NTP es un protocolo de red para sincronizar el reloj interno de una computadora con un reloj de referencia, que es lo que se considera que son los relojes en los servidores NTP. La opción 42 se usa para sincronizar la hora en el cliente DHCP con la hora en un servidor de hora tan preciso.
Opción 101: zona horaria como cadena
Este parámetro especifica la zona horaria en la que se encuentra la red local. Está designado por el estándar de base de datos de zona horaria (base de datos tz): por ejemplo, Asia/Tokio.
Formas de asignar direcciones
El servidor DHCP asigna direcciones IP a los clientes de una de estas tres formas::
Asignación dinámica
Esta es la forma más común de asignar direcciones. La dirección IP y otros parámetros de configuración de la red se asignan a cada cliente previa solicitud durante un período de alquiler determinado por el administrador. Cuando expira este período, el cliente solicita nuevamente esta configuración al servidor.
Este método es razonable de usar cuando los dispositivos necesitan acceso temporal, así como en los casos en que constantemente se conectan nuevos dispositivos a la red y las direcciones pueden agotarse rápidamente.
Asignación estática (manual)
Cuando la dirección del dispositivo no debe cambiar — por ejemplo, si se trata de una impresora de red, generalmente se usa una asignación estática.
El administrador crea una tabla de distribución en el servidor DHCP: agrega las direcciones MAC que necesitan una dirección estática y asigna una dirección IP a cada una.
Al recibir una nueva solicitud de conexión de red, el servidor DHCP verifica si el MAC correspondiente está en la tabla. Si está presente allí, el servidor proporciona a este cliente la configuración de red adecuada.
A la dirección MAC de dicho cliente se le asigna una dirección IP permanente en esta red. En conexiones posteriores, siempre recibirá esta dirección.
Este método de asignación difiere de la configuración manual de cada cliente solo en que la información de la dirección se almacena de forma centralizada y, por lo tanto, no es necesario cambiarla en cada dispositivo donde se restablecen los ajustes.
Asignación automática
Para este método, el administrador asigna un rango especial de direcciones IP. Cuando el dispositivo se conecta a la red por primera vez, recibe la primera dirección disponible y otras configuraciones de red de este rango. Se crea una tabla de correspondencias de direcciones IP y MAC en el servidor y, posteriormente, todos los dispositivos de la tabla reciben las direcciones que se les asignaron cuando se conectaron por primera vez. Al mismo tiempo, el tiempo de alquiler no está limitado.
Este método difiere de la asignación estática en que el administrador no participa en la compilación de esta tabla; se crea en el servidor automáticamente a medida que se conectan nuevos dispositivos.
La diferencia con el método dinámico es que el tiempo de alquiler es ilimitado y, una vez que el cliente recibe una dirección en la red, ya no la solicita.
Procedimiento para asignar una dirección IP
La conexión del cliente a la red, o inicialización, consta de cuatro etapas principales, cuyas letras iniciales forman la abreviatura DORA; estas cuatro etapas generalmente se denominan con esta abreviatura —
La interacción del dispositivo cliente con el servidor continúa en la etapa de renovación del arrendamiento y finaliza con la desconexión de la red.
1. DHCPDISCOVER-detección
El nuevo dispositivo está intentando conectarse a la red(por ejemplo, por cable o Wi-Fi). Todavía no tiene una dirección IP, por lo que envía mensajes desde su dirección MAC. Su primer mensaje de transmisión (dirigido a todas las direcciones MAC en la LAN)es DHCPDISCOVER: «Necesito una dirección IP. ¿Hay servidores DHCP aquí?”.
2. DHCPOFERTA-oferta
Por la misma difusión, uno o más servidores envían un mensaje DHCPOFFER al nuevo cliente, ofreciéndole alquilar una de las direcciones IP de esta red: «Aquí está la dirección IP y otros parámetros de configuración.”
3. Solicitud DHCPREQUEST
El cliente selecciona una oferta de uno de los servidores (normalmente la primera que recibe) y envía un mensaje DHCPREQUEST a todos los servidores sobre la dirección aceptada.: «He seleccionado una dirección IP de este servidor DHCP.”
4. DHCPACK-confirmación
El servidor seleccionado envía un mensaje DHCPACK a todos los dispositivos de la red: «El dispositivo con esta dirección MAC ha recibido esta configuración de red.»Este mensaje contiene la dirección IP del nuevo cliente, la hora de alquiler, la dirección de la puerta de enlace desde la que comienza el acceso a direcciones externas y la dirección del servidor DNS para resolver nombres de dominio en Internet.
Con la dirección recibida, el nuevo cliente puede acceder tanto a los dispositivos en la red local como a los recursos en Internet.
5. DHCPREQUEST, DHCPACK y DHCPNAK — Extensión
Cuando expira la mitad del período de arrendamiento (T1), el cliente envía un mensaje DHCPREQUEST al servidor, solicitando una extensión del arrendamiento.
Si el servidor acepta la solicitud, envía un mensaje DHCPACK al cliente en respuesta y su tiempo de arrendamiento comienza de nuevo.
Si no se recibe la respuesta a la solicitud, el cliente envía la solicitud después de que haya expirado otro 25% del período de alquiler. Si pasa el 87,5% del período de arrendamiento (T2) y no se recibe respuesta del servidor de origen, el cliente comienza a enviar solicitudes de difusión y a partir de ese momento puede recibir una dirección de cualquier servidor DHCP.
El servidor puede rechazar la solicitud de extensión con un mensaje DHCPNAK. Después de eso, el cliente reenvía el mensaje de difusión DHCPDISCOVER.
Cuando finaliza el período de alquiler, el cliente inicia de nuevo el proceso de DORA.
6. DHCPRELEASE-finalización
El cliente completa la concesión enviando un mensaje DHCPRELEASE al servidor. Después de eso, la dirección IP del cliente desconectado se devuelve al grupo.
Ventajas y desventajas del protocolo DHCP
Ventajas
El uso del protocolo DHCP tiene ventajas significativas sobre la asignación manual de direcciones IP.
- Las conexiones de red se manejan sin la participación del administrador en un solo dispositivo, un servidor DHCP, lo que reduce la mano de obra requerida para administrar la red.
- Se permiten muchos menos errores, como errores tipográficos o conflictos de direcciones, que con la configuración manual.:
- Los dispositivos portátiles conectados a una red Wi-Fi, como las computadoras portátiles de los estudiantes que se mueven de un aula a otra, cambian instantáneamente su dirección cuando se mueven a otros segmentos de la red, y los usuarios apenas notan interrupciones en la conexión.
Desventajas
También hay algunas dificultades asociadas con el uso del protocolo DHCP que deben tenerse en cuenta.
- Si solo se configura un servidor DHCP en la red, puede ser un único punto de falla: los nuevos clientes no podrán obtener direcciones IP. Los clientes que ya hayan recibido sus direcciones las utilizarán hasta el final del período de arrendamiento.
- Si la red administrada está dividida en subredes y el servidor está instalado solo en una de las subredes, entonces los agentes de retransmisión deben configurarse en el resto, ya que los paquetes DHCP no pasan de una subred a otra.
- Existen riesgos de seguridad para la red donde está configurado el servidor DHCP. Un atacante puede configurar su propio servidor DHCP en una red local con una configuración de red incorrecta para que los dispositivos cliente pierdan el acceso a la red u organizar una secuencia de mensajes DHCPREQUEST falsos para agotar rápidamente el grupo de direcciones en el servidor. Es necesario tener en cuenta la posibilidad de tales ataques y tomar medidas para proteger la red local.
Interacción de los protocolos DHCP y DNS
DNS (Sistema de Nombres de Dominio) es un sistema de nombres jerárquico y descentralizado para computadoras, servicios y otros objetos en una red conectada a Internet o una red privada. DNS funciona como una guía telefónica: le permite correlacionar nombres de dominio que son convenientes para que las personas los recuerden y direcciones IP numéricas que son convenientes de usar para la administración de computadoras.
DNS consta de miles de servidores que se ejecutan en un solo sistema. Si un servidor no puede resolver el nombre o la IP, es decir, convertir el nombre en una dirección o viceversa, accede a otro, que a su vez accede al siguiente, etc.
Para encontrar los recursos necesarios por sus nombres de dominio, los dispositivos acceden al servidor DNS. Su dirección se incluye en el conjunto de parámetros de red que reciben del servidor DHCP cuando se conectan. Un servidor DNS es un programa, al igual que un servidor DHCP, y puede ejecutarse en la misma computadora o enrutador que él.
Para acceder a direcciones externas, el servidor DNS no tiene que estar ubicado dentro de la red local y puede usar un servicio externo. A menudo, un servidor público gratuito se utiliza como servidor DNS externo, por ejemplo, de Google o CloudFlare.
El protocolo DHCP, sin duda, simplifica la gestión de la red. También tiene inconvenientes; las amenazas a la seguridad requieren una atención especial. Al mismo tiempo, los principios básicos y la arquitectura de DHCP no cambian, y las redes modernas rara vez prescinden del uso de este protocolo.
