Saltar a contenido

Desplegado de DHCP

Para nuestro proyecto haremos uso de isc-dhcp-server, el cuál configuraremos para proporcionar configuraciones de red a los clientes que se conecten a la red interna y los servidores Wordpress, cuya dirección IP será reservada según su dirección MAC.

Instalación

El servicio isc-dhcp-server se instalará con el siguiente comando:

sudo apt update && sudo apt install -y isc-dhcp-server

Si comprobamos el estado del servicio después de instalarlo, podremos ver que no está funcionando todavia, con lo que comenzaremos a configurarlo.

Error de "isc-dhcp-server".

Error de "isc-dhcp-server".

Configuración

Para configurar el servicio, hemos accedido al archivo /etc/dhcp/dhcpd.conf y lo hemos modificado de la manera vista a continuación:

option domain-name "pve1.fpmislata.fp";
default-lease-time 64800;
max-lease-time 86400;
ddns-update-style none;

host wordpress1 {
    hardware ethernet bc:24:11:74:3a:f0;
    fixed-address 192.168.6.253;
}

subnet 192.168.6.0 netmask 255.255.255.0 {
    option routers 192.168.6.1;
    option subnet-mask 255.255.255.0;
    option broadcast-address 192.168.6.255;
    option domain-name-servers 192.168.6.254;

    range 192.168.6.10 192.168.6.200;
}

Como se podrá ver, hemos utilizado una configuración sencilla para la red, siendo estos algunos de los parámetros más importantes:

  • Rango de direcciones IP proporcionadas entre 192.168.6.10 y 192.168.6.200.
  • Dirección de puerta de enlace 192.168.6.1.
  • Sufijo de red pve1.fpmislata.fp.
  • Dirección de servidor DNS 192.168.6.254.
  • Dirección reservada a wordpress1.

Para poder encontrar la dirección MAC utilizada por wordpress1, se ejecutó ip link en este:

Dirección MAC de "wordpress1".

Dirección MAC de "wordpress1".

Un detalle que se podrá ver se trata del uso de la dirección IP del servidor frontera1 como servidor DNS en contraposición al uso de los servidores DNS de CloudFlare y Google como se realizó en la instalación, esto se debe a que después de esta sección se configurará un servidor DNS en frontera1.

Otra configuración importante que siempre deberíamos tener en cuenta es limitar el alcance del servidor DHCP para que este solo proporcione direcciones a una interfaz específica. Para esto modificaremos el archivo /etc/default/isc-dhcp-server y también desactivaremos el uso de IPv6:

INTERFACESv4="ens18"
# INTERFACESv6=""
Note

Mientras que esta configuración parecerá inútil en este caso ya que frontera1 se encuentra aislada en una red interna, es igualmente buena práctica especialmente para casos en los que el servidor DHCP tenga múltiples interfaces.

Una vez terminado, podremos reiniciar el servicio y comprobar que este funcione correctamente:

Servicio DHCP reiniciándose correctamente.

Servicio DHCP reiniciándose correctamente.

Comprobaciones

Ahora desde wordpress1, modificaremos el archivo /etc/netplan/50-cloud-init.yaml, desactivando las configuraciones estáticas y las reemplazaremos con una automática:

network:
  version: 2
  ethernets:
    ens18:
      dhcp4: true

Ahora si ejecutamos sudo netplan apply, podremos comprobar que recibe la configuración de red correcta, incluyendo la dirección IP reservada (192.168.6.253).

Configuración DHCP recibida por el cliente.

Configuración DHCP recibida por el cliente.

También será posible observar el proceso DORA(1) desde frontera1 con systemctl status isc-dhcp-server.

  1. Proceso de solicitud de configuración de red entre un cliente y un servidor DHCP (DISCOVERY -> OFFER -> REQUEST -> ACK).

Petición DHCP de "wordpress1" vista desde "frontera1".

Petición DHCP de "wordpress1" vista desde "frontera1".