Servidor DHCP Linux


De nuevo con otro artículo/manual para la implementación de servicios en GNU/Linux. En esta ocasión implementaremos un servicio de DHCP. Para hacerlo, solo necesitaremos una instancia de Alma Linux. Sin embargo, no es necesario que sea esta distribución.

Antes que nada, es importante que dentro del segmento de red no exista otro servidor DHCP (ej. el que tienen la mayoría de routers/firewalls en la red). Cerciórate de que este servicio esté desactivado antes de hacer cualquier configuración. Una vez realizado esto, es necesario realizar la actualización de paquetes de nuestro sistema, así como la instalación del paquete DHCP desde nuestra terminal o conexión por ssh como usuarios con privilegios o directamente root. Es importante que el servidor que usemos tenga una IP estática.

dnf update &&  dnf install dhcp

En nuestro caso hipotético la información de red es la siguiente:

Segmento: 10.0.0.0/24 Router: 10.0.0.1 Máscara de red: 255.255.255.0 (CIDR 24) DNS Server: 208.67.222.222 (Estos son los DNS de OpenDNS. Si hay alguno local o quieres utilizar otro lo podemos incluir)

Ahora bien, recordemos que todas las configuraciones en Linux son un archivo. Por ello iremos a configurar el correspondiente a este servicio. Puedes utilizar cualquier editor de texto, en mi caso utilizo vim:

vim /etc/dhcp/dhcpd.conf

Una vez dentro, presionamos la tecla ‘e’ para entrar en el modo edición.

Ahora escribiremos lo siguiente dentro del archivo:

# TIEMPO PARA LIBERAR LAS DIRECCIONES EN LA RED,
# ESTA CONFIGURACIÓN ES GENERAL

default-lease-time 600;
max-lease-time 7200;

# RANGO DE RED A CONFIGURAR
subnet 10.0.0.0 netmask 255.255.255.0 {
    option range 10.0.0.100 10.0.0.200;
    option router 10.0.0.1;
    option domain-name-servers 208.67.222.222;
    option domain-controller;
}

En caso de que queramos reservar direcciones IP, podemos hacerlo por medio de MAC Addresss de la siguiente forma:

# IP RESERVADA PARA EL EQUIPO CON L MAC ADDRESS  00:A0:78:8E:9E:AA
# DE IGUAL FORMA LE RESERVAMOS UN NOMBRE POR MEDIO DE ESTE SERVICIO
# EN ESTE CASO  ‘apex.example.com’

host apex {
option host-name "apex.example.com";
hardware ethernet 00:A0:78:8E:9E:AA;
fixed-address 10.0.0.2;
}

Una vez terminamos de editar estas opciones, podremos guardar nuestro archivo. Para esto presionamos la tecla ‘esc’ seguido de ‘:x’ y damos ‘enter’. Con esto habremos escrito el archivo.

Es momento de reiniciar el servicio para ver los cambios:

systemctl start dhcpd

También lo podemos habilitar para que se inicie automáticamente en cada reboot:

systemctl enable dhcpd

Ahora bien, bastará con conectar un nuevo equipo a esta red y este deberá recibir una ip de nuestro rango de forma automática.

Video Referencia en el curso de servidores (Debian Server): https://www.youtube.com/watch?v=rp9lPKC-yTk&list=PLHZHedbtfQEOsUzXIlliX9rLG_3NsxjBH&index=2&ab_channel=EtherGroup

¡Happy Hacking!