Un Relay Agent (o Agente de retransmisión, comúnmente asociado a DHCP Relay Agent) es una función o servicio configurado en un dispositivo de Capa 3 (habitualmente un router o un switch multicapa) que intercepta las peticiones de difusión (broadcast) de control de red emitidas por los clientes y las retransmite mediante un tráfico unidifusión (unicast) hacia un servidor centralizado situado en otra subred o VLAN distante. Su propósito principal es reenviar de forma segura las solicitudes de configuración IP (DHCP) entre clientes y servidores que se encuentran ubicados en subredes o redes locales distintas.
Puesto que los routers bloquean por definición las emisiones en broadcast para evitar tormentas de tráfico y mantener separados los dominios de difusión, un cliente en una subred remota no podría alcanzar directamente a un servidor DHCP. El Relay Agent actúa como un puente intermediario necesario en redes corporativas complejas, permitiendo centralizar la asignación de direcciones IP sin necesidad de instalar un servidor dedicado en cada subred lógica.
El uso de un Relay Agent permite romper la limitación física que impone un dominio de difusión para el descubrimiento de servicios de red. Suele configurarse directamente en las interfaces lógicas de puerta de enlace (SVI o subinterfaces de router) de cada subred o VLAN de usuarios. Reduce notablemente los costes de licenciamiento y hardware al evitar el despliegue de múltiples servidores dedicados.Componentes y características clave de un Relay Agent:
- Conversión de Broadcast a Unicast: Las peticiones iniciales de los clientes (DHCP Discover) se envían mediante difusión (broadcast) y mueren al llegar al router. El Relay Agent "captura" de forma controlada estos paquetes y los transforma en mensajes dirigidos (unicast) hacia la IP exacta del servidor remoto.
- Inserción del campo GIADDR: Al interceptar la petición, el agente añade un dato crítico dentro del paquete DHCP conocido como Gateway IP Address (GIADDR), usando la IP de su interfaz local. De este modo, el servidor DHCP centralizado sabe con total precisión desde qué subred proviene la petición para elegir el pool de direcciones correcto.
- Flexibilidad de red: Permite centralizar la gestión de red de toda una corporación en un único servidor DHCP (o un clúster de alta disponibilidad) ubicado de manera segura en un centro de datos.
¿Cómo funciona el proceso de un DHCP Relay Agent?
Cuando un cliente inicializa su tarjeta de red e intenta obtener una dirección IP en una red con un agente de retransmisión, se ejecuta la secuencia DHCP DORA adaptada a través del router intermediario:
- 1. Captura del mensaje de difusión: El cliente emite un mensaje
DHCPDISCOVERen difusión local (dirección de destino255.255.255.255). - 2. Intercepción por la interfaz local: La interfaz del router (que actúa como puerta de enlace y tiene activado el servicio de Relay) escucha la petición en el puerto UDP 67.
- 3. Encapsulación y modificación: El Relay Agent añade su propia IP de interfaz en el campo
giaddr(Gateway IP Address) del paquete DHCP para indicarle al servidor desde qué subred viene la solicitud, y cambia la dirección IP de destino por la IP Unicast del servidor DHCP real. - 4. Retransmisión Unicast al servidor: El paquete viaja por la infraestructura de red enrutada hasta llegar al servidor centralizado.
- 5. Respuesta del servidor: El servidor analiza el campo
giaddr, selecciona un rango/pool de direcciones libre perteneciente a esa subred concreta y responde con un mensajeDHCPOFFERUnicast dirigido al Relay Agent. - 6. Entrega al cliente final: El Relay Agent recibe la respuesta y la entrega en la red local de origen mediante difusión o unicast directamente a la dirección MAC del cliente.
Relay Agent vs. Servidor DHCP dedicado en cada VLAN
| Criterio de comparación | Servidores DHCP locales independientes | Servidor DHCP centralizado con Relay Agent |
|---|---|---|
| Infraestructura de hardware | Requiere un servidor o punto de acceso actuando como DHCP por cada VLAN/Subred. | Un único servidor DHCP centralizado para toda la organización. |
| Gestión y Mantenimiento | Compleja y descentralizada; hay que configurar rangos en múltiples equipos. | Sencilla y unificada en un único punto de administración. |
| Uso de tráfico de red | Tráfico 100% local a la subred en difusión. | Convierte el broadcast inicial en tráfico unicast a través de la WAN/LAN. |
| Función del Router | Simplemente reenvía el tráfico de datos habitual. | Debe tener activado el comando de retransmisión (ej. ip helper-address) en cada interfaz. |
Mapeo del Relay Agent en IPv4 (DHCPv4) e IPv6 (DHCPv6)
| Protocolo | Tipo de Tráfico Inicial | Comando de configuración típico (Cisco IOS) | Mensajes clave del protocolo |
|---|---|---|---|
| DHCPv4 Relay | Broadcast (255.255.255.255) |
ip helper-address <IP_Servidor_DHCP> |
DISCOVER → OFFER → REQUEST → ACK (Campos modificado: giaddr). |
| DHCPv6 Relay | Multicast (ff02::1:2 - All DHCP Agents) |
ipv6 dhcp relay destination <IP_Servidor_DHCPv6> |
RELAY-FORWARD / RELAY-REPLY (encapsula el mensaje original en un túnel de control). |
Analogía: Imagina una gran empresa multinacional dividida en varias plantas de oficinas cerradas sin teléfono directo con Dirección. Un empleado (el cliente) grita en voz alta en medio de su planta buscando un formulario (broadcast). El jefe de planta (el Relay Agent) escucha el grito, anota de qué departamento viene la petición, envía una carta certificada directa al Departamento Central de Recursos Humanos (unicast) y, cuando recibe la respuesta, se la entrega en mano a su empleado.
Actividad práctica
Relay Agent Configurar un servidor DHCP para dos routers (Práctica con Packet Tracer)Preguntas de reflexión:
- ¿Por qué la primera solicitud DHCP de un cliente no puede llegar por sí sola a un servidor ubicado en otra subred o VLAN?
- ¿Qué campo específico introduce el Relay Agent dentro del paquete DHCP para que el servidor sepa qué rango de direcciones IP (pool) debe asignar al cliente?
- En un router Cisco, ¿qué comando de configuración de interfaz se utiliza para activar la función de DHCP Relay Agent en IPv4?
- ¿Qué ocurre si la dirección IP configurada en el comando
ip helper-addresses incorrecta o inalcanzable desde el router? - ¿Qué diferencia existe en la forma en que los clientes descubren al Relay Agent entre una red IPv4 (DHCPv4) y una red IPv6 (DHCPv6)?
Haz clic aquí para ver las soluciones y explicaciones
1. ¿Por qué la primera solicitud DHCP de un cliente no puede llegar por sí sola a un servidor ubicado en otra subred o VLAN?
Porque un cliente que aún no tiene una dirección IP desconoce la dirección del servidor DHCP y envía su primera solicitud (DHCPDISCOVER) como una difusión (broadcast) a la dirección 255.255.255.255. Este tipo de tráfico solo tiene alcance dentro de la red local y los routers no reenvían broadcasts entre subredes o VLAN por defecto, por lo que la solicitud no puede llegar directamente al servidor DHCP. Por ello, es necesario configurar un agente de retransmisión DHCP (DHCP Relay Agent), cuya función es reenviar las solicitudes DHCP entre distintas subredes o VLAN.
2. ¿Qué campo específico introduce el Relay Agent dentro del paquete DHCP para que el servidor sepa qué rango de direcciones IP (pool) debe asignar al cliente?
El campo giaddr (Gateway IP Address). El Relay Agent inscribe en este campo la dirección IP de su propia interfaz local por la que recibió la solicitud. El servidor DHCP lee este dato y busca en su base de datos el pool que coincide exactamente con esa subred de procedencia.
3. En un router Cisco, ¿qué comando de configuración de interfaz se utiliza para activar la función de DHCP Relay Agent en IPv4?
El comando es ip helper-address <Dirección_IP_del_Servidor>, introducido bajo el modo de configuración de la interfaz o subinterfaz que atiende a los clientes de esa subred.
4. ¿Qué ocurre si la dirección IP configurada en el comando ip helper-address es incorrecta o inalcanzable desde el router?
El router recibirá la petición broadcast del cliente pero no podrá entregar el paquete retransmitido al servidor centralizado. Como consecuencia, el cliente no recibirá respuesta, agotará su tiempo de espera (timeout) y acabará asignándose una dirección IP privada automática de tipo APIPA (rango 169.254.x.x) sin acceso a la red externa.
5. ¿Qué diferencia existe en la forma en que los clientes descubren al Relay Agent entre una red IPv4 (DHCPv4) y una red IPv6 (DHCPv6)?
En IPv4, el cliente emite una trama de difusión limitada en broadcast (255.255.255.255). En IPv6, dado que el broadcast fue eliminado, el cliente envía un mensaje mediante multicast dirigido al grupo reservado de todos los agentes y servidores DHCPv6 (ff02::1:2).