Un servidor DHCP (Dynamic Host Configuration Protocol) es un servicio de red que provee direcciones IP entre otra información de configuración a los equipos que se encuentran conectados a este dentro de una red de datos sin importar el sistema operativo que posean las máquinas cliente aunque el servidor este corriendo sobre Ubuntu Server.
Las máquinas configurados vía DHCP no tienen control sobre la configuración de red de las mismas, adquiriendo toda esta información directamente desde el servidor DHCP que se encarga de configurar automáticamente la dirección IP de la máquina, la mascara de subred, la puerta de enlace predeterminada o Gateway, el nombre del host, el nombre del dominio, entre otros datos importantes para el buen funcionamiento de la red.
A continuación aprenderemos como configurar un servidor DHCP usando Ubuntu Server 12.04 Precise Pangolin.
Para este caso en particular utilizaremos los siguientes datos a entregar por el servidor DHCP y la interfaz de red eth0:
- Rango de direcciones IP:
192.168.2.10–192.168.2.20 - Dirección de subred:
192.168.2.0 - Mascara de red:
255.255.255.0 - Dominio:
dhcpserver.public - Puerta de enlace predeterminada:
192.168.2.1 - Dirección Broadcast:
192.168.2.255 - Servidores DNS:
208.67.222.222y208.67.220.220(OpenDNS )
- Instalamos el paquete del servidor DHCP
sudo apt-get install isc-dhcp-server
- Editamos el archivo
/etc/default/isc-dhcp-serversudo nano /etc/default/isc-dhcp-server
Aquí nos dirigimos hasta la opción
INTERFACESubicada aproximadamente en la linea 11 del documento, agregandoeth0como se muestra a continuación# Defaults for dhcp initscript # sourced by /etc/init.d/dhcp # installed at /etc/default/isc-dhcp-server by the maintainer scripts # # This is a POSIX shell fragment # # On what interfaces should the DHCP server (dhcpd) serve DHCP requests? # Separate multiple interfaces with spaces, e.g. "eth0 eth1". INTERFACES="eth0"
Guardamos pulsando
Ctrl+Oy salimos del archivo de configuración pulsandoCtrl+X. - Editamos el archivo
/etc/dhcp/dhcpd.confcreando primero un respaldo del mismo en caso de que algo salga malsudo mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.original
Ingresamos como root
sudo -i
Creamos el archivo de configuración
dhcpd.confcat > /etc/dhcp/dhcpd.conf <<-EOF option domain-name "preciseserver.public"; option domain-name-servers ns1.preciseserver.public, ns2.preciseserver.public; default-lease-time 600; max-lease-time 7200; subnet 192.168.2.0 netmask 255.255.255.0 { range 192.168.2.10 192.168.2.20; option domain-name-servers 208.67.222.222, 208.67.220.220; option domain-name "serv.dhcpserver.public"; option routers 192.168.2.1; option broadcast-address 192.168.2.255; default-lease-time 600; max-lease-time 7200; } EOF - Reiniciamos el servidor DHCP
sudo service isc-dhcp-server restart
Ya tenemos nuestro servidor DHCP corriendo libremente sobre Ubuntu Server 12.04 Precise Pangolin y listo para entregar la información necesaria a cada una de las máquinas que conectemos a la red en la que se encuentra.
Si tienes alguna duda acerca del procedimiento aquí publicado, no dudes en realizar un comentario al respecto.

