Una guía paso a paso para configurar un servidor DHCP en Ubuntu

En este tutorial, configuramos nuestro propio servidor DHCP en Ubuntu. El Protocolo de configuración dinámica de host (DHCP) es un servicio de red para asignar automáticamente direcciones IP a clientes en una red. Sigue una arquitectura servidor-cliente en la que el cliente solicita un servidor DHCP para obtener una dirección IP. La mayoría de los enrutadores tienen un servidor DHCP incorporado, pero también podemos usar nuestro propio servidor DHCP.

Tabla de contenido

¿Cómo funciona DHCP?

Cuando la computadora arranca, no tiene una dirección IP (suponiendo que no tenga configurada una dirección IP estática, que la mayoría de las máquinas no tienen). Envía una transmisión (en la dirección MAC con todas las F) llamadaDescubrir DHCP. Los servidores DHCP están diseñados para responder a tales transmisiones.

Luego envían tráfico de unidifusión conocido comoOferta DHCPde vuelta al cliente solicitante. Esta oferta de DHCP normalmente contiene la dirección IP asignada, la dirección IP de la puerta de enlace predeterminada y la dirección IP del servidor DNS.

El cliente al recibir la Oferta envía unSolicitud DHCPal servidor DHCP reconociendo que ha aceptado la información proporcionada por el servidor.

Los servidores DHCP mantienen un registro de las direcciones IP asignadas para evitar la doble asignación o las colisiones de direcciones IP.

Dado que los servidores DHCP responden a la transmisión,debe serpresentes en la red local y allíno deberíahaber más de 1 servidor DHCP en una red local.

Métodos de asignación para DHCP

Los siguientes son los dos métodos de asignación para un servidor DHCP:

  • Manual:En este método, la dirección IP se proporciona sobre la base de la dirección MAC. Esto asegura que una máquina en particular obtenga una dirección IP fija ya que su dirección IP está vinculada a su dirección MAC. El Servidor DHCP envía una configuración constante al cliente en función de su Dirección MAC en este tipo de asignación.
  • Automático:En este método, las direcciones IP son asignadas automáticamente por el servidor DHCP por orden de llegada de un grupo de direcciones. Se puede dividir en dos categorías según el Tiempo de arrendamiento: el tiempo durante el cual se asigna una dirección IP a un cliente.
    • Tiempo de arrendamiento fijo:Cuando un cliente DHCP ya no está en la red durante un período específico, la configuración caduca y se libera al conjunto de direcciones para que la utilicen otros clientes DHCP. El cliente tiene que renegociar para mantener la dirección IP anterior.
    • Tiempo de arrendamiento infinito:Esto tiene el efecto de asignar permanentemente una dirección IP a un cliente.

Pasos para configurar el servidor DHCP en Ubuntu

Ahora veremos cómo configurar un servidor DHCP en Ubuntu.

1. Instalar el servidor DHCP

Puede instalar el servidor DHCP usando el comando apt de la siguiente manera:

sudo apt install isc-dhcp-server
Instalación del servidor DHCP usando apt

Usar:Puede instalar un servidor DHCP incluso en una edición de escritorio en lugar de la edición de servidor de Ubuntu. Veresta respuesta de StackOverflowsobre cómo las ediciones de escritorio y servidor son diferentes/similares.

2. Configurar el servidor DHPC

El archivo de configuración principal del servidor ISC DHCP es/etc/dhcp/dhcpd.conf.

Copia de seguridad del archivo de configuración original

Siempre es una buena idea hacer una copia de seguridad de los archivos de configuración originales. En caso de que algo salga mal, la configuración original se puede restaurar fácilmente. Puede usar el comando cp o el comando mv para crear una copia de seguridad.

sudo mv /etc/dhcp/dhcpd.conf{,.backup}
#Expands to sudo mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.backup

El comando anterior crea undhcpd.conf.backuparchivo usando el{}función de expansión de bash.

Crear y editar el nuevo archivo de configuración

Puede utilizar el editor de su elección. Usaré el editor nano:

