DHCP es el protocolo de configuración de host dinámico, este protocolo nos permite que un equipo conectado a una red pueda obtener su configuración red de forma automática.
Por eso necesitamos un servidor DHCP que distribuya las direcciones IP. Este equipo será la base para todas las solicitudes DHCP por tanto tendrá una dirección IP fija.
El sistema básico de comunicación es BOOTP (con la trama UDP). El equipo transmite un paquete (en 255.255.255.255 con información sobre el tipo de solicitud, los puertos de conexión, etc…) a través de la red local. Cuando el DHCP recibe el paquete, contesta con otro paquete (el pc cliente no tiene dirección IP, por tanto, no es posible conectar directamente con él) que contiene toda la información solicitada por el cliente.
Hay varios tipos de paquetes DHCP que pueden emitirse tanto desde el cliente hacia el servidor o servidores, como desde los servidores hacia un cliente:
- DHCPDISCOVER (para ubicar servidores DHCP disponibles)
- DHCPOFFER (respuesta del servidor a un paquete DHCPDISCOVER, que contiene los parámetros iniciales)
- DHCPREQUEST (solicitudes varias del cliente, por ejemplo, para extender su concesión)
- DHCPACK (respuesta del servidor que contiene los parámetros y la dirección IP del cliente)
- DHCPNAK (respuesta del servidor para indicarle al cliente que su concesión ha vencido o si el cliente anuncia una configuración de red errónea)
- DHCPDECLINE (el cliente le anuncia al servidor que la dirección ya está en uso)
- DHCPRELEASE (el cliente libera su dirección IP)
- DHCPINFORM (el cliente solicita parámetros locales, ya tiene su dirección IP)
Sin mas preambulos procedemos a instalar y configurar nuestro servidor, veras que sencillo.
Instalación:
yum -y install dhcp
Configurar:
nano /etc/dhcp/dhcpd.conf # create new # specify domain name option domain-name "tudominio.com"; # specify name server's hostname or IP address option domain-name-servers dhcp.tudominio.com; # default lease time default-lease-time 600; # max lease time max-lease-time 7200; # this DHCP server to be declared valid authoritative; # specify network address and subnet mask subnet 10.0.0.0 netmask 255.255.255.0 { # specify the range of lease IP address range dynamic-bootp 10.0.0.200 10.0.0.254; # specify broadcast address option broadcast-address 10.0.0.255; # specify default gateway option routers 10.0.0.1; }
Iniciar y activar:
systemctl start dhcpd systemctl enable dhcpd
Permisos en firewall:
firewall-cmd --add-service=dhcp --permanent success firewall-cmd --reload success
Y ya tenemos en marcha nuestro servidor dhcp.