DHCP (siglas en inglés de Dynamic Host Configuration Protocol, en castellano Protocolo de Configuración Dinámica de Host) es un protocolo de red que permite a los clientes de una red IP obtener sus parámetros de configuración automáticamente. Se trata de un protocolo de tipo cliente/servidor en el que generalmente un servidor posee una lista de direcciones IP dinámicas y las va asignando a los clientes conforme éstas van quedando libres, sabiendo en todo momento quién ha estado en posesión de esa IP, cuánto tiempo la ha tenido y a quién se la ha asignado después.

IntroDHCP1

Instalación en GNU/Linux

Para instalar un servidor de DHCP tan sólo hay que instalar este paquete:

Para distribuciones basadas en Debian:

$ apt-get install dhcpd

Para distribuciones basadas en Red Hat:

$ yum install dhcpd

Configuración de ejemplo

Para hacer este tutorial usaremos una IP de ejemplo para ver como se realiza la configuración, en este caso usaremos:

  • IP Local: 172.16.100.21
  • Red con IP’s dinámicas: 172.16.121.101 – 172.16.121.254
  • Red con IP’s estáticas: 172.16.121.1 – 172.16.121.100

Configuración del servidor DHCP

Nuestro servidor tendrá la IP Local que hemos asignado en el apartado anterior, de esta manera cuando ejecutemos ifconfig veremos lo siguiente:

eth0:1    Link encap:Ethernet  HWaddr 10:c3:7b:4c:8e:36
          inet addr:172.16.100.21  Bcast:172.16.255.255  Mask:255.255.0.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:20 Memory:f7100000-f7120000

En el servidor tendremos que modificar el fichero de configuración /etc/dhcp/dhcpd.conf donde escribiremos las siguientes configuraciones para las diferentes redes.

Asignar IP dinámica

Tenemos que asignar IP’s dinámicas de 172.16.121.101 hasta la 172.16.121.254 para eso en el fichero de configuración añadiremos lo siguiente:

subnet 172.16.0.0 netmask 255.255.0.0 {
        range 172.16.121.101 172.16.121.254;
}

Así de sencillo! Con poner el ID de red, la mascara y el rango, el servidor DHCP podría empezar a repartir IP’s a maquinas de la red. Aún así, añadiremos unas cuantas frases más dentro del fichero:

default-lease-time 86400;
max-lease-time 604800;
authoritative;
 
subnet 172.16.0.0 netmask 255.255.0.0 { 
        range 172.16.121.101 172.16.121.254; 
        option subnet-mask 255.255.0.0; 
        option broadcast-address 172.16.255.255; 
        option routers 172.16.100.21; 
        option domain-name-servers 172.16.100.21; 
}

Una vez hemos guardado la configuración, lo de siempre, reiniciar el servicio con:

$ service dhcpd restart

O también:

$ systemctl restart dhcpd

Asignar una IP estáticas

Para que el DHCP asigne una IP estática a una maquina de la red o otro dispositivo final de red, es necesario crear un fichero nuevo y seguir esta configuración:

Creamos el fichero:

$ nano /etc/dhcpd/hosts

Y en él, añadimos lo siguiente:

host NombreDelHost {
hardware ethernet [MAC];
fixed-addres [IP];
}

Es decir, tiene que quedar de esta manera:

host MaqPC01 {
hardware ethernet E0:3F:49:1B:BF:34;
fixed-address 172.16.121.2;
}
host MaqPC02 {
hardware ethernet E0:3F:49:1B:BC:0A;
fixed-address 172.16.121.3;
}

Tened un especial cuidado con este fichero, si hay un espacio de más, alguna coma, o falta un espacio, te petará el servicio. Ahora volvemos al fichero de configuración del DHCP y tenemos que añadir el siguiente parámetro:

include "/etc/dhcp/hosts";

Una vez añadimos el parámetro y guardamos la configuración, lo de siempre, reiniciar el servicio con:

$ service dhcpd restart

O también:

$ systemctl restart dhcpd

Configuración del cliente

El cliente sólo tiene que tener la tarjeta de red en modo DHCP, se puede hacer por el Network Manager o bien modificando la configuración de la tarjeta de red:

nano /etc/network/interfaces

Y tiene que estar así:

auto eth0
iface eth0 inet dhcp

Comprobaciones

Para hacer la prueba, he iniciado un Xubuntu donde el servidor DHCP le dará una IP dinámica:

ip

Luego, he añadido esta maquina para que tenga una IP estática, la 172.17.121.44. Reiniciamos el servicio, i levantamos la interficie de nuevo para comprobar que se asigna la IP que hemos configurado:

ip1

Haz que cada palabra cuente: tu donación nos inspira a seguir creando contenido. Accede al apartado de Donación para hacer tu aportación