CONFIGURACIÓN SIMPLE DE DHCP EN DEBIAN Configuración de DHCPD (Servidor DHCP) DHCP (Dinamic Host Configuration Protocol o Configuración Dinámica de Host) es un servicio de internet que usa el modelo cliente/servidor y que proporciona un mecanismo rápido de configuración de red para el cliente: dirección IP, máscara de red, periodo de concesión, etc. DHCP puede ofrecer de manera automática todo lo que los PCs y las estaciones de trabajo necesitan para funcionar en red: Una dirección IP única, información DNS y conocer la ubicación de las pasarelas. Para realizar una instalación simple de DHCP en Debian podemos seguir los siguientes pasos: 1. Instalar el paquete del servidor: # apt-get install dhcp3-server
(En este caso, instalamos la última versión, en el momento actual, del servidor, dhcp31) 2. Arrancar el servidor, si no está ya ejecutándose: # /etc/init.d/dhcp3-server start
(Al arrancar el servidor, se crea el archivo de las concesiones o contratos (leases) cuyo contenido, entre otros campos, es la dirección MAC del cliente y las fechas inicial y final de la concesión) Nota: Es muy posible que si no se ha configurado aún el servicio -cosa que suele ocurrir tras la instalación- éste no arranque. En ese caso, consultar el apartado “ 4. Configurar el servidor DHCP”. También es importante saber que las interfaces por las que escucha el servidor se encuentran especificadas en la variable INTERFACES del fichero /etc/default/dhcp3-server .
3. Comprobar el funcionamiento. Aunque puede realizarse con los comandos “universales” ps y netstat, en este caso, podemos usar un comando propio del servicio: # dhcpd3 -d -f
(La salida generada muestra información acerca de las concesiones, declaraciones subnet existentes y pruebas de funcionamiento) 4. Configurar el servidor DHCP. La configuración del servicio se realiza en el archivo /etc/dhcp3/dhcpd.conf. La estructura general de dicho archivo es la siguiente: Parámetros globales; Declaración_1 { [parámetros relativos a Declaración_1] [sub_declaración anidada] } Declaración_2 { [parámetros relativos a Declaración_2] [sub_declaración anidada] } 1 Es posible que en las versiones más actuales de Debian se esté usando la implementación del ISC (Internet Software Consortium) con lo cual todas las referencias a “dhcp3server” habrá que sustituirlas por “iscdhcpserver” y que el “3” al que hace referencia la versión anterior haya que omitirlo.
1/4
CONFIGURACIÓN SIMPLE DE DHCP EN DEBIAN En dicho fichero pueden distinguirse los siguientes items: a) Parámetros. Describen el comportamiento del servidor DHCP. Pueden ser parámetros globales o locales a un conjunto de declaraciones. Algunos de ellos son: PARÁMETRO ddns-update-style authoritative
on-lease-per-client lease-file-name default-lease-time max-lease-time option subnet-mask option broadcastaddress option domain-nameservers option domain-name option routers
DESCRIPCIÓN Soporte para el protocolo DDNS: método de actualización dinámica en el servidor DNS con los valores IP asignados por DHCP. Por defecto none. Un servidor DHCP es “autorizado” cuando es el servidor principal para ese segmento de red y la asignación de datos que hace a los clientes DHCP es correcta. Evita que otros servidores DHCP en la misma red instalados por usuarios, no administradores, sean usados por los clientes como si se tratasen de un servidor auténtico. Se usa pues para indicar el servidor DHCP oficial de la red local. Si está activada (on) y el cliente hace una petición, el servidor cancela cualquier asignación que tuviera dicho cliente y la hace de nuevo Nombre del archivo donde se almacenan los contratos (leases). Por defecto, /var/lib/dhcp3/dhcpd.leases Indica el tiempo, en segundos, que dura el contrato asignado a la dirección IP, a menos que el cliente solicite la renovación. Límite máximo en que el cliente puede solicitar una concesión Máscara general de red que se va a utilizar Dirección de difusión o de broadcast de la red Lista de servidores de dominio DNS de la red para ser utilizados por el cliente en la resolución de nombres. Nombre del dominio DNS que se añade a los nombres de máquina Nombre o dirección IP de la puerta de enlace o pasarela por defecto.
Nota: Los parámetros que comienzan por la palabra reservada option describen datos que proporciona el servidor al cliente y que forman parte del protocolo. Los que no comienzan con option describen las características del servidor de DHCP.
b) Declaraciones. Se usan para describir redes, máquinas o grupos de máquinas junto con un rango de direcciones IP que se conceden para cada uno de ellos, etc. Es posible realizar la anidación de unas declaraciones dentro de otras. Algunas de ellas son las siguientes: DECLARACIÓN DESCRIPCIÓN subnet Se usa para especificar una (sub)red local y sus parámetros característicos, por ejemplo, range, para indicar el rango de direcciones válidas que se asignarán a los clientes. host Usada para aplicar parámetros y declaraciones a una máquina en particular. Por ejemplo, fixed-address (para asignar direcciones IP fijas o estáticas), hardware (para identificar una máquina por su dirección física o MAC) y option host-name (para asignar un nombre a la máquina) group Para aplicar una serie de parámetros y declaraciones a un conjunto de máquinas, subredes e incluso otros grupos. class Para especificar una clase de clientes DHCP
Nota: Los parámetros que se sobreescriban en alguna de las declaraciones o secciones del fichero de configuración tendrán validez sobre los parámetros globales.
2/4
CONFIGURACIÓN SIMPLE DE DHCP EN DEBIAN Un ejemplo de fichero de configuración podría ser el siguiente: ddns-update-style none; one-lease-per-client on; default-lease-time 86400; max-lease-time 86400; option subnet-mask 255.255.255.0; option broadcast-address 192.168.1.255; option domain-name "dominio.com"; option domain-name-servers ns1.dominio.com, ns2.dominio.com; subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.30 192.168.1.50; range 192.168.1.90 192.168.1.200; option routers 192.168.1.1; } host pc01 { option host-name “pc01.dominio.com”; hardware ethernet 00:30:84:0E:AA:45; fixed-address 192.168.1.10; } group { option routers 192.168.1.1; option subnet-mask 255.255.255.0; option domain-name “dominio.com”; host pc02 { option host-name “pc02.dominio.com”; hardware ethernet 00:40:25:EE:0A:43; fixed-address 192.168.1.20; } }
Una vez realizados los cambios se debe reiniciar el servicio ejecutando el comando siguiente: # /etc/init.d/dhcp3-server restart
5. Configuración del cliente: a) Instalar el paquete correspondiente al cliente: # apt-get install dhcp3-client Nota: Se puede forzar la solicitud de los parámetros de red desde la línea de comandos ejecutando, como root, el comando dhclient.
b) Editar el fichero de configuración /etc/network/interfaces y modificar las líneas: iface eth0 inet dhcp
A continuación, comentar con el carácter (#) las líneas que contienen las variables IPADDR, NETMASK, NETWORK y BROADCAST que solo son necesarias cuando la asignación de IP es estática.
3/4
CONFIGURACIÓN SIMPLE DE DHCP EN DEBIAN Nota: Una vez realizados estos cambios se debería reiniciar el servicio de red ejecutando el siguiente comando (o simplemente ifdown eth0 && ifup eth0): # /etc/init.d/networking restart
(En el servidor, el archivo de cesiones DHCP, normalmente /var/lib/dhcp/dhcpd.leases, incluirá entrada como las direcciones IP/MAC del cliente DHCP) c) Verificar los parámetros asignados al cliente ejecutando los siguientes comandos: # ifconfig (o ip a l) // Para la dirección IP y máscara de subred # route -n (o ip r s) // Para la pasarela por defecto # cat /etc/resolv.conf // Para los servidores DNS Nota: Se puede realizar una configuración desde el entorno gráfico usando la opción de menú Sistema->Administración->Red (o “Sistema->Preferencia->Conexiones de red”, según la versión de Debian), activando Automático (DHCP) en el apartado correspondiente a la configuración TCP/IP del adaptador de red.
4/4