- Servirá el rango de direcciones IP comprendidas entre 10.33.1.100 y 10.33.1.200 en la red 10.33.1.0/24
- Proporcionará los siguientes parámetros de configuración a los hosts clientes:
- Tiempo de concesión = 1 día
- Máximo tiempo de concesión = 8 días
- Mínimo tiempo de concesión = 2 horas
- Máscara de red = 255.255.255.0
- Puerta de enlace = 10.33.1.1
- Servidor DNS = 8.8.8.8
Para instalar un servidor DHCP en Debian/Ubuntu y configurarlo no es tan sencillo como el siguiente>siguiente de Windows, hay que seguir muchísimos más pasos y configurar varios ficheros, a continuación os expongo.
PASOS EN EL SERVER DHCP
1. Instalar el servidor DHCP en Debian/Ubuntu
apt install isc-dhcp-server
2. Poner una IP fija al servidor editando el archivo interfaces
3. Indicar en que interface de red se van a hacer las escuchas de las peticiones DHCP, para ello hay que editar el fichero, yo he puesto que escuche a través de la eth1. Es decir he puesto entre las comillas que viene vacías eth1 como se observa en la figura.
nano /etc/default/isc-dhcp-server
Con ifconfig -a vemos las interfaces de red que tiene la máquina estén levantadas o no.
Si nuestro servidor tiene varias interfaces de red, será necesario indicar la interfaz o interfaces por las cuales se va a ofrecer el servicio DHCP. Para ello, tendremos que editar el archivo /etc/default/isc-dhcp-server:
//Ofrecer DHCP por eth0 y eth1
//Editar /etc/default/isc-dhcp-server y añadir parámetro INTERFACES:
INTERFACES=»eth0 eth1″
4. Editar el archivo de configuración del servidor DHCP, pero recomiendo realizar una copia de seguridad, por si “la liamos parda”.
cp /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.copia
A continuación explico las diferentes líneas del fichero dhcpd.conf:
- Nombre del dominio, en mi caso, dhcp.local
- DNS, en mi caso el de Google.
- IP del router.
- Tiempo de concesión (lease time) expresado en segundos, en este caso 1 día.
- Máximo tiempo de concesión, expresado en segundos.
- Mínimo tiempo de concesión, expresado en segundos.
- En esta línea se encuentra la dirección de red donde se encuentra la máquina, la máscara de la red y el rango de IP’s que va a asignar nuestro servidor DHCP.
- Una vez establecida la configuración hay que reiniciar el servidor de la forma deseada, es decir, parándolo y arrancándolo, o haciendo un restart, aconsejo stop/start.
1ª Forma
/etc/init.d/isc-dhcp-server stop
/etc/init.d/isc-dhcp-server start
/etc/init.d/isc-dhcp-server restart
2ª Forma
service isc-dhcp-server stop
service isc-dhcp-server start
service isc-dhcp-server restart
5. Comprobar en el log del sistema si hay errores en:
- Arranque del servidor.
- Errores en el fichero dhcpd.conf
- Si está el servidor asignando bien las IP’s a los clientes observando si se ha realizado bien los pasos para realizar una concesión.
- DHCPDISCOVER
- DHCPOFFER
- DHCPREQUEST
- DHCPPACK
6. Podemos verificar también si el proceso está ejecutándose y a la escucha por el puerto 67 UDP. Si el puerto 67 no se encuentra en la lista de netstat, algo hemos hecho mal
ps -ef | grep dhcp
netstat -ltun
7. Si editamos el fichero /var/lib/dhcp/dhcpd.leases vemos las concesiones que ha realizado, y como no, todavía no hemos arrancado ningún cliente, por lo tanto no debe de haber dado.
PASOS EN EL CLIENTE
1. Poner la interface por donde queremos que se conecte al server en DHCP.
2. Ver con ifconfig -a si se ha realizado la concesión correctamente, y como se aprecia en la figura, así ha sido.
En nuevas distribuciones usar el comando ip a
Para usar el comando ifconfig instalar el paquete net-tools (apt install net-tools)
3. Podemos ver en el fichero dhcpd.leases que ya hay contenido en el de las concesiones que ha realizado.
4. Ver en el syslog del server como se ha realizado la concesión, es decir, DHCPDISCOVER, DHCPOFFER, DHCPREQUEST, DHCPPACK, como se comprueba en la figura, pero sé inteligente y realiza un tail -10 del fichero, que es un tochaco.
HACER RESERVAS DE IP A EQUIPOS
1. Añadir la reserva dentro del bloque subnet si la reserva pertenece a la misma red, en mi caso es la ip 10.33.1.14 y tendría que añadirla dentro del blque de subnet porque pertenece a la red de la subnet, es decir, la 10.33.1.0
Hay que mirar en el host cliente, la MAC que posee.
- Si trabajamos, por ejemplo con VMware, lo podemos ver en Network Adapter Advanced
- En Windows, ipconfig/all
- En Linux, ifconfig -a
2. Si no pertenece la reserva a la subnet hay que ponerla fuera.
host jesus {
hardware ethernet 00:0c:29:c9:46:80;
fixed-address 192.168.1.50;
option routers 192.168.1.254;
}
EJEMPLO FICHERO DHCPD.CONF
Todas las líneas que comienzan por almoadilla (#) son líneas de comentarios y son ignoradas por el servidor DHCP. Todas las líneas que especifican parámetros deben terminar en punto y coma ‘;’)