Este documento explica en detalle la instalación y configuración de
Transcripción
Este documento explica en detalle la instalación y configuración de
DHCP Este documento explica en detalle la instalación y configuración de un servidor DHCP en una red local para que los PC's de la misma obtengan su configuración TCP/IP automáticamente. Se introducirán conceptos del protocolo y su funcionamiento, para posteriormente ver dos implementaciones del mismo en plataformas Windows y Linux. DHCP by Rafael Lozano is licensed under a Creative Commons Reconocimiento-NoComercialCompartirIgual 3.0 España License. Información técnica Nivel de usuario: Avanzado Escenario: La instalación y configuración de un servidor DHCP se ha realizado y probado sobre dos redes locales virtuales independientes creadas en VirtualBox v4.3. En la primera se ha utilizado dos servidores Windows Server 2012 y un cliente Windows 8 con la siguiente configuración: Hostname Máquina Virtual SO Conexiones de Red Hardware VirtualBox Red NAT Red Interna red_windows Servidores Puerta de de Nombres Enlace Software adicional Dinámica en 172.16.0.0/16 192.168.20.1/24 El mismo que 172.16.0.1 la máquina física Ninguno SeWiPr WS 2012 HD 30GB RAM 1,5GB SeWiSe WS 2012 HD 30GB RAM 1,5GB 192.168.20.10/24 192.168.20.1 192.168.20.1 Ninguno reservada DHCP CW W8 HD 15GB RAM 1 GB Dinámica en 192.168.20.0/24 192.168.20.1 192.168.20.1 Ninguno En la siguiente red se ha empleado un servidor Lubuntu 13.04 y un cliente con el mismo sistema operativo, según la siguiente configuración Hostname Máquina Virtual SO Conexiones de Red Hardware VirtualBox Red NAT Red Interna red_linux Servidores Puerta de de Nombres Enlace Software adicional El mismo que 172.16.0.1 la máquina física Ninguno SeLiPr Lubuntu 13.04 HD 5GB Dinámica en RAM 512MB 172.16.0.0/16 192.168.21.1/24 SeLiSe Lubuntu 13.04 HD 5GB RAM 256 MB 192.168.21.10/24 192.168.21.1 192.168.21.1 Ninguno reservada DHCP CL Lubuntu 13.04 HD 5GB RAM 256 MB Dinámica en 192.168.21.0/24 192.168.21.1 192.168.21.1 Ninguno Conocimientos previos: Es necesario tener conocimientos teóricos y prácticos de la configuración TCP/IP de una interfaz de red, en plataformas Windows y Linux. Para la parte de Linux se necesita saber el uso de un editor de texto plano, como nano o vi, además de los comandos básicos de Unix en gestión de archivos y directorios. Ultima revisión del documento: Septiembre 2014 Esquema de red: La conexión de red es la siguiente II Tabla de contenidos Tabla de contenido 1 Introducción........................................................................................................................................ 1 1.1 Terminología DHCP.....................................................................................................................................2 1.2 Asignación de direcciones.........................................................................................................................3 1.3 Tipos de mensajes del protocolo............................................................................................................3 1.4 Funcionamiento del protocolo.................................................................................................................4 1.4.1 El cliente dispone de una concesión previa........................................................................................5 1.4.2 El cliente no dispone de una concesión previa..................................................................................5 1.4.3 Intercambio de mensajes del protocolo..............................................................................................5 1.5 Agente de retransmisión DHCP...............................................................................................................7 2 Servicio DHCP en Windows Server 2012......................................................................................7 2.1 Instalación del servicio DHCP...................................................................................................................8 2.2 Autorizar un servidor DHCP...................................................................................................................11 2.3 Comprobación del funcionamiento del servidor DHCP..................................................................12 2.4 Reservas.......................................................................................................................................................14 2.5 Gestión de ámbitos...................................................................................................................................14 2.5.1 Propiedades de ámbito.......................................................................................................................... 16 2.5.2 Crear un intervalo de exclusión........................................................................................................... 17 2.5.3 Opciones de ámbito................................................................................................................................ 18 2.6 Detección de conflictos basada en el servidor..................................................................................19 2.7 Copia de seguridad y restauración de la base de datos DHCP.....................................................20 2.8 Uso de ipconfig para verificar, liberar o renovar una concesión..................................................21 3 DHCP3................................................................................................................................................ 22 3.1 Instalación del servidor............................................................................................................................22 3.2 Archivo de configuración.........................................................................................................................23 3.3 Crear un nuevo ámbito............................................................................................................................24 3.4 Reserva de direcciones............................................................................................................................26 3.5 Prevención de conflictos.........................................................................................................................27 3.6 Base de datos de concesiones en el servidor...................................................................................27 3.7 Base de datos de concesiones en el cliente......................................................................................28 3.8 Comando dhclient.....................................................................................................................................28 4 Bibliografía......................................................................................................................................... 31 Índice I Rafael Lozano DHCP DHCP 1 Introducción DHCP (Dynamic Host Configuration Protocol) es un protocolo de red utilizado para configurar los parámetros de red IP en dispositivos conectados (servidores, PC's o teléfonos móviles) y que estos se puedan comunicar. Un servidor que implementa un servicio DHCP puede configurar de forma dinámica los PC's de una red. Cuando un PC se enciende y el sistema operativo arranca, necesita configurar sus interfaces de red con una serie de parámetros: la dirección IP, la máscara de red, la dirección de broadcast, las direcciones IP de los servidores DNS, la dirección IP de la puerta de enlace, etc. Todos estos parámetros los obtiene al ponerse en contacto con un servidor DHCP que se encarga de proporcionárselos. DHCP se desarrollo como una extensión del protocolo BOOTP, un protocolo de red que realiza la misma función, pero que implicaba la configuración manual de cada cliente de red y no suministraba un mecanismo para recuperar direcciones IP sin uso en la red. Para resolver el problema de asignar direcciones IP a gran escala Microsoft trabajó con otros profesionales de las redes para crear este protocolo como un estándar abierto definido en el RFC2131 para la versión 4 del protocolo IP, mientras que RFC3315 y RFC3633 definen DHCP para la versión 6. Su objetivo principal es simplificar la administración de la configuración IP de los equipos de la red, ya que elimina la configuración individual de cada uno de ellos. Cada equipo debe tener un nombre y dirección IP únicos, amen de otros parámetros. Al mover un equipo a una subred diferente, se debe cambiar su dirección IP. Si en esta otra subred hay un servidor DHCP operando, el equipo obtendrá una nueva configuración IP y podrá conectar en red sin necesidad de modificar su configuración de red. Además, DHCP permite acelerar y facilitar la configuración de muchos PC's en una red evitando en gran medida los posibles errores humanos por direcciones IP duplicadas. Página 1 Rafael Lozano DHCP Su funcionamiento se basa en el “alquiler” de direcciones IP y demás parámetros de red IP durante un tiempo (concesión o tiempo de alquiler) a los PC's de la red. Esta configuración suministrada es segura y fiable, evitando conflictos de direcciones. Utiliza un modelo cliente-servidor en el que el servidor DHCP mantiene una administración centralizada de las direcciones IP utilizadas en la red. Los clientes compatibles con DHCP podrán solicitar a un servidor DHCP una dirección IP y obtener la concesión como parte del proceso de inicio de red. 1.1 Terminología DHCP Antes de comenzar con los procesos de instalación y configuración de nuestro DHCP, vamos a definir algunos términos que utilizaremos a lo largo de dicho proceso. ✔ Ámbito.- Un ámbito es el intervalo consecutivo completo de las direcciones IP posibles de una subred. Por ejemplo, en una subred física 192.168.0.0/24 el ámbito sería desde la dirección IP 192.168.0.1 hasta la dirección IP 192.168.0.254. El ámbito es el elemento principal que un servidor DHCP gestiona, asignando las direcciones IP del mismo y el resto de parámetros a los PC's de la red. ✔ Superámbito.- Un superámbito es un agrupamiento administrativo de ámbitos que se puede utilizar para admitir varias subredes IP lógicas en la misma subred física. Los superámbitos sólo contienen una lista de ámbitos miembros que se pueden activar juntos. Los superámbitos no se utilizan para configurar otros detalles acerca de la utilización de los ámbitos. Para configurar la mayor parte de las propiedades que utiliza un superámbito es necesario configurar individualmente las propiedades de los ámbitos miembros. ✔ Intervalo de exclusión.- Un intervalo de exclusión es una secuencia limitada de direcciones IP de un ámbito que el servidor DHCP no ofrecerá a los clientes de la red. ✔ Conjunto de direcciones.- Tras definir un ámbito DHCP y aplicar intervalos de exclusión, las direcciones restantes forman el conjunto de direcciones disponibles del ámbito. El servidor puede elegir cualquiera de las direcciones del conjunto para asignarla dinámicamente a los clientes de la red. ✔ Concesión.- Una concesión es un período de tiempo especificado por los servidores DHCP y durante el cual un equipo cliente puede utilizar una dirección IP asignada. Cuando se realiza una concesión a un cliente, la concesión está activa. Antes de que caduque la concesión, el cliente suele necesitar renovar la asignación de la concesión de dirección en el servidor. Una concesión queda inactiva cuando caduca o cuando se elimina del servidor. ✔ Reserva.- Una reserva es una asignación una dirección IP fija por parte del servidor DHCP a un cliente de la red. Las reservas aseguran que un cliente específico de la subred siempre podrá utilizar la misma dirección IP. Las reservas suelen emplearse para equipos que cumplen una función específica dentro de la red, como un servidor de impresión. ✔ Tipos de opciones.- Los tipos de opciones son otros parámetros de configuración del cliente que un servidor DHCP puede asignar al proporcionar concesiones a los clientes DHCP. Por ejemplo, algunas opciones comúnmente utilizadas incluyen las direcciones IP de las puertas de enlace predeterminadas (enrutadores), servidores WINS y servidores DNS. Normalmente, Página 2 Rafael Lozano DHCP estos tipos de opciones se habilitan y configuran para cada ámbito. La efectividad de DHCP viene de la concesión. Se puede optimizar la asignación de direcciones IP planificando la duración de las concesiones. El problema es que si no se liberan direcciones, en un momento determinado no se podrá cumplir con nuevas solicitudes DHCP debido a que faltarán direcciones que puedan distribuirse. En una red en la cual muchos equipos se conectan y desconectan permanentemente (redes de escuelas o de oficinas de ventas, por ejemplo), es aconsejable ofrecer concesiones por períodos cortos. En cambio, para una red compuesta principalmente por equipos fijos que se reinician rara vez, las concesiones por períodos largos son más que suficientes. 1.2 Asignación de direcciones El protocolo DHCP incluye tres métodos de asignación de direcciones IP: ✔ Asignación manual o estática.- El administrador configura manualmente una dirección IP de un cliente en el servidor DCHP. El servidor identifica al cliente mediante la dirección MAC de la interfaz de red y procede a asignar la dirección IP que configuró el administrador. ✔ Asignación automática.- Asigna una dirección IP de forma permanente a una máquina cliente la primera vez que hace la solicitud al servidor DHCP y hasta que el cliente la libera. Se suele utilizar cuando el número de clientes no es muy grande y no varía demasiado. ✔ Asignación dinámica.- El único método que permite la reutilización dinámica de las direcciones IP. El administrador de la red determina un rango de direcciones IP y cada computadora conectada a la red está configurada para solicitar su dirección IP al servidor cuando la tarjeta de interfaz de red se inicializa. 1.3 Tipos de mensajes del protocolo Para que un cliente obtenga sus parámetros de configuración IP intercambia una serie de mensajes con el servidor. El protocolo empleado es UDP y el servidor utiliza el puerto 67 mientras que los clientes emplean el puerto 68. Estos mensajes son: ✔ DHCP Discovery.- El cliente envía un paquete DHCPDISCOVER para solicitar una configuración IP automática. La función de este paquete es descubrir los servidores DHCP que hay operando en la red. Este mensaje puede incluir opciones que sugieren valores para la dirección de red y duración de la concesión. Las direcciones IP origen y destino de dicho paquete serán 0.0.0.0 y 255.255.255.255 respectivamente. El servidor almacena la dirección MAC y el identificador del cliente. Para subsecuentes mensajes tendrá que utilizar este mismo identificador. ✔ DHCP Offer.- Cada servidor que recibe un mensaje DHCPDISCOVER emite un mensaje en el que ofrece una configuración de cliente. El servidor determina la configuración basándose en la dirección MAC del cliente especificada en el mensaje anterior. El servidor especifica la dirección IP así como otros parámetros de configuración. La dirección origen será la dirección IP del servidor y la dirección de destino será 255.255.255.255. ✔ DHCP Request.- El cliente selecciona un servidor a partir de la configuración de los paquetes recibidos de DHCPOFFER. Una vez más, el cliente puede solicitar opciones de configuración Página 3 Rafael Lozano DHCP deseadas y una de ellas es la dirección IP específica que indicó el servidor en su mensaje DHCPOFFER. La dirección origen de este paquete es 0.0.0.0 y la dirección de destino es 255.255.255.255. ✔ DHCP Acknowledgement.- Este mensaje tiene dos funciones. La primera es indicar a los servidores que no han sido seleccionados que el cliente ha declinado su oferta. La segunda es que el servidor seleccionado incluye los parámetros de configuración para el cliente y la duración de la concesión. El servidor DHCP responde al mensaje DHCPREQUEST con un DHCPACK, completando así el proceso de configuración. La dirección origen es la dirección IP del servidor de DHCP y la dirección de destino es todavía 255.255.255.255. ✔ DHCP Decline.- Un cliente envía este mensaje al servidor cuando detecta que la dirección IP que le ha asignado el servidor ya está en uso en la red y no puede utilizarla. En este punto el cliente debe esperar 10 segundos para reiniciar el proceso de configuración. ✔ DHCP Release.- Los clientes envían una petición al servidor DHCP para liberar su dirección IP. La implementación cliente crea un paquete UDP con destino 255.255.255.255 y requiere también su última dirección IP conocida, aunque esto no es necesario y puede llegar a ser ignorado por el servidor. ✔ DHCP Inform.- El cliente envía una petición al servidor de DHCP: para solicitar más información que la que el servidor ha enviado con el DHCPACK original; o para repetir los datos para un uso particular. Dichas peticiones no hacen que el servidor de DHCP refresque el tiempo de vencimiento de IP en su base de datos. ✔ DHCP NAck.- El cliente envía una petición al servidor para renovar su concesión con un mensaje DHCPREQUEST. Si el servidor le niega la renovación le envía un mensaje DHCPNACK indicándole que ha terminado el periodo de uso de la concesión. La dirección IP origen es la del cliente y la de destino es la del servidor. 1.4 Funcionamiento del protocolo Inicialmente la red dispone de un servidor DHCP el cual se encargará de proporcionar la configuración IP a todos los PC's conectados a la misma. Generalmente, este servidor DHCP tendrá una dirección IP configurada estáticamente por el administrador de la red. Los PC's conectados solicitan sus parámetros IP al servidor, y éste les va asignando direcciones del rango que sirve, de entre aquellas que le quedan libres. Si deseamos que a determinados equipos el servidor les sirva siempre la misma, podemos forzar la asignación de la dirección IP deseada a equipos concretos. Además también pueden excluirse del rango de direcciones IP que va a servir nuestro servidor, aquellas que deseamos que estén asociadas de forma estática a determinados equipos o periféricos de red. Si por error dejásemos algún equipo de la red configurado con un direccionamiento IP estático del rango gestionado por nuestro servidor DHCP, podría ocurrir que cuando nuestro servidor concediera una dirección IP a la estación de trabajo solicitante, dicha dirección IP fuera la que estuviera siendo utilizada por el equipo con direccionamiento estático, provocándose un conflicto de IP. Un servidor DHCP incluye mecanismos para evitar duplicidades de direcciones IP en la red. El funcionamiento del protocolo DHCP varía en función de si el cliente que trata de obtener su Página 4 Rafael Lozano DHCP configuración de red disponía ya o no de una concesión previa. 1.4.1 El cliente dispone de una concesión previa En caso de que el cliente DHCP haya obtenido anteriormente una concesión de un servidor DHCP, cada vez que el cliente arranque de nuevo, se comportará del siguiente modo: ✔ Si la concesión de alquiler de licencia ha caducado, el cliente solicitará una nueva concesión al servidor DHCP el cual podrá volver a asignar la misma dirección IP anterior. ✔ Si la concesión de alquiler no ha caducado en el momento del inicio, el cliente intentará renovar su concesión en el servidor DHCP, es decir, que le sea asignada la misma dirección IP. ✔ Si durante el intento de renovación de su concesión, el cliente no puede localizar un servidor DHCP, intentará realizar un "ping" a la puerta de enlace predeterminada de la concesión; si el resultado del "ping" es satisfactorio, el cliente DHCP supone que sigue ubicado en la misma red en que obtuvo su concesión actual y continuará utilizándola; en caso de que el resultado del "ping" sea erróneo, el cliente supone que ha sido movido a otra red en que los servicios DHCP no están disponibles, y configura automáticamente su dirección IP utilizando una dirección de la red de clase B reservada de Microsoft, 169.254.0.0, con máscara de subred 255.255.0.0 (obviamente el equipo no conectará con la red). Una vez que el cliente se ha configurado automáticamente con una dirección IP del rango indicado, buscará un servidor DHCP en segundo plano cada cinco minutos para obtener una concesión. 1.4.2 El cliente no dispone de una concesión previa En caso de que el cliente nunca haya obtenido una concesión de licencia de un servidor DHCP: 1. El cliente DHCP intenta localizar un servidor DHCP y obtener una configuración del mismo. 2. Si no puede encontrar un servidor DHCP, el cliente DHCP configura automáticamente su dirección IP y su máscara de subred mediante la utilización de una dirección seleccionada de la red de clase B reservada de Microsoft, 169.254.0.0, con máscara de subred 255.255.0.0. El cliente comprobará la existencia de un servidor DHCP en segundo plano cada cinco minutos. Si posteriormente encuentra un servidor DHCP, el cliente abandonará la información que ha configurado automáticamente. A continuación, el cliente DHCP utiliza una dirección IP y el resto de parámetros de red IP que ofrece el servidor DHCP para actualizar los valores de su configuración IP. 1.4.3 Intercambio de mensajes del protocolo El proceso de obtención de una configuración de red IP por parte de un PC desde un servidor DHCP implica el intercambio de mensajes entre el servidor y el PC. Los mensajes que se intercambian son los siguientes: 1. El cliente hace un broadcast de un mensaje DHCPDISCOVER en su subred física. El mensaje DHCPDISCOVER puede incluir algunas opciones como sugerencias de la dirección de red, duración del arrendamiento, etc. 2. Cada servidor puede responder con un mensaje DHCPOFFER que incluye una dirección de red disponible y otras opciones de configuración. Página 5 Rafael Lozano DHCP 3. El cliente recibe uno o más mensajes DHCPOFFER de uno o más servidores. Elige uno basándose en los parámetros de configuración ofertados y hace un broadcast de un mensaje DHCPREQUEST que incluye el identificador del servidor para indicar qué mensaje ha seleccionado. 4. Los servidores reciben el broadcast de DHCPREQUEST del cliente. Los servidores no seleccionados utilizan el mensaje como notificación de que el cliente ha declinado su oferta. El servidor seleccionado vincula al cliente al almacenamiento persistente y responde con un mensaje DHCPACK que contiene los parámetros de configuración para el cliente. La combinación de las direcciones hardware y asignada del cliente constituyen un identificador único de su arrendamiento y las usan tanto el cliente como el servidor para identificar cualquier arrendamiento al que se haga referencia en un mensaje DHCP. El campo "your IP address" en los mensaje DHCPACK se rellena con la dirección de red seleccionada. 5. El cliente recibe el mensaje DHCPACK con parámetro de configuración. Realiza un chequeo final de estos parámetros, por ejemplo con ARP para la dirección de red asignada, y registra la duración del arrendamiento y el cookie de identificación de éste especificado en el mensaje DHCPACK. En este punto, el cliente está configurado. Si el cliente detecta un problema con los parámetros en el mensaje DHCPACK, envía un mensaje DHCPDECLINE al servidor y reinicia el proceso de configuración. El cliente debería esperar un mínimo de diez segundos antes de reiniciar este proceso para evitar un exceso de tráfico en la red en caso de que se produzca algún bucle. 6. Puede elegir renunciar a su arrendamiento enviando un mensaje DHCPRELEASE al servidor. El cliente especifica el arrendamiento al que renuncia incluyendo sus direcciones hardware y de red. Figura 1.- Funcionamiento del protocolo Página 6 Rafael Lozano DHCP 1.5 Agente de retransmisión DHCP El tráfico broadcast de una red no pasa a través de enrutadores para no saturar otras redes, pero los PC's envían mensajes por broadcast para localizar a un servidor DHCP. Si hay dos redes conectadas por un enrutador y en una de ellas está operando un servidor DHCP para ambas redes, los PC's de la otra no podrán obtener una dirección IP. El agente de restransmisión de DHCP o DHCP Relay Agent es un enrutador configurado para coger los mensajes broadcast de clientes DHCP y reenviarlos a los servidores DCHP en diferentes subredes. Así, PC's en una subred física que no dispone de un servidor DHCP pueden obtener sus parámetros de configuración de red IP a través de un enrutador que tiene configurado el agente de restransmisión DHCP. El funcionamiento de un agente de retransmisión DHCP es la siguiente: 1. El cliente envía un paquete broadcast DHCPDISCOVER para localizar un servidor DHCP en la red. 2. El agente de retransmisión toma la petición y reenvía esta petición al servidor DHCP. 3. El servidor envía el DHCPOFFER al agente de retransmisión DHCP. 4. El agente envía el broadcast DHCPOFFER. 5. El cliente envía el broascast DHCPREQUEST. 6. El agente reenvía esta petición al servidor DHCP. 7. El servidor envía DHCPACK al agente. 8. El agente envía el broadcast DHCPACK. 2 Servicio DHCP en Windows Server 2012 Microsoft fue uno de los desarrolladores del protocolo DHCP e incluye un servidor en sus versiones de Windows Server para redes clientes/servidor. DHCP es un servicio fundamental para cualquier red basada en TCP/IP que tenga más de unos pocos clientes. Es importante diseñar la implantación de los servidores DHCP antes de su instalación. Generalmente, las redes pequeñas pueden utilizar un solo servidor de DHCP. Si se tiene una red de mayor tamaño deben tenerse en cuenta las subredes y enrutadores que se están utilizando y dividir también el espacio de direcciones entre dos servidores para proporcionar tolerancia a fallos. Para esta planificación hay que tener en cuenta lo siguiente: ✔ Hay que dibujar un mapa de la red que muestre las subredes físicas y lógicas y los enrutadores entre las subredes. ✔ Si la red utiliza enrutadores para subdividirse en subredes, hay que determinar si esos enrutadores soportan la entrega de difusiones de DHCP (los enrutadores más modernos lo hace, aunque esta opción hay que activarla). ✔ Hay que planear la división del rango de direcciones IP entre dos servidores para proporcionar tolerancia a los fallos. Los servidores DHCP no pueden comunicarse entre sí, por lo que no pueden compartir las mismas direcciones. Conviene darle el 80% de las direcciones a un servidor y el 20% al otro (regla del 80/20). Si se cae uno de los servidores, los clientes pueden seguir recibiendo direcciones IP del otro. Página 7 Rafael Lozano ✔ DHCP Si el enlace entre las subredes es rápido y fiable y los enrutadores intermedios pueden configurarse para que entreguen difusiones de DHCP, o se añade un agente de retransmisión de DHCP. También, se puede colocar el segundo servidor DHCP en una subred física diferente. En caso contrario, hay que implantar un par de servidores DHCP en cada subred física. 2.1 Instalación del servicio DHCP La instalación del servicio DHCP en un servidor Windows Server 2012 (WS2012) consiste en añadir esta función del servidor desde complemento Administrador del servidor, que se encuentra en la barra de tareas . Para ello seguir los siguientes pasos: 1. Para añadir un nuevo servicio hacer clic en el enlace Agregar roles y características. 2. Aparece una pantalla en la que nos recuerda unas comprobaciones previas que debemos hacer antes de realizar la instalación de cualquier servicio. Estas comprobaciones consisten en asegurarnos de que las tarjetas de red están perfectamente configuradas y nuestro sistema está actualizado. Si lo deseamos, podemos hacer que esta pantalla no aparezca más cuando vayamos a instalar un nuevo servicio haciendo clic en la casilla Omitir esta página de forma predeterminada. Una vez hechas estas comprobaciones hacemos clic en el botón Siguiente. 3. A continuación indicaremos el tipo de instalación. En esta ocasión seleccionaremos la opción Instalación basada en características o en roles. 4. En la pantalla de selección de servidor seleccionar el servidor dentro de la lista Grupo de servidores. 5. En la pantalla de selección de roles de servidor activamos DHCP. Posteriormente hacemos clic en el botón Agregar característica de la ventana que aparece. Dejamos activada la casilla Incluir herramienta de administración (si procede). Finalmente hacemos clic en el botón Siguiente. Página 8 Rafael Lozano DHCP Figura 2.- Roles de servidor 6. A continuación aparece una pantalla de introducción al servicio DHCP. En la misma se presenta información sobre el servicio y los requisitos que necesitamos para ponerlo en marcha. También hay unos enlaces a la ayuda que nos informará en detalle sobre DHCP. Hacemos clic en el botón Siguiente. 7. Finalmente, en la ventana de confirmación hacemos clic en el botón Instalar. 8. A partir de ahora comienza la instalación y aparece una ventana mostrando el progreso de la misma. Cuando finalice la instalación, y si todo ha ido bien, haremos clic en el botón Cerrar. Figura 3.- Servidores DHCP En el panel izquierdo del Administrador del servidor debe haber aparecido el elemento DHCP. Si hacemos clic en él veremos la pantalla anterior. Vemos que hay un mensaje de aviso indicando que necesitamos configurar nuestro servidor. Solamente hemos instalado el role DHCP pero no hemos configurado ningún ámbito ni ninguna otra característica. Página 9 Rafael Lozano DHCP Si hacemos clic en el enlace Mas... nos aparecerá una pantalla que nos indica que la configuración posterior a la instalación no se ha realizado. Si hacemos clic en el enlace Completar configuración de DHCP comenzará el asistente para la configuración DHCP. Este asistente solamente crea los grupos de seguridad de usuarios que pueden administrar DHCP (Administradores DHCP y Usuarios DHCP). Una vez realizado esto podemos cerrar la ventana Detalle de tarea de todos los servidores. En la ventana de Administración del servidor DHCP haremos clic con el botón derecho del ratón sobre el servidor y seleccionaremos la opción Administrador DHCP. Aparecerá la consola de administración DHCP. Figura 4.- Administrador DHCP Si desplegamos el árbol DHCP del panel izquierdo y llegamos al elemento IPv4 veremos que no tenemos ningún ámbito definido y nos informa de ello. Para crear un ámbito seguir los siguientes pasos: 1. Sobre el elemento IPv4 hacer clic con el botón derecho del ratón y seleccionar la opción Ambito nuevo...o elegir la opción de menú Acción → Ambito nuevo... 2. En la pantalla de bienvenida del asistente hacer clic en el botón Siguiente. 3. Introducimos el nombre y la descripción del ámbito. Posteriormente haremos clic en el botón Siguiente. 4. En la siguiente ventana tenemos que introducir las direcciones IP inicial y final del ámbito, junto con la máscara de red. Haremos clic en el botón Siguiente. 5. En esta pantalla introducimos un ámbito de exclusión, en el caso de que lo haya. Por cada Página 10 Rafael Lozano DHCP intervalo de exclusión introducimos las direcciones inicial y final y haremos clic en el botón Agregar. Si deseamos eliminar alguno de los intervalos de exclusión introducidos previamente lo seleccionamos de la lista y haremos clic en el botón Eliminar. 6. Ahora debemos establecer la duración de las concesiones a los clientes. El ámbito ya está definido en cuanto el conjunto de direcciones que se van a servir. Sin embargo, ahora debemos configurar las opciones DHCP que se servirán a los clientes junto con la dirección IP. Si queremos configurar un servidor DHCP para que los clientes puedan conectar a Internet habrá que configurar como mínimo la puerta de enlace y las direcciones IP de los servidores de nombres. 7. Dejamos seleccionada la opción Configurar estas opciones ahora y hacer clic en el botón Siguiente. 8. Introducimos la dirección IP de la puerta de enlace y haremos clic en el botón Agregar. Posteriormente haremos clic en el botón Siguiente. 9. Ahora debemos introducir el nombre de dominio y las direcciones IP de los servidores de nombres. Por cada servidor de nombres hay que introducir la dirección IP y hacer clic en el botón Agregar. El servidor hará una comprobación de si las direcciones IP introducidas corresponden realmente a un servidor DNS y en el caso de que no lo sean, emitirá un aviso dando opción a rectificarla o confirmarla. Cuando terminemos de definir los servidores de nombre haremos clic en el botón Siguiente. 10.A continuación hay que configurar la dirección IP de los servidores WINS, en el caso de que los haya. Posteriormente haremos clic en el botón Siguiente. 11.Por último, activamos el ámbito para que comience a operar inmediatamente. Hacemos clic en el botón Siguiente y en el último del asistente haremos clic en el botón Finalizar. Ya disponemos de nuestro ámbito configurado y activo para servir concesiones a los clientes de la red. Desde esta consola de administración podemos retocar la configuración DHCP modificando ámbitos, creando nuevos, actualizando las opciones de servidor y ámbito, etc. Además también podremos visualizar las concesiones actualmente activas. 2.2 Autorizar un servidor DHCP En una red local que implementa Active Directory (AD) todos los servidores DHCP tienen que estar autorizados. De esta forma se evita que servidores DHCP no controlados por el administrador de red puedan servir direcciones y provocar conflictos en la red. Si nuestra red no tiene instalado el servicio de directorio AD no es necesario autorizar el servidor DHCP. Por el contrario, si tenemos instalado Active Directory tenemos que autorizar el servidor DHCP para que pueda dar servicio a la red. Para ello seguir los siguientes pasos: 1. En Administrar servidor seleccionar DHCP en el panel izquierdo. 2. En la lista de servidores hacer clic con el botón derecho del ratón sobre el servidor y seleccionar la opción Administrador DHCP. 3. Sobre la raíz DHCP en el panel izquierdo hacer clic con el botón derecho y seleccionar la Página 11 Rafael Lozano DHCP opción Administrar servidores autorizados... 4. Aparece la ventana de administración de servidores autorizados. Figura 5.- Servidores autorizados 5. En la ventana anterior tenemos la lista de servidores autorizados. Hacemos clic en el botón Autorizar... para añadir un servidor. 6. En la ventana que aparece rellenamos la dirección IP del servidor que vamos a autorizar y hacemos clic en el botón Aceptar. 7. WS2012 comprueba que la dirección IP introducida corresponde a un servidor DHCP. Si es así, aparecerá una ventana con el nombre y la dirección IP del servidor para confirmarlo. Hacemos clic en el botón Aceptar y el servidor se habrá añadido a la lista de servidores autorizados. Los servidores autorizados se encuentran registrados en AD. Cuando un servidor no autorizado envía mensajes a la red, AD lo bloquea al no estar autorizado. Introducir un servidor en la lista de servidores autorizados solamente puede hacerse si AD está instalado, ya que los servidores DHCP autorizados se tienen que registrar en la base de datos del directorio. 2.3 Comprobación del funcionamiento del servidor DHCP Una vez el servicio DHCP está instalado y operando, la mejor forma de comprobarlo es arrancando un equipo cliente con configuración de red automática y que éste obtenga una configuración IP para su interfaz de red. Si todo ha ido bien, podemos ver la siguiente ventana de estado de la interfaz de red Página 12 Rafael Lozano DHCP Figura 6.- Detalles de la conexión de red En la figura anterior vemos que el servidor DHCP con dirección IP 192.168.20.1 ha servido una concesión con dirección IP 192.168.20.20. Esta es la primera dirección del conjunto de direcciones que sirve nuestro servidor DHCP. También podemos apreciar el resto de parámetros de configuración IP, como el dominio DNS, máscara de red, puerta de enlace, servidor DNS. Además, también podemos ver la duración de la concesión ya que disponemos de la fecha de la concesión y la fecha en que expira. Podemos ver que la duración es 6 días, tal y como configuramos el ámbito en nuestro servidor. Figura 7.- Concesión de direcciones en la consola de administración DHCP Las concesiones que nuestro servidor va asignando a los clientes quedan registradas y podemos verlas en la consola de administración del servidor. Si hacemos clic en el elemento Concesión de direcciones veremos una lista de las concesiones actuales. Página 13 Rafael Lozano DHCP 2.4 Reservas Una reserva es una asignación de la misma dirección IP a un equipo de la red. Esto significa que un PC con reserva en el servidor DHCP siempre obtendrá la misma dirección IP. Las reservas se pueden utilizar en lugar de las direcciones IP estáticas, las cuales necesitan que se creen exclusiones en el ámbito DHCP y configuración manual de la tarjeta de red en el PC en cuestión, para todos los equipos que necesiten conservar una dirección IP concreta, como los servidores de DNS o Web. El empleo de reservas en lugar de direcciones estáticas garantiza que los servidores tengan direcciones IP consistentes y ofrece también la posibilidad de recuperar la dirección IP en el futuro si se retira o se traslada el servidor. Para añadir una reserva de dirección a un ámbito hay que dar los siguientes pasos: 1. En Administrar servidor seleccionar DHCP en el panel izquierdo. 2. En la lista de servidores hacer clic con el botón derecho del ratón sobre el servidor y seleccionar la opción Administrador DHCP. 3. Desplega el árbol del panel izquierdo y hacer clic con el botón derecho del ratón sobre el elemento Reservas en el ámbito. Seleccionar la opción Reserva nueva... 4. En la ventana Reserva nueva rellenar los siguientes campos: a) Nombre de la reserva.- Texto descriptivo de la reserva. Generalmente lo usamos para indicar el nombre del equipo al que estamos creando la reserva o su función. b) Dirección IP que se asignará siempre al equipo. c) Dirección MAC del equipo. Cuando le llegue al servidor un mensaje DHCPDISCOVER identificará al equipo por la dirección MAC que tiene el mensaje y la usará para asignarle la dirección IP reservada. d) Descripción.- Un texto descriptivo para mayor detalle. e) Tipos compatibles.- Indicaremos si la reserva es para un cliente DHCP, BOOTP o ambos. Cuando el equipo con dirección MAC indicada en la reserva solicite una concesión al servidor, éste le dará la dirección IP de la reserva. Las reservas aparecen también, en Concesión de direcciones de la consola de administración DHCP. En el campo Caducidad de la sesión nos indica que es una reserva y entre paréntesis si está activa (el ordenador encendido y haciendo uso de la concesión) o inactiva (el ordenador apagado o sin usar la concesión). 2.5 Gestión de ámbitos En el árbol de la consola DHCP, cada ámbito creado y en funcionamiento dispone de 4 carpetas: ✔ Conjunto de direcciones.- Presenta el intervalo de direcciones susceptibles de concederse y muestra también los rangos de exclusiones definidos. ✔ Concesiones de direcciones.- Muestra una lista con las direcciones actuales que están concedidas. Página 14 Rafael Lozano DHCP ✔ Reservas.- Desde aquí se pueden gestionar la reserva de direcciones. ✔ Opciones de ámbito.- Muestra la lista de opciones que se han configurado para el ámbito. Figura 8.- Reserva En la carpeta Concesiones de direcciones nos muestra la lista de direcciones que actualmente están concedidas. En la lista se incluyen tanto las direcciones suministradas por el servidor a los clientes como las reservas. Figura 9.- Concesiones de direcciones Como se observa en la figura anterior la lista muestra la dirección IP del cliente, el nombre del PC y la fecha en que caduca la concesión. Este campo muestra Reserva si la dirección es una reserva. En el caso de que el ordenador esté encendido mostrará entre paréntesis activa y en caso contrario mostrará inactiva. Podemos comprobar si el PC al que hemos hecho la reserva obtiene la dirección IP reservada. Si encendemos este PC y obtenemos los detalles de su configuración de red tendremos la prueba de que la reserva está funcionando correctamente. Página 15 Rafael Lozano DHCP Figura 10.- Detalles de la configuración IP para un PC con reserva 2.5.1 Propiedades de ámbito Se pueden modificar las propiedades de un ámbito haciendo clic con el botón derecho del ratón sobre él y seleccionando la opción Propiedades. Esto hace que aparezca el cuadro de diálogo Propiedades de ámbito. Desde aquí podemos cambiar la configuración del ámbito que se estableció cuando se creó. Podemos cambiar las direcciones inicial y final del ámbito, la duración de la concesión, etc. Página 16 Rafael Lozano DHCP Figura 11.- Propiedades de ámbito 2.5.2 Crear un intervalo de exclusión Podemos añadir un intervalo de exclusión al ámbito si deseamos tener un conjunto de direcciones IP para asignarlas estáticamente. Para añadir un intervalo de exclusión seguir los siguientes pasos: 1. En Administrar servidor seleccionar DHCP en el panel izquierdo. 2. En la lista de servidores hacer clic con el botón derecho del ratón sobre el servidor y seleccionar la opción Administrador DHCP. 3. Desplegar el árbol y hacer clic con el botón derecho del ratón sobre la carpeta Conjunto de direcciones. Seleccionar la opción Nuevo intervalo de exclusión... 4. En la ventana Agregar exclusión rellenar la dirección IP inicial y la final del intervalo. 5. Hacer clic en el botón Agregar. 6. Después de introducir todos los intervalos de exclusión que se necesiten hacemos clic en el botón Cerrar. Página 17 Rafael Lozano DHCP Todas las direcciones IP dentro de los intervalos de exclusión no serán ofertadas por el servidor DHCP. Figura 12.- Agregar intervalo de exclusión 2.5.3 Opciones de ámbito Cuando se crea un ámbito en el servidor DHCP hay que configurar una serie de opciones para que los clientes DHCP obtengan una configuración IP completa desde el servidor. Algunas de estas opciones, las necesarias para conectar un PC a Internet, ya se establecieron cuando se instaló el servidor y se creó el ámbito. Sin embargo, puede surgir la necesidad de cambiar alguno de sus valores. Además, el estándar DHCP establece muchas más opciones las cuales pueden añadirse al ámbito. Estas opciones pueden definirse a nivel de servidor, las cuales serían heredadas por los ámbitos que no las tuvieran definidas, o especificarse a nivel de ámbito. Las opciones de ámbito tienen precedencia sobre las de servidor. Para gestionar las opciones de ámbito hay que seguir el siguiente proceso: 1. En Administrar servidor seleccionar DHCP en el panel izquierdo. 2. En la lista de servidores hacer clic con el botón derecho del ratón sobre el servidor y seleccionar la opción Administrador DHCP. 3. Si vamos a configurar las opciones de servidor, hacer clic con el botón derecho del ratón sobre la carpeta Opciones de servidor y seleccionamos la opción Configurar opciones.... Por el contrario, si vamos a configurar las opciones de ámbito hacemos clic en la carpeta Opciones de ámbito dentro del ámbito en cuestión y sobre el panel derecho hacemos clic con el botón derecho del ratón, seleccionando después la opción Configurar opciones... 4. En la ventana Opciones de servidor u Opciones de ámbito seleccionamos la opción deseada. Al activar su casilla correspondiente estamos indicando que esta opción irá en las concesiones que el servidor da a los clientes. 5. Además de activarla hay que establecer su valor. Dependiendo del tipo de dato de la opción los campos para rellenar su valor tendrán una forma u otra. Por ejemplo, en el caso de la opción nº 6 Servidores DNS consiste en una lista de direcciones IP las cuales se rellenan en el campo Dirección IP y luego se hace clic en el botón Agregar. 6. Al terminar de definir opciones hacer clic en el botón Aceptar. Página 18 Rafael Lozano DHCP Figura 13.- Opciones de ámbito 2.6 Detección de conflictos basada en el servidor La detección de conflictos basada en el servidor consiste en una técnica que previene la concesión de direcciones IP duplicadas en la red. El servidor DHCP siempre garantiza que las direcciones que él sirve son únicas, pero puede haber equipos en la red con direcciones IP asignadas estáticamente, lo cual el servidor desconoce. La técnica en si es bastante sencilla. Durante el proceso de obtención de una concesión por parte de un cliente el servidor selecciona una dirección IP dentro del rango de direcciones válidas y hace ping a esta dirección. Si hay respuesta al ping significa que existe un equipo en la red con esta dirección IP, así que la desecha y prueba con otra. Si, por el contrario, no hay respuesta al ping significa que ningún equipo la tiene y, por tanto, puede asignarse. Los clientes Windows a partir de las versiones XP o 2000 comprueban de manera automática que la dirección IP ofrecida por el servidor de DHCP esté disponible antes de aceptarla, por lo que la detección de conflictos sólo resulta útil para los clientes de versiones anteriores. En aras de la conservación del ancho de banda de la red y de la reducción de tiempos de inicio de los clientes, esta opción debe estar desactivada a menos que se tengan problemas con direcciones IP duplicadas, como puede ser el caso si se tienen en la red direcciones IP estáticas no documentadas. Para activar la detección de conflictos basada en el servidor seguir los siguientes pasos: 1. En Administrar servidor seleccionar DHCP en el panel izquierdo. Página 19 Rafael Lozano DHCP 2. En la lista de servidores hacer clic con el botón derecho del ratón sobre el servidor y seleccionar la opción Administrador DHCP. 3. Desplegar el árbol y hacer clic con el botón derecho del ratón sobre el elemento IPv4. Seleccionar posteriormente la opción Propiedades. 4. Hacer clic en la pestaña Opciones avanzadas. 5. Rellenar el campo Intentos de detección de conflictos con un valor entre 0 y 5. 0 indica que no hay detección de conflictos. Figura 14.- Detección de conflictos en el servidor 2.7 Copia de seguridad y restauración de la base de datos DHCP El servidor DHCP mantiene de manera automática copias de seguridad de la base de datos de DHCP en la carpeta C:\WINDOWS\system32\dhcp\backup. Durante esta copia de seguridad se guarda todo, salvo el registro y los parámetros de configuración, como los parámetros de los registros de autoría. Para realizar una copia de seguridad hay que seguir los siguientes pasos: 1. En Administrar servidor seleccionar DHCP en el panel izquierdo. 2. En la lista de servidores hacer clic con el botón derecho del ratón sobre el servidor y seleccionar la opción Administrador DHCP. 3. Hacer clic con el botón derecho del ratón sobre el servidor en el árbol de la consola y Página 20 Rafael Lozano DHCP seleccionar la opción Copia de seguridad. 4. Seleccionar la carpeta en la que se desea almacenar los archivos de copia de seguridad y hacer clic en el botón Aceptar. Resulta conveniente guardar una copia de seguridad para el caso de que tengamos que volver a configurar el servidor DHCP en una instalación nueva o migremos el servicio DHCP a otro servidor. Para restaurar la base de datos DHCP a partir de una copia de seguridad, bien en el mismo sistema, bien en un servidor diferente, se deben seguir los siguientes pasos: 1. En Administrar servidor seleccionar DHCP en el panel izquierdo. 2. En la lista de servidores hacer clic con el botón derecho del ratón sobre el servidor y seleccionar la opción Administrador DHCP. 3. Hacer clic con el botón derecho del ratón sobre el servidor en el árbol de la consola y seleccionar la opción Copia de seguridad. 4. Seleccionar la carpeta en la que se encuentran los archivos de copia de seguridad y hacer clic en el botón Aceptar. 5. Para restaurar la copia hay que parar el servidor. Hacer clic en el botón Aceptar en cuadro de diálogo que lo advierte. Para modificar la carpeta en la que se realiza de manera automática la copia de seguridad de la base de datos DHCP hay que hacer el servidor DHCP con el botón derecho del ratón en el árbol de la consola, escoger la opción Propiedades en el menú y en la pestaña Opciones avanzadas rellenar el campo Ruta de acceso a la copia de seguridad. 2.8 Uso de ipconfig para verificar, liberar o renovar una concesión En cualquier ordenador con sistema operativo Windows con dirección IP dinámica se puede ejecutar una utilidad en línea de comandos para liberar, renovar o verificar la concesión de la dirección de ese cliente. En una ventana de símbolo del sistema se puede utilizar uno de los comandos siguientes: Para comprobar la concesión del cliente hay que ejecutar ipconfig /all El resultado del comando es información detallada sobre la configuración de todas las interfaces de red. Nos desplazamos una interfaz concreto y vemos la siguiente información: Página 21 Rafael Lozano DHCP Figura 15.- Resultado de ipconfig /all Como se puede apreciar nos muestra todos los parámetros de red obtenidos por el servidor DHCP. Para liberar la concesión de un cliente hay que ejecutar ipconfig /release “Nombre de conexión de área local” Si ejecutamos el anterior comando sin el último parámetro estaríamos liberando todas las concesiones. Por último, para renovar una concesión hay que ejecutar ipconfig /renew “Nombre de conexión de área local” En los dos últimos casos ofrece como resultado un listado con las configuraciones de red actuales en todas las interfaces de red del sistema. 3 DHCP3 La implementación más popular del servidor DHCP en Linux es dhcp3, la cual es desarrollada y mantenida por ISC (Internet System Consortium) y que se puede encontrar en http://www.isc.org. Además, en la misma web disponemos de documentación para su instalación y configuración, aunque para ello es mejor utilizar el paquete de la distribución. 3.1 Instalación del servidor Como en cualquier otra aplicación Linux, puede hacerse una instalación desde código fuente o desde paquetes binarios. La primera forma es común a cualquier distribución Linux, pero es la más difícil. La descarga del código fuente y el proceso de instalación pueden obtenerse en la web del ISC. Lo más cómodo es hacer una instalación desde paquetes binarios por lo que habrá que emplear la herramienta de instalación de paquetes propia de la distribución. En este caso emplearemos apt-get que se emplea en las distribuciones Debian/Ubuntu. Abrir una ventana de Página 22 Rafael Lozano DHCP terminal como usuario root y teclear lo siguiente: apt-get install dhcp3-server Una vez está instalado, arranca inmediatamente. Cada vez que hagamos algún cambio en los archivos de configuración deberemos reiniciar el servicio ejecutando el siguiente comando como usuario root . service isc-dhcp-server restart 3.2 Archivo de configuración Al igual que la mayoría de los servicios en en Linux, el servidor DHCP dispone de su propio archivo de configuración. Se trata del archivo /etc/dhcp/dhcpd.conf. Este es un archivo de texto en el que la configuración se establece mediante directivas que pueden ser de dos tipos: parámetros y secciones. Los parámetros se emplean para indicar al servidor como tiene que hacer algo (por ejemplo, cuánto tiempo se ofrecen las concesiones), si puede hacer algo (por ejemplo, si suministra direcciones a clientes desconocidos) o qué parámetros se suministran al cliente (por ejemplo, la puerta de enlace). Algunos parámetros comienzan con la palabra clave option que corresponden a opciones estándar del protocolo DHCP. Estas opciones pueden consultarse en la página de manual de dhcp- options. Existen otros parámetros que no comienzan con ninguna palabra clave y controlan el comportamiento del servidor DHCP. Los parámetros, independientemente de su tipo, siempre terminan en punto y coma. Las secciones se usan para describir la topología de la red, los clientes en la red, indicar direcciones que pueden ser suministradas a los clientes, grupos de ordenadores, etc. Este archivo de configuración consta de una primera parte principal donde se especifican los parámetros generales a nivel del servidor. Por ejemplo, definen el alquiler y los parámetros adicionales que se proporcionarán al a los clientes de cualquier ámbito. El resto del archivo de configuración consta de una serie de secciones que especifican principalmente los ámbitos con los rangos de direcciones IPs que serán cedidas a los clientes que lo soliciten (sección subnet) y especificaciones concretas de equipos (sección host). Los parámetros incluidos dentro de las secciones deberán ir entre llaves { y }. Los valores de los parámetros especificados al principio del archivo se aplican como valores por defecto al resto de secciones aunque si dentro de una sección se redefine alguno de los parámetros, se aplicará éste ignorándose el valor por defecto definido a nivel de servidor. De forma genérica, el archivo de configuración tiene el siguiente aspecto parámetros globales subnet direccion_red netmask máscara { parámetros especificos de subred range direccion_inicial direccion_final; } Página 23 Rafael Lozano DHCP … 3.3 Crear un nuevo ámbito Un ámbito se especifica en una sección que empiezan con la palabra clave subnet seguido de la dirección de red de la subred, continua con la palabra clave netmask seguido de la máscara de red. A continuación estará la lista de opciones para dicho ámbito encerradas entre llaves. Para indicar el rango de direcciones hay que emplear la opción range, la cual lleva la dirección inicial y la dirección final del rango. Por ejemplo, supongamos que en nuestra red local disponemos de direcciones pertenecientes a la subred 192.168.21.0/24 y deseamos que nuestro servidor DHCP alquile direcciones del rango comprendido entre la dirección 192.168.21.20 y 192.168.21.254. La sección subnet que debemos crear será: subnet 192.168.21.0 netmask 255.255.255.0 { range 192.168.21.20 192.168.21.254; } Aquí solamente hemos indicado el rango de direcciones a asignar a los clientes. Estos solamente recibirían una dirección IP con una máscara de red. El resto de las opciones necesarias pueden indicarse a nivel de servidor o dentro del propio ámbito, las cuales tendrían preferencia sobre las definidas a nivel de servidor. Como mínimo, para que un ordenador esté correctamente configurado necesitará la dirección de broadcast, la máscara de red, el nombre de dominio, la puerta de enlace y los servidores de nombre de dominio. Para establecer la dirección de broadcast se emplea la opción DHCP option broadcast- address. Por ejemplo: option broadcast-address 192.168.1.255; La opción DHCP option subnet-mask permite establecer la máscara de red, aunque ésta se puede obtener también en la propia declaración del ámbito. option subnet-mask 255.255.255.0; La opción que se emplea para indicar el nombre de dominio es option domain-name. Por ejemplo, para indicar el nombre de dominio serviciosenred.local habría que incluir la siguiente opción. option domain-name “serviciosenred.local”; La dirección IP de la puerta de enlace se indica con la opción option routers. Puede indicarse una dirección IP o un hostname que deberá ser resuelto. En nuestro caso option routers 192.168.21.1; El parámetro para establecer las direcciones de los servidores DNS es option domain- name-servers. Los servidores DNS, como cualquier parámetro en el que haya que indicar una dirección IP, puede hacerse de dos formas. La primera es mediante una dirección IP, la segunda es Página 24 Rafael Lozano DHCP mediante un hostname. Si se pone el hostname tiene que estar entrecomillado y en el caso que al resolverse se obtengan dos direcciones IP, se suministrarían ambas. En el caso de indicar más de una dirección estas se separarán con coma. option domain-name-servers 192.168.21.1, 192.168.21.10; Podemos completar la declaración de ámbito con estas opciones y quedaría de la siguiente forma: subnet 192.168.21.0 netmask 255.255.255.0 { range 192.168.21.20 192.168.21.254; option broadcast-address 192.168.1.255; option subnet-mask 255.255.255.0; option domain-name “serviciosenred.local”; option routers 192.168.21.1; option domain-name-servers 192.168.21.1, 192.168.21.10; } Con este ámbito, el servidor DHCP asignará concesiones a los clientes. Estas tendrán una duración definida a nivel de servidor, pero se pueden redefinir a nivel de ámbito. Disponemos de varias opciones que permiten definir la duración de las concesiones y características afines. Para establecer la duración de la concesión por defecto tenemos la opción default- lease-time que se establece en segundos e indica la duración de la concesión para clientes que no solicitan una duración específica. La duración máxima de la concesión se establece con maxlease-time y la mínima con min-lease-time. El siguiente ejemplo establece una duración por defecto de 6 horas, mínima de 3 horas y máxima de 2 días. default-lease-time 21600; min-lease-time 10800; max-lease-time 172800; Con el parámetro option dhcp-renewal-time se establece el número de segundos que han de transcurrir desde que el cliente adquiere su concesión hasta que pasa al estado de renovación, durante el cual tiene que solicitar la renovación de la concesión al servidor que se la concedió. Naturalmente, este tiempo tiene que ser inferior a la duración de la concesión. Por ejemplo, para iniciar el proceso de renovación a las 5 horas de obtenerla habría que poner la siguiente opción en la configuración del servidor. option dhcp-renewal-time 18000; Cuando un cliente no consigue renovar su concesión con el servidor que se la sirvió, deberá volver a configurarse automáticamente, repitiendo todo el proceso que hizo anteriormente. Con la opción dhcp-rebinding-time se especifica el tiempo en segundos que tiene que transcurrir desde que adquiere la concesión hasta que tiene que volver a configurarse emitiendo un mensaje DHCPDISCOVER para contactar con algún servidor. El siguiente ejemplo establece este tiempo a 5 horas y media. option dhcp-rebinding-time 19800; Si completamos la declaración de ámbito con algunos tiempos de concesión quedaría de la Página 25 Rafael Lozano DHCP siguiente manera subnet 192.168.21.0 netmask 255.255.255.0 { range 192.168.21.20 192.168.21.254; option broadcast-address 192.168.1.255; option subnet-mask 255.255.255.0; option domain-name “serviciosenred.local”; option routers 192.168.21.1; option domain-name-servers 192.168.21.1, 192.168.21.10; default-lease-time 21600; option dhcp-renewal-time 18000; option dhcp-rebinding-time 23400; } 3.4 Reserva de direcciones Existe la posibilidad de establecer una configuración concreta a un cliente concreto identificándolo por la dirección MAC de su tarjeta de red. Recordemos que la dirección MAC es un número único, formado por 6 octetos, grabado en la memoria ROM de las tarjetas de red Ethernet y viene fijado de fábrica. Se suelen escribir los 6 octetos en hexadecimal separados por dos puntos. Todas las tarjetas de red tienen una dirección MAC única en el mundo. Es como un número de serie. Los tres primeros octetos indican el fabricante y los tres siguientes el número de serie en fabricación. En Linux se puede averiguar la dirección MAC mediante el comando ifconfig. En Windows podemos utilizar el comando ipconfig o consultar los detalles de la conexión de red. Para establecer una configuración de equipo es necesario crear una sección host. Dentro de la sección host hay que identificar al cliente concreto con la opción hardware ethernet y la dirección MAC de dicho cliente. La dirección IP que siempre se asignará a este cliente se indica con la opción fixed-address. Las declaraciones host tienen que incluirse fuera de cualquier ámbito. Por ejemplo, si deseamos crear una reserva para el servidor secundario cuya dirección MAC sea 00-A0-CC-41-0C-58 se configure siempre con la dirección IP 192.168.21.10 y puerta de enlace 192.168.1.2, que su hostname sea www.instituto.es y el nombre de dominio sea instituto.es la sección host que debemos crear será: host selise.serviciosenred.local { hardware ethernet 08:A0:27:B7:28:8A; fixed-address 192.168.21.10; } Cuando el PC cuya dirección MAC sea 08:A0:27:B7:28:8A 1 solicite una dirección IP al servidor DHCP, recibirá la 192.168.21.10. 1 La dirección MAC puesta como ejemplo corresponde a la máquina virtual SeLiSe. Esta dirección la genera de forma aleatoria VirtualBox por lo que en cada máquina virtual es diferente. En cada caso, habrá que consultar la dirección MAC asignada al adaptador de red de la máquina virtual. Página 26 Rafael Lozano DHCP 3.5 Prevención de conflictos El servidor DHCP dispone de un método para prevenir posibles conflictos en la asignación de direcciones. Este método consiste en hacer ping a la dirección IP seleccionada para el cliente antes de asignársela. Si no recibe respuesta en un segundo, asume que está libre y entonces la asigna. En el caso de que reciba respuesta, el servidor DHCP asume que hay un error en la configuración ya que la dirección IP está en uso por algún host en la red que no es cliente DHCP. Entonces marcará la dirección para no asignarla a ningún cliente. Este comportamiento es regulado por las dos siguientes opciones: ping-check on|off; ping-timeout segundos; La primera activa la prevención de conflictos, cuando su valor es on. No es recomendable, pero podría desactivarse con el valor off. La segunda permite especificar el tiempo que el servidor espera la respuesta del cliente. Por defecto es un segundo, pero este valor puede ser corto en subredes con latencias mayores. 3.6 Base de datos de concesiones en el servidor El servidor DHCP mantiene una base de datos de las concesiones asignadas. Esta base de datos es el archivo /var/lib/dhcp3/dhcpd.leases. Este archivo es mantenido por el servidor. Cada vez que una concesión se asigna, se renueva o se libera, el nuevo valor es grabado al final del archivo. Así, si más de una declaración de lease aparece en el archivo, la última en el fichero es la actual. Cada concesión tiene una sección lease la cual tiene el siguiente formato lease direcciónIP { starts fecha_inicio ends fecha_fin … } La palabra clave starts indica el momento de comienzo de la concesión y ends el final. Cada fecha tiene el siguiente formato: dia-semana año/mes/dia hora:minuto:segundo El tiempo es indicado en formato UTC, el cual no coincide con el tiempo local. Para ver el tiempo UTC equivalente al actual podemos ejecutar el comando date –u. Además de lo anterior, nos podemos encontrar con las siguientes opciones hardware tipo dirección-MAC La opción hardware registra el tipo de la tarjeta de red y la dirección MAC de la misma. uid identificador-cliente Nos indica el identificador que el cliente utiliza para enviar sus mensajes DHCP. client-hostname hostname Página 27 Rafael Lozano DHCP La mayoría de los clientes envían en su solicitud su hostname, el cual queda registrado. binding state estado Esta opción nos indica el estado actual de la concesión. El estado puede ser active, lo que significa que la concesión está activa, o free, indicando que la concesión está libre. next binding state estado Esta opción nos indica a que estado se moverá la concesión cuando expire el tiempo que aparece en ends. 3.7 Base de datos de concesiones en el cliente El comando dhclient mantiene una pila de concesiones adquiridas y las guarda en el archivo /var/lib/dhcp3/dhclient.leases para retomar una configuración en caso de que el servidor o el cliente se reinicien. Cada vez que se adquiere una concesión, se añade al final del archivo. Así, si el servidor no está disponible, el cliente puede configurarse. Cuando éste arranca, el comando dhclient mira este archivo y comprueba si la última concesión no ha expirado, si es así, la utiliza para configurar al cliente. El formato de cada concesión es parecido al del archivo /etc/dhcp3/dhcpd.leases. Cada concesión está en una declaración lease, y dentro de ella aparece la configuración obtenida del servidor, las opciones DHCP obtenidas y los tiempos de renovación y expiración de la concesión. La opción renew indica el momento en que hay que renovar la concesión con el servidor que se la concedió. Si no obtiene la renovación, tendrá que volver a realizar el proceso de configuración dinámica cuando venza el tiempo indicado en la opción rebind. Finalmente, deberá de dejar de usar la concesión cuando llegue el tiempo indicado en la opción expire. 3.8 Comando dhclient Este comando se emplea para que un cliente contacte con un servidor DHCP y obtenga su configuración. Se invoca automáticamente cuando el sistema operativo arranca para todas las interfaces de red que tienen configuración dinámica, pero también se puede hacer desde la línea de comando cuando se necesite. Durante el arranque lee el archivo /etc/dhcp3/dhclient.conf para obtener la configuración del cliente y obtiene una lista de las interfaces con configuración dinámica. Para cada una de ellas, intenta configurarla con el protocolo DHCP. Sintaxis dhclient [opciones] [interfaz] Parámetros interfaz Interfaz de red sobre la que actúa el comando. Si no se indica, el comando actuará sobre todas las interfaces de red con configuración dinámica. Página 28 Rafael Lozano DHCP Opciones r Envía un mensaje DHCPRELEASE al servidor para desestimar su actual configuración p puerto Especifica el puerto por el que envía los mensajes al servidor. Por defecto es el 68 Página 29 Rafael Lozano DHCP 4 Bibliografía WIKIPEDIA, DHCP. Julio 2013 <http://es.wikipedia.org/wiki/DHCP> [acceso 2 de mayo de 2013]. Disponible en ADR, El agente de retransmisión de DHCP o "DHCP Relay Agent". 2013 [acceso 2 de mayo de 2013]. Disponible en <http://www.adrformacion.com/cursos/exchange10/leccion2/tutorial5.html> LEMON, T. (Internet System Consortium). Páginas de manual dhcp-options. Disponible en man 5 dhcpoptions LEMON, T. (Internet System Consortium). Páginas de manual dhcpd.leases. Disponible en man 5 dhcpd.leases Página 31