Cómo instalar un servidor DHCP en Ubuntu y Debian


El Protocolo de configuración dinámica de host (DHCP) es un protocolo de red que se utiliza para permitir que a las computadoras host se les asignen automáticamente direcciones IP y configuraciones de red relacionadas desde un servidor.

La dirección IP asignada por un servidor DHCP al cliente DHCP está en una "concesión", el tiempo de concesión normalmente varía dependiendo de cuánto tiempo es probable que una computadora cliente requiera la conexión o la configuración DHCP.

La siguiente es una descripción rápida de cómo funciona realmente DHCP:

  • Una vez que un cliente (que está configurado para usar DHCP) y conectado a una red se inicia, envía un paquete DHCPDISCOVER al servidor DHCP.
  • Cuando el servidor DHCP recibe el paquete de solicitud DHCPDISCOVER, responde con un paquete DHCPOFFER.
  • Luego, el cliente recibe el paquete DHCPOFFER y envía un paquete DHCPREQUEST al servidor que muestra que está listo para recibir la información de configuración de red proporcionada en el paquete DHCPOFFER.
  • Finalmente, después de que el servidor DHCP recibe el paquete DHCPREQUEST del cliente, envía el paquete DHCPACK mostrando que el cliente ahora puede usar la dirección IP asignada.

En este artículo, le mostraremos cómo configurar un servidor DHCP en Ubuntu/Debian Linux, y ejecutaremos todos los comandos con el comando sudo para obtener privilegios de usuario root.

Vamos a utilizar el siguiente entorno de prueba para esta configuración.

DHCP Server - Ubuntu 16.04 
DHCP Clients - CentOS 7 and Fedora 25

Paso 1: Instalación del servidor DHCP en Ubuntu

1. Ejecute el siguiente comando para instalar el paquete del servidor DCHP, que antes se conocía como dhcp3-server.

$ sudo apt install isc-dhcp-server

2. Cuando se complete la instalación, edite el archivo/etc/default/isc-dhcp-server para definir las interfaces que DHCPD debe usar para atender las solicitudes de DHCP, con la opción INTERFACES.

Por ejemplo, si desea que el demonio DHCPD escuche en eth0 , configúrelo así:

INTERFACES="eth0"

Y también aprenda a configurar una dirección IP estática para la interfaz anterior.

Paso 2: configurar el servidor DHCP en Ubuntu

3. El archivo principal de configuración de DHCP es /etc/dhcp/dhcpd.conf , debe agregar toda la información de su red para enviarla a los clientes aquí.

Y hay dos tipos de declaraciones definidas en el archivo de configuración de DHCP, estos son:

  • parámetros: especifique cómo realizar una tarea, si realizar una tarea o qué opciones de configuración de red enviar al cliente DHCP.
  • declaraciones: defina la topología de la red, indique los clientes, ofrezca direcciones para los clientes o aplique un grupo de parámetros a un grupo de declaraciones.

4. Ahora, abra y modifique el archivo de configuración principal, defina las opciones de su servidor DHCP:

$ sudo vi /etc/dhcp/dhcpd.conf 

Establezca los siguientes parámetros globales en la parte superior del archivo, se aplicarán a todas las declaraciones a continuación (especifique valores que se apliquen a su escenario):

option domain-name "tecmint.lan";
option domain-name-servers ns1.tecmint.lan, ns2.tecmint.lan;
default-lease-time 3600; 
max-lease-time 7200;
authoritative;

5. Ahora, defina una subred; aquí, configuraremos DHCP para la red LAN 192.168.10.0/24 (use los parámetros que se apliquen a su escenario).

subnet 192.168.10.0 netmask 255.255.255.0 {
        option routers                  192.168.10.1;
        option subnet-mask              255.255.255.0;
        option domain-search            "tecmint.lan";
        option domain-name-servers      192.168.10.1;
        range   192.168.10.10   192.168.10.100;
        range   192.168.10.110   192.168.10.200;
}

Paso 3: configurar la IP estática en la máquina cliente DHCP

6. Para asignar una dirección IP fija (estática) a una computadora cliente en particular, agregue la sección a continuación donde necesita especificar explícitamente sus direcciones MAC y la IP que se asignará estáticamente:

host centos-node {
	 hardware ethernet 00:f0:m4:6y:89:0g;
	 fixed-address 192.168.10.105;
 }

host fedora-node {
	 hardware ethernet 00:4g:8h:13:8h:3a;
	 fixed-address 192.168.10.106;
 }

Guarde el archivo y ciérrelo.

7. A continuación, inicie el servicio DHCP por el momento y habilítelo para que se inicie automáticamente desde el siguiente inicio del sistema, así:

------------ SystemD ------------ 
$ sudo systemctl start isc-dhcp-server.service
$ sudo systemctl enable isc-dhcp-server.service


------------ SysVinit ------------ 
$ sudo service isc-dhcp-server.service start
$ sudo service isc-dhcp-server.service enable

8. A continuación, no olvide permitir el servicio DHCP (el demonio DHCPD escucha en el puerto 67/UDP) en el firewall como se muestra a continuación:

$ sudo ufw allow  67/udp
$ sudo ufw reload
$ sudo ufw show

Paso 4: Configuración de equipos cliente DHCP

9. En este punto, puede configurar las computadoras de sus clientes en la red para recibir automáticamente direcciones IP del servidor DHCP.

Inicie sesión en las computadoras cliente y edite el archivo de configuración de la interfaz Ethernet de la siguiente manera (tome nota del nombre/número de la interfaz):

$ sudo vi /etc/network/interfaces

Y defina las opciones a continuación:

auto  eth0
iface eth0 inet dhcp

Guarda el archivo y cierra. Y reinicie los servicios de red como tal (o reinicie el sistema):

------------ SystemD ------------ 
$ sudo systemctl restart networking

------------ SysVinit ------------ 
$ sudo service networking restart

Alternativamente, use la GUI en una máquina de escritorio para realizar la configuración, configure el Método en Automático (DHCP) como se muestra en la captura de pantalla a continuación (escritorio Fedora 25).

En este punto, si todos los ajustes están configurados correctamente, su máquina cliente debería recibir direcciones IP automáticamente del servidor DHCP.

¡Eso es! En este tutorial, le mostramos cómo configurar un servidor DHCP en Ubuntu/Debian. Comparta sus pensamientos con nosotros a través de la sección de comentarios a continuación. Si está utilizando una distribución basada en Fedora, consulte cómo configurar un servidor DHCP en CentOS/RHEL.