sudo nano /etc/dhcp/dhcpd.conf

Las opciones en el archivo de configuración dependen de la complejidad de la red.

Asignación de direcciones IP aleatorias de un grupo

Lo más común que hace un servidor DHCP es asignar direcciones aleatoriamente. La configuración del mismo sería la siguiente:

# a simple /etc/dhcp/dhcpd.conf
default-lease-time 600;
max-lease-time 7200;
authoritative;

subnet 192.168.1.0 netmask 255.255.255.0 {
 range 192.168.1.100 192.168.1.200;
 option routers 192.168.1.254;
 option domain-name-servers 192.168.1.1, 192.168.1.2;
#option domain-name "mydomain.example";
}

Según esta configuración:

  • El tiempo de concesión predeterminado para un cliente es de 10 minutos (600 segundos) y el tiempo máximo de arrendamiento es de 2 horas (7200 segundos).
  • Este servidor DHCP es el servidor oficial de la red local. (indicado porauthoritative).
  • El servidor entregará la dirección IP del rango192.168.1.100para192.168.1.200.
  • El servidor también “aconsejará” al cliente que use192.168.1.254como la puerta de enlace predeterminada y192.168.1.1y192.168.1.2como sus servidores DNS.

También puede incluir un nombre de dominio.

Asignación de una dirección IP estática a un cliente

Para garantizar que un cliente en particular siempre obtenga la misma dirección IP, el servidor DHCP necesitará la dirección MAC de ese cliente. Este sería el modo de asignación manual del que se habló anteriormente en este artículo.

Para obtener la dirección MAC de un cliente, podemos usar el comando ip en elmáquina cliente:

ip a
Ver la dirección MAC

(Deberá seleccionar la dirección MAC de la interfaz desde la que planea conectarse a la red. Elegí la inalámbrica).

Ahora que tenemos la dirección MAC, podemos ponerla en el archivo de configuración:

host archmachine {
hardware ethernet e0:91:53:31:af:ab;
fixed-address 192.168.1.20;
}

Esto reservará la dirección IP192.168.1.20para el cliente con la dirección MAC e0:91:53:31:af:ab.

Finalmente, el archivo de configuración se ve así:

Conf. DHCP 1Configuración DHCP

Puede omitir la parte de configuración de IP estática si desea asignar direcciones automáticamente.

3. Enlace el servidor DHCP a una interfaz

El servidor DHCP puede tener muchas interfaces. Debe definir la interfaz que debe escuchar. Puedes ver las interfacesen el servidorusandoip aigual que el cliente.

La interfaz con la que enlazar se define en el/etc/default/isc-dhcp-serverexpediente. Ábralo usando el editor de su elección. La interfaz de mi servidor eseth0. Puede ser diferente para su servidor. Edite el archivo como:

INTERFACESv4="eth0"
Establecer interfaz para escucharEstablecer interfaz para escuchar

4. Reinicie el servidor DHCP

Ahora que se realizaron los cambios en la configuración, debemos reiniciar el servicio para habilitar esos cambios. Para ello utilizaremos elsystemctlmando:

sudo systemctl restart isc-dhcp-server.service

5. Verifique el estado del servidor DHCP

Esto se puede hacer de nuevo usando elsystemctldominio:

sudo systemctl status isc-dhcp-server.service
Estado del servidor DHCPEstado del servidor DHCP

Un estado activo indica que el servidor DHCP ha recogido con éxito la configuración y está listo para distribuir direcciones IP.

Solución de problemas

El servidor DHCP escribe sus registros en Syslog. Si encuentra que el estado del servicio es inactivo, debe investigar/var/log/syslogexpediente. A partir de ahí, puede buscar el problema específico mencionado en Syslog en Internet.

Conclusión

En este artículo, aprendimos sobre DHCP y cómo instalar un servidor DHCP en una máquina con Ubuntu. Tener un Servidor DHCP automatiza la asignación de Direcciones IP lo cual es mucho mejor que la configuración manual de cada cliente.

Artículos Relacionados