Servidor DHCP DHCP (acrónimo de Dynamic Host Configuration Protocol que se traduce Protocolo de configuración dinámica de servidores) es un protocolo que permite a dispositivos individuales en una red de direcciones IP obtener su propia información de configuración de red (dirección IP; máscara de sub-red, puerta de enlace, etc.) a partir de un servidor DHCP. Sin la ayuda de un servidor DHCP, tendrían que configurarse de forma manual cada dirección IP de cada anfitrión que pertenezca a una Red de Área Local. Si un anfitrión se traslada hacia otra ubicación donde existe otra Red de Área Local, se tendrá que configurar otra dirección IP diferente para poder unirse a esta nueva Red de Área Local. Un servidor DHCP entonces supervisa y distribuye las direcciones IP de una Red de Área Local asignando una dirección IP a cada anfitrión que se una a la Red de Área Local. Cuando, por mencionar un ejemplo, una computadora portátil se configura para utilizar DHCP, a ésta le será asignada una dirección IP y otros parámetros de red necesarios para unirse a cada Red de Área Local donde se localice. Existen tres métodos de asignación en el protocolo DHCP: • Asignación manual: La asignación utiliza una tabla con direcciones MAC (acrónimo de Media Access Control Address, que se traduce como dirección de Control de Acceso al Medio). Sólo los anfitriones con una dirección MAC definida en dicha tabla recibirán el IP asignada en la misma tabla. Esto se hace a través de los parámetros hardware ethernet y fixed-address. • Asignación automática: Una dirección de IP disponible dentro de un rango determinado se asigna permanentemente al anfitrión que la requiera. • Asignación dinámica: Se determina arbitrariamente un rango de direcciones IP y cada anfitrión conectado a la red está configurada para solicitar su dirección IP al servidor cuando se inicia el dispositivo de red, utilizando un intervalo de tiempo controlable (parámetros default-lease-time y max-lease-time) de modo que las direcciones IP no son permanentes y se reutilizan de forma dinámica. Ahora editaremos el archivo de configuracion de dhcp que se encuentra en /etc/dhcp.conf. Detalles; option domain-name-servers; Envia a los clientes los DNS por defectos a ser utilizados. default-lease-time 18000; Es el tiempo por defecto que un cliente puede permanecer con una dirección IP. El cliente deja libre esta dirección y trata de adquirir una nueva. El tiempo es expresado en segundos. max-lease-time 25200; Este es el tiempo máximo permitido por el Servidor para que la ip sea liberada. Puede darse el caso que el computador no este encendido cuando se cumpla el default-lease-time por lo que el servidor le da otro periodo de tiempo antes de asignársela a otro equipo. option routers 192.168.10.19; Esta es la opción del default gw enviada a los clientes. option subnet-mask defecto. 255.255.255.0; Esta es la opción de la máscara por subnet 192.168.10.0 netmask 255.255.255.0 { range 192.168.10.50 192.168.10.100; } Con esta opcion le declaramos al dhcp server el rango de red y el pool de direcciones. ip que entregara. Iniciar, detener y reiniciar el servicio dhcpd. Para iniciar por primera vez el servicio dhcpd, utilice: /etc/init.d/dhcpd start Para hacer que los cambios hechos a la configuración del servicio dhcpd surtan efecto, utilice: /etc/init.d/dhcpd restart Para detener el servicio dhcpd, utilice: /etc/init.d/dhcpd stop Agregar el servicio dhcpd al arranque del sistema. Para hacer que el servicio de dhcpd esté activo con el siguiente inicio del sistema, en todos los niveles de corrida (2, 3, 4, y 5), se utiliza lo siguiente: /sbin/chkconfig dhcpd on Comprobaciones desde cliente DHCP. Hecho lo anterior solo falta con configurar como interfaces DHCP las estaciones de trabajo que sean necesarias sin importar que sistema operativo utilicen. Después de configurado e iniciado el servicio, desde una terminal como root en otro sistema que será utilizado como cliente, considerando que se tiene una interfaz de red denominada eth0, utilice los siguientes mandatos para desactivar la interfaz eth0 y asignar una nueva dirección IP a través del servidor dhcp. /sbin/ifdown eth0 /sbin/dhclient eth0 Lo anterior deberá devolver el mensaje «Determinando la información IP para eth0...» y el símbolo de sistema. Para corroborar, utilice el mandato ifconfig para visualizar los dispositivos de red activos en el sistema. Casos Adicionales Puede darse el caso de que necesitemos en determinado momento que un equipo se mantenga siempre con la misma dirección IP, quizá porque está corriendo una aplicación especial donde otros clientes se conectan. Para ello entonces necesitamos apartar la dirección en el servidor DHCP. Esto se hace utilizando la dirección MAC ADRESS del equipo y adicionándola en nuestro servidor de la siguiente manera: host m253 { option host-name "m253.codigolibre.local"; hardware ethernet 00:50:BF:27:1C:1C; fixed-address 192.168.10.253; } Cada vez que el host se conecte obtendrá la misma dirección porque por medio a la mac address ya el servidor dhcp aparto esta dirección exclusiva para dicho host. Otra situación se presenta cuando desea filtrar por dirección mac, es decir, desea solamente que mi servidor dhcp filtre a un rango de direcciones conocidas, así cualquier extraño o visitante que llegue a la empresa no podrá conectarse a nuestra red de una manera tan fácil. subnet 192.168.10.0 netmask 255.255.255.0 { range 192.168.10.50 192.168.10.230; deny unknown-clients; } host bpena {hardware ethernet 00:06:4F:4E:DA:DB;} host cvasquez {hardware ethernet 00:19:5B:FF:31:04;} Dentro de la declaración del pool de ips escribimos la opción “deny unknown-clients”, esta opcion permite enviar direcciones solamente a los hosts conocidos. Mas abajo están los equipos bpena y cvasquez declarados en el dhcp, por lo tanto, Nuestro servidor solamente enviara direcciones a estos 2 conocidos que son los únicos declarados. Lo que vimos anteriormente es la configuración que se tiene que hacer dentro de un Linux Client, ahora vamos a dirigirnos hacia la maquina cliente. En nuestro cliente iremos a la configuración de la nic luego a la pestaña de ipv4 y seleccionaremos el método Dinamico. Ahora probaremos si nuestro servidor esta funcionando verdderamente. Vemos como correctamente se ha establecido la configuración.