domingo, 5 de febrero de 2012

DHCP es un protocolo estándar propuesto. Su estado es electivo. Las especificaciones actuales de DHCP se pueden encontrar en el RFC 1541 - Protocolo de Configuración de Host Dinámica (DHCP) y el RFC 1533 - Opciones DHCP y Extensiones del Fabricante BOOTP.
El Protocolo de Configuración de Host Dinámica (DHCP) proporciona un espacio de trabajo para pasar información de configuración a los hosts sobre una red TCP/IP. DHCP se basa en el protocolo BOOTP, añadiendo la capacidad de localización automática de direcciones de red reutilizables y opciones de configuración adicionales. Referirse a BOOTPpara mayor información. Los participantes de DHCP pueden interoperar con los de BOOTP (RFC 1534).
DHCP consiste en dos componentes:
  1. Un protocolo que transporta los parámetros de configuración específicos de host de un servidor DHCP a un host.
  2. Un mecanismo para la localización de direcciones de red a hosts.
IP requiere la configuración de muchos parámetros del software de implementación del protocolo. Como IP se puede usar en muchos tipos distintos de hardware de red, los valores para esos parámetros no se pueden adivinar o asumir que son correctos por defecto. El uso de un esquema de localización de direcciones distribuidas basada en un mecanismo sondeo/defensa, para descubrir direcciones de red que ya están en uso, no puede garantizar direcciones únicas de red porque los hosts no pueden ser capaces de defender sus direcciones de red.
DHCP soporta tres mecanismos para localizar direcciones IP:
  1. Localización automática. DHCP asigna una dirección IP permanente al host.
  2. Localización dinámica. DHCP asigna una dirección IP para un periodo de tiempo limitado. Tal dirección de red se llama una lease. Este es el único mecanismo que permite la reutilización automática de direcciones que ya no necesita el host a las que fue asignado.
  3. Localización manual. El administrador de red asigna la dirección del host.
El formato de un mensaje DHCP:

Figura: Formato del mensaje DHCP

código
Indica petición (1) o respuesta (2)
tipoHW
El tipo de hardware, por ejemplo: Ethernet (1) o Redes IEEE 802 (6). Referirse a STD 2 - Números Asignados de Internet para una lista completa.
longitud
Longitud de la dirección Hardware en bytes. Ethernet y token-ring usan 6, por ejemplo.
saltos
El cliente lo pone a 0. Lo incrementa el router que transmite la petición a otro servidor y se usa para identificar bucles. El RFC 951 sugiere que un valor de 3 indica un bucle.
ID de transacción
Se utiliza un número aleatorio para emparejar esta petición de arranque con la respuesta generada.
segundos
Lo fija el cliente. Es el tiempo transcurrido en segundos desde que el cliente comenzó su proceso de arranque.
campo flags
El bit más significativo del campo flags se usa como flag de broadcast. El resto de los bits debe ponerse a cero, y están reservados para uso futuro. Normalmente, los servidores DHCP intentan transportar mensajes DHCP directamente a un cliente usando transporte unicast. La dirección de destino en la cabecera IP se pone a tu drección IP DHCP y la dirección MAC se pone a la dirección hardware del cliente DHCP. Si un host es incapaz de recibir un datagram IP unicast hasta que sepa su dirección IP, entonces este bit de broadcast se debe activar para indicar al servidor que la respuesta DHCP se debe enviar como un broadcast IP y MAC. En otro caso, este bit se debe poner a cero.
dirección IP del cliente
Lo fija el cliente. Es una dirección IP conocida ó 0.0.0.0.
tu dirección IP
Lo fija el servidor si el campo de la dirección IP del cliente era 0.0.0.0.
dirección IP del servidor
Lo fija el servidor.
dirección IP del router
Lo fija el router expedidor si se está usando BOOTP forwarding.
dirección hardware del cliente
Lo fija el cliente. DHCP define una opción de "identificador de cliente" que se usa para la identificación del cliente. Si no se usa esta opción el cliente se identifica por su dirección MAC.
nombre del host servidor
Nombre del host servidor opcional terminado en X'00'.
nombre del fichero de arranque
El cliente lo deja nulo o especifica un nombre genérico, como el "router" indicando el tipo de fichero de arranque a utilizar. En una petición DHCPDISCOVER este campo se pone a nulo. El servidor devuelve un nombre de ruta de directorio cualificada completa en una petición DHCPOFFER. El valor termina en X'00'.
opciones
Los primeros cuatro bytes del campo de opciones del mensaje DHCP contiene la "cookie mágica" (99.130.83.99). Los restantes bytes consisten en parámetros etiquetados que se llaman opciones. Ver el RFC 1533 para más detalles.

