Cómo instalar y configurar el servidor DHCP de ISC de host múltiple en Debian Linux


El Protocolo de control dinámico de host (DHCP) ofrece un método rápido para que los administradores de red proporcionen direccionamiento de capa de red a los hosts en una red dinámica o en constante cambio. Una de las utilidades de servidor más comunes para ofrecer funcionalidad DHCP es ISC DHCP Server. El objetivo de este servicio es proporcionar a los hosts la información de red necesaria para poder comunicarse en las redes en las que está conectado el host. La información que normalmente proporciona este servicio puede incluir: información del servidor DNS, dirección de red (IP), máscara de subred, información de puerta de enlace predeterminada, nombre de host y mucho más.

Este tutorial cubrirá ISC-DHCP-Server versión 4.2.4 en un servidor Debian 7.7 que administrará múltiples redes de área local virtual (VLAN) pero que también se puede aplicar fácilmente a una configuración de red única.

La red de prueba en la que se configuró este servidor se ha basado tradicionalmente en un enrutador Cisco para administrar las concesiones de direcciones DHCP. Actualmente, la red tiene 12 VLAN que deben ser administradas por un servidor centralizado. Al trasladar esta responsabilidad a un servidor dedicado, el enrutador puede recuperar recursos para tareas más importantes como enrutamiento, listas de control de acceso, inspección de tráfico y traducción de direcciones de red.

El otro beneficio de mover DHCP a un servidor dedicado, en una guía posterior, implicará configurar el Servicio de nombre de dominio dinámico (DDNS) para que los nuevos nombres de host se agreguen al sistema DNS cuando el host solicite una dirección DHCP del servidor.

Paso 1: Instalación y configuración del servidor DHCP de ISC

1. Para iniciar el proceso de creación de este servidor multi-alojado, el software ISC debe instalarse a través de los repositorios de Debian usando la utilidad " apt ". Al igual que con todos los tutoriales, se asume el acceso root o sudo. Realice las modificaciones adecuadas en los siguientes comandos.

# apt-get install isc-dhcp-server 		[Installs the ISC DHCP Server software]
# dpkg --get-selections isc-dhcp-server		[Confirms successful installation]
# dpkg -s isc-dhcp-server 			[Alternative confirmation of installation]

2. Ahora que se ha confirmado que el software del servidor está instalado, es necesario configurar el servidor con la información de red que deberá entregar. Como mínimo, el administrador debe conocer la siguiente información para un alcance DHCP básico:

  1. The network addresses
  2. The subnet masks
  3. The range of addresses to be dynamically assigned

Otra información útil para que el servidor asigne dinámicamente incluye:

  1. Default gateway
  2. DNS server IP addresses
  3. The Domain Name
  4. Host name
  5. Network Broadcast addresses

Estas son solo algunas de las muchas opciones que puede manejar el servidor DHCP de ISC. Para obtener una lista completa y una descripción de cada opción, ingrese el siguiente comando después de instalar el paquete:

# man dhcpd.conf

3. Una vez que el administrador ha concluido toda la información necesaria para que este servidor la entregue, es momento de configurar el servidor DHCP así como los pools necesarios. Sin embargo, antes de crear grupos o configuraciones de servidor, el servicio DHCP debe configurarse para escuchar en una de las interfaces del servidor.

En este servidor en particular, se ha configurado un equipo de NIC y DHCP escuchará en las interfaces en equipo que recibieron el nombre 'bond0' . Asegúrese de realizar los cambios adecuados según el servidor y el entorno en el que se configura todo. Los valores predeterminados de este archivo están bien para este tutorial.

Esta línea indicará al servicio DHCP que escuche el tráfico DHCP en las interfaces especificadas. En este punto, es el momento de modificar el archivo de configuración principal para habilitar los grupos DHCP en las redes necesarias. El archivo de configuración principal se encuentra en /etc/dhcp/dhcpd.conf. Abra el archivo con un editor de texto para comenzar:

# nano /etc/dhcp/dhcpd.conf

Este archivo es la configuración para las opciones específicas del servidor DHCP, así como para todos los grupos/hosts que se desean configurar. La parte superior del archivo comienza con una cláusula 'ddns-update-style' y para este tutorial permanecerá establecida en 'none'; sin embargo, en un artículo futuro, se cubrirá el DNS dinámico e ISC-DHCP-Server se integrará con BIND9 para habilitar el nombre de host para las actualizaciones de direcciones IP.

4. La siguiente sección suele ser el área en la que el administrador puede configurar la configuración de red global, como el nombre de dominio DNS, el tiempo de concesión predeterminado para direcciones IP, máscaras de subred y mucho más. Nuevamente, para saber más sobre todas las opciones, asegúrese de leer la página del manual del archivo dhcpd.conf.

# man dhcpd.conf

Para la instalación de este servidor, había un par de opciones de red global que se configuraron en la parte superior del archivo de configuración para que no tuvieran que implementarse en cada grupo creado.

Tomemos un momento para explicar algunas de estas opciones. Si bien están configurados globalmente en este ejemplo, todos ellos también se pueden configurar por grupo.

  1. option domain-name “comptech.local”; – All hosts that this DHCP server hosts, will be a member of the DNS domain name “comptech.local”
  2. option domain-name-servers 172.27.10.6; – DHCP will hand out DNS server IP of 172.27.10.6 to all of the hosts on all of the networks it is configured to host.
  3. option subnet-mask 255.255.255.0; – The subnet mask handed out to every network will be a 255.255.255.0 or a /24
  4. default-lease-time 3600; – This is the time in seconds that a lease will automatically be valid. The host can re-request the same lease if time runs out or if the host is done with the lease, they can hand the address back early.
  5. max-lease-time 86400; – This is the maximum amount of time in seconds a lease can be held by a host.
  6. ping-check true; – This is an extra test to ensure that the address the server wants to assign out isn’t in use by another host on the network already.
  7. ping-timeout; – This is how long in second the server will wait for a response to a ping before assuming the address isn’t in use.
  8. ignore client-updates; – For now this option is irrelevant since DDNS has been disabled earlier in the configuration file but when DDNS is operating, this option will ignore a hosts to request to update its host-name in DNS.

5. La siguiente línea de este archivo es la línea del servidor DHCP autorizado. Esta línea significa que si este servidor va a ser el servidor que distribuye las direcciones para las redes configuradas en este archivo, descomente la estrofa autorizada.

Este servidor será la única autoridad en todas las redes que administra, por lo que la estrofa de autoridad global no se comentó al eliminar el "#" delante de la palabra clave autoritativa.