Existen multitud de servicios que ofrecen la funcionalidad de DHCP dentro de una distribución Linux. Aquí se explicará el servicio idc-dhcp-server. Antes de comenzar se debe tener el sistema actualizado
apt-get update apt-get upgrade
Una vez actualizado se cuenta que un servidor tiene una dirección ip estática para que todas aquellas máquinas que apunten siempre sean capaces de encontrarla
sudo nano /etc/network/interfaces iface enp0s3 inet static address 10.0.0.2 netmask 255.255.255.0 broadcast 10.0.0.255 gateway 10.0.0.253
/etc/init.d/networking restart
Una vez esto está configurado se configura el archivo de concesiones situado en /etc/dhcp/dhcpd.conf (recomendable realizar una copia). En el caso de no estar presente se debe instalar el servicio idc-dhcp-server:
sudo nano /etc/dhcp/dhcpd.conf subnet 10.0.0.0 netmask 255.255.255.0 { range 10.0.0.1 10.0.0.253; option domain-name-servers 10.0.0.2; option broadcast-address 10.0.0.255; option routers 10.0.0.254; }
Las opciones de configuración posibles en este archivo son:
subnet – netmask: Subred que se va a aplicar y mascara de red.
range: rango de direcciones ip a otrorgar.
option domain-name-servers. dirección dns a repartir.
option domain-name. nombre de dominio a repartir
option routers. puerta de enlace a repartir
option broadcast-address. dirección de difusión.
default-lease-time. tiempo por defecto que reservará una IP.
max-lease-time. tiempo máximo que se reservará una IP.
Una vez hecho eso se indica en el archivo /etc/default/isc-dhcp-server la interfaz de red que realizará las concesiones
INTERFACES="ens0p3"
Por último se reinicia el servicio o se para/arranca
/etc/init.d/isc-dhcp-server restart
Si se quiere reservar direcciones ips para equipos concretos se debe identificar cada uno de los mimos con su MAC e IP a reservar dentro del fichero de configuración
sudo nano /etc/dhcp/dhcpd.conf host nombre_equipo{ hardware ethernet AA:AA:AA:AA:AA:AA fixed-address 10.0.0.3 }
Para poder ver las concesiones realizadas por el servicio se muestra en contendido
cat /var/lib/dhcp/dhcpd.release