Almacén de parámetros de configuración

DHCP proporciona almacenamiento constante de los parámetros de red para clientes de red. El modelo de almacenamiento constante de DHCP es que el servicio DHCP almacena una entrada con valor de clave para cada cliente, donde la clave es algún identificador único, por ejemplo un número de subred IP y un identificador único dentro de la subred y el valor contiene los parámetros de configuración para este cliente particular.

Localizar una nueva dirección de red

Esta sección describe la interacción cliente/servidor si el cliente no sabe su dirección de red. Asumir que el servidor DHCP tiene un bloque de direcciones de red de las que puede satisfactoriamente pedir para nuevas direcciones. Cada servidor mantiene también una base de datos de direcciones localizadas y alquiladas en almacenamiento local permanente.
  1. El cliente emite un mensaje DHCPDISCOVER en su subred física local. El mensaje DHCPDISCOVER puede incluir algunas opciones como sugerencia de dirección de red o duración del alquiler, etc.
  2. Cada servidor puede responder con un mensaje DHCPOFFER que incluye una dirección de red disponible y otras opciones de configuración.
  3. El cliente recibe uno o más mensajes DHCPOFFER de uno o más servidores. El cliente escoge uno basado en los parámetros de configuración ofrecidos y emite un mensaje DHCPREQUEST que incluye la opción "identificador de servidor" para indicar que mensaje ha seleccionado.
  4. Los servidores reciben la emisión de DHCPREQUEST de los clientes. Aquellos servidores que no haya seleccionado el mensaje DHCPREQUEST usan el mensaje como notificación de que el cliente ha rechazado esa oferta del servidor. El servidor seleccionado en el mensaje DHCPREQUEST almacena permanentemente el enlace con el cliente y responde con un mensaje DHCPACK que contiene los parámetros de configuración para la petición del cliente. La combinación del hardware del cliente y las direcciones de red asignadas constituye un identificador único para el alquiler del cliente y lo usan el cliente y el servidor para identificar un alquiler enviado en cualquier mensaje DHCP. El campo "tu dirección IP" en los mensajes DHCPACK se rellenan con las direcciones de red seleccionadas.
  5. El cliente recibe el mensaje DHCPACK con parámetros de configuración. El cliente realiza una comprobacióon final de los parámetros, por ejemplo con ARP para direcciones de red localizadas, y anota la duración del alquiler y el cookie de identificación de alquiler especificado en el mensaje DHCPACK. Llegados a este punto se configura el cliente. Si el cliente detecta un problema con los parámetros en el mensaje DHCPACK, el cliente 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 el proceso de configuración para evitar el tráfico excesivo de red en caso de bucle.Si el cliente recibe un mensaje DHCPNAK, el cliente reinicia el proceso de configuración.
  6. El cliente puede elegir abandonar su alquiler de una dirección de enviando un mensaje DHCPRELEASE al servidor. El cliente identifica el alquiler a liberar incluyendo su dirección de red y su dirección hardware.

Reutilizar una dirección de red localizada previamente

Si el cliente recuerda y desea volver a usar una dirección de red localizada previamente entones se procesan los siguientes pasos:
  1. El cliente emite un mensaje DHCPREQUEST en su subred local. El mensaje DHCPREQUEST incluye la dirección de red del cliente.
  2. Los servidores con conocimiento de los parámetros de configuración del cliente responden al cliente con un mensaje DHCPACK.
  3. El cliente recibe el mensaje DHCPACK con los parámetros de configuración. El cliente realiza una comprobación final de los parámetros y anota la duración del alquiler y el cookie de identificación del alquiler especificado en el mensaje DHCPACK. Llegados a este punto se configura el cliente.Si el cliente detecta un problema en los parámetros en el mensaje DHCPACK, el cliente envía un mensaje DHCPDECLINE al servidor y reinicia el proceso de configuración pidiendo una nueva dirección de red. Si el cliente recibe un mensaje DHCPNAK, no puede reutilizar su dirección de red memorizada. El cliente puede elegir abandonar su alquiler de una dirección de red enviando un mensaje DHCPRELEASE al servidor. El cliente identifica el alquiler que se libera con el cookie de identificación de alquiler.

No hay comentarios:

Publicar un comentario