ISC Relay Agent
En muchas situaciones se precisa que el servidor DHCP atienda a más de un segmento de red. Para conseguir esto se pueden hacer dos cosas:
- Conectar el servidor DHCP a todos los segmentos de red, con lo que habrá que instalarle varias tarjetas de red, una por cada segmento.
- Usar un DHCP relay agent conectado a cada segmento de red menos al segmento donde se encuentre el servidor DHCP.
El DHCP relay agent cuando recibe una petición de IP de un cliente lo que hace es registrar dicha petición y enviar una propia al servidor DHCP en la cual, en el campo giaddr ha colocado la dirección IP de la interfaz por la que entró la petición del cliente. Cuando el servidor recibe la petición del relay agent mira el campo giaddr para saber la subred del cliente y así elegir la IP correcta; elegida ésta, le envía la al relay agent mediante unicast y éste a su vez al cliente mediante broadcast.
La configuración que se muestra en la imagen anterior tiene la desventaja de que hay que poner un equipo en cada red para que funcione como agent relay. Otra opción es que el relay agent esté en el(los) router (los router de Cisco lo traen), con el consiguiente ahorro económico y de administración. Algunos routers traen incorporado ya un relay agent por lo que la configuración de la red quedaría así:
En el caso de que el router no disponga de este servicio, otra opción sería utilizar un equipo barato con un GNU/Linux y el software del relay agent. Esto se muestra en la siguiente figura:
ISC ha implementado el ISC Relay Agent que podemos instalar con el siguiente comando:
# aptitude install isc-dhcp-relay
Los ficheros a tener en cuenta son los siguientes:
- /usr/sbin/dhcrelay: es el demonio del relay agent (man dhcrealy).
- /etc/init.d/isc-dhcp-relay: script desde donde controlar al relay agent.
# /etc/init.d/isc-dhcp-relay
Usage: /etc/init.d/isc-dhcp-relay {start|stop|restart|force-reload}
- /etc/default/isc-dhcp-relay: fichero de configuración del relay agent.
Licencia: licencia de software libre GPL