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