The Cable GuyEl protocolo DHCPv6

Joseph Davies

El Protocolo de configuración dinámica de host (DHCP) se diseñó para encargarse de la asignación de direcciones IP y otra información de red a los equipos, de forma que puedan comunicarse en la red automáticamente. Con una red IPv6, en realidad no necesita DHCP para configurar direcciones, aunque puede haber buenas razones para utilizarlo. DHCP para IPv6 (DHCPv6) puede

proporcionar configuración de direcciones con estado o configuración sin estado a hosts de IPv6. Los hosts de IPv6 pueden utilizar varios métodos de configuración de direcciones:

La configuración automática de direcciones sin estado se utiliza para configurar las direcciones locales de vínculos y las direcciones no locales de vínculos adicionales mediante el intercambio de mensajes de solicitación de enrutador y anuncio de enrutador con los enrutadores vecinos.

La configuración automática de direcciones con estado se utiliza para configurar direcciones no locales de vínculos a través del uso de un protocolo de configuración como DHCP.

Un host de IPv6 realiza la configuración de direcciones sin estado automáticamente y utiliza un protocolo de configuración (como DHCPv6) en el mensaje de anuncio de enrutador basado en las siguientes marcas y enviado por un enrutador vecino:

Marca de configuración de dirección administrada, o marca M. Si se establece en 1, esta marca indica al host que utilice un protocolo de configuración para obtener direcciones con estado.

Otra marca de configuración con estado, o marca O. Si se establece en 1, esta marca indica al host que utilice un protocolo de configuración para obtener otro tipo de configuraciones.

La combinación de los valores de las marcas M y O puede dar como resultado lo siguiente:

Tanto la marca M como la marca O se establecen en 0. Esta combinación corresponde a una red sin infraestructura DHCPv6. Los hosts utilizan anuncios de enrutador para las direcciones no locales de vínculos y otros métodos (como la configuración manual) para la configuración de otros valores.

Tanto la marca M como la marca O se establecen en 1. DHCPv6 se utiliza para ambas direcciones y otros valores de configuración. Esta combinación se conoce como DHCPv6 con estado, en la que DHCPv6 asigna direcciones con estado a hosts de IPv6.

La marca M se establece en 0 y la marca O en 1. DHCPv6 no se utiliza para asignar direcciones, sólo para asignar otros valores de configuración. Los enrutadores vecinos se configuran para anunciar prefijos de direcciones no locales de vínculos desde las que los host de IPv6 derivan direcciones sin estado. Esta combinación se conoce como DHCPv6 sin estado: DHCPv6 no asigna direcciones con estado a hosts de IPv6, sino valores de configuración sin estado.

La marca M se establece en 1 y la marca O en 0. En esta combinación, DHCPv6 se utiliza para la configuración de direcciones pero no para otros valores de configuración. Dado que los hosts de IPv6 suelen necesitar valores de configuración diferente, como direcciones IPv6 de servidores DNS, se trata de una combinación improbable.

Al igual que en DHCP para IPv4, los componentes de una infraestructura DHCPv6 están formados por clientes DHCPv6 que solicitan configuración, servidores DHCPv6 que ofrecen configuración y agentes de retransmisión DHCPv6 que transmiten mensajes entre clientes y servidores cuando los clientes se encuentran en subredes que no tienen un servidor DHCPv6.

Mensajes DHCPv6

Al igual que en DHCP para IPv4, DHCPv6 utiliza mensajes de Protocolo de datagramas de usuario (UDP). Los clientes DHCPv6 escuchan mensajes DHCP en el puerto 546 de UDP. Los agentes de retransmisión y los servidores DHCPv6 escuchan mensajes en el puerto 547 de UDP. La estructura de mensajes DHCPv6 es mucho más sencilla que la de DHCP para IPv4, que tuvo sus orígenes en el protocolo BOOTP para ofrecer compatibilidad con estaciones de trabajo sin disco. En la figura 1 se muestra la estructura de los mensajes DHCPv6 enviados entre cliente y servidor.

Figura 1 Mensajes DHCPv6 entre cliente y servidor

Figura 1** Mensajes DHCPv6 entre cliente y servidor **(Hacer clic en la imagen para ampliarla)

El campo de tipo de mensaje de 1 byte indica el tipo de mensaje DHCPv6. El campo de identificador de transacción de 3 bytes viene determinado por un cliente y se utiliza para agrupar los mensajes de un intercambio de mensajes DHCPv6. Después del campo de identificador de transacción, se utilizan las opciones DHCPv6 para indicar las direcciones y la identificación de servidor y cliente, además de otros valores de configuración. Para obtener una lista de opciones DHCPv6 definidas, consulte RFC 3315, como se indica en la barra lateral "Recursos RFC de DHCPv6".

Las opciones DHCPv6 tienen un formato de tipo-longitud-valor (TLV). En la figura 2 se muestra la estructura de las opciones DHCPv6.

El campo de código de opción de 2 bytes indica una opción específica. El campo de longitud de opción de 2 bytes indica la longitud del campo de datos de opción en bytes. El campo de datos de opción contiene los datos de la opción.

Existe una estructura independiente de mensajes correspondiente a los mensajes intercambiados entre agentes de retransmisión y servidores para registrar información adicional. En la figura 3 se muestra la estructura de estas clases de mensajes.

Figura 2 Estructura de opciones DHCPv6

Figura 2** Estructura de opciones DHCPv6 **(Hacer clic en la imagen para ampliarla)

El campo de número de saltos de 1 byte indica el número de agentes de retransmisión que han recibido el mensaje. Un agente de retransmisión receptor puede descartar el mensaje si excede el número de saltos máximo configurado. El campo de dirección del vínculo de 16 bytes contiene una dirección no local de vínculos que se asigna a una interfaz conectada a la subred en que está ubicado el cliente. Desde el campo de dirección del vínculo, el servidor puede determinar el ámbito de dirección correcto desde el que asignar una dirección. El campo de dirección del homólogo de 16 bytes contiene la dirección IPv6 del cliente que envió originalmente el mensaje o del agente anterior que retransmitió el mensaje. Después de este campo se encuentran opciones DHCPv6 que incluyen la opción de mensaje de retransmisión, que contiene el mensaje que se va a retransmitir, además de otras opciones. La opción de mensaje de retransmisión ofrece una encapsulación de los mensajes que se están intercambiando entre el cliente y el servidor.

No existen direcciones de difusión definidas para IPv6. Por lo tanto, el uso de la dirección de difusión limitada para algunos mensajes DHCPv4 se ha reemplazado por el uso de la dirección All_DHCP_Relay_Agents_and_Servers de FF02::1:2 para DHCPv6. Por ejemplo, un cliente DHCPv6 que intenta descubrir la ubicación del servidor DHCPv6 en la red envía un mensaje de petición desde su dirección local de vínculos a FF02::1:2. Si existe un servidor DHCPv6 en la subred del host, recibe el mensaje de petición y envía una respuesta apropiada. Más comúnmente, un agente de retransmisión DHCPv6 en la subred del host recibe el mensaje de petición y lo reenvía a un servidor DHCPv6.

Figura 3 Estructura de mensajes entre el retransmisor y el servidor

Figura 3** Estructura de mensajes entre el retransmisor y el servidor **(Hacer clic en la imagen para ampliarla)

Intercambio de mensajes con estado

Un intercambio de mensajes con estado de DHCPv6 para obtener configuración y direcciones IPv6 (cuando las marcas M y O de un anuncio de enrutador recibido están establecidas en 1) se compone generalmente de los siguientes mensajes:

  • Un mensaje de petición enviado por el cliente para ubicar los servidores.
  • Un mensaje de anuncio enviado por un servidor para indicar que puede ofrecer direcciones y configuración.
  • Un mensaje de solicitud enviado por el cliente para solicitar direcciones y configuración desde un servidor específico.
  • Un mensaje de respuesta enviado por el servidor solicitado que contiene direcciones y configuración.

Si existe un agente de retransmisión entre el cliente y el servidor, el agente envía mensajes de retransmisión-reenvío de servidor que contienen los mensajes de petición y solicitud encapsulados del cliente. El servidor envía los mensajes de retransmisión-respuesta del agente de retransmisión que contienen los mensajes de anuncio y respuesta encapsulados para el cliente. Para obtener una lista completa de mensajes DHCPv6, consulte la figura 4.

Figure 4 Mensajes DHCPv6

Mensaje DHCPv6 Descripción DHCP equivalente para mensaje IPv4
Pedir Enviado por un cliente para ubicar servidores. DHCPDiscover
Anunciar Enviado por un servidor en respuesta a un mensaje de petición para indicar disponibilidad. DHCPOffer
Solicitar Enviado por un cliente para solicitar configuración o direcciones de un servidor específico. DHCPRequest
Confirmar Enviado por un cliente a todos los servidores para determinar si la configuración de un cliente es válida para el vínculo conectado. DHCPRequest
Renovar Enviado por un cliente a un servidor específico para ampliar la duración de las direcciones asignadas y obtener una configuración actualizada. DHCPRequest
Volver a enlazar Enviado por un cliente a cualquier servidor si no se recibe una respuesta al mensaje de renovación. DHCPRequest
Responder Enviado por un servidor a un cliente específico en respuesta a un mensaje de petición, solicitud, renovación, nuevo enlace, solicitud de información, confirmación, liberación o rechazo. DHCPAck
Liberar Enviado por un cliente para indicar que el cliente ya no utiliza una dirección asignada. DHCPRelease
Rechazar Enviado por un cliente a un servidor específico para indicar que la dirección asignada se encuentra ya en uso. DHCPDecline
Volver a configurar Enviado por un servidor a un cliente para indicar que el servidor tiene una configuración nueva o actualizada. De este modo, el cliente envía un mensaje de renovación o solicitud de información. N/A
Solicitar información Enviado por un cliente para solicitar la configuración (pero no direcciones). DHCPInform
Retransmitir-reenviar Enviado por un agente de retransmisión para reenviar un mensaje a un servidor. Contiene un mensaje de cliente encapsulado como la opción de retransmisión-mensaje de DHCPv6. N/A
Retransmitir-responder Enviado por un servidor para enviar un mensaje a un cliente a través de un agente de retransmisión. Contiene un mensaje de servidor encapsulado como la opción de retransmisión-mensaje de DHCPv6. N/A

Intercambio de mensajes sin estado

Un intercambio de mensajes sin estado DHCPv6 para obtener sólo la configuración (cuando la marca M está establecida en 0 y la marca O en 1, en un anuncio de enrutador recibido) se compone generalmente de los siguientes mensajes: un mensaje de información-solicitud enviado por el cliente DHCPv6 para solicitar configuración de un servidor y un mensaje de respuesta enviado por un servidor que contiene la configuración solicitada.

En el caso de una red IPv6 con enrutadores configurados para asignar prefijos de direcciones sin estado a hosts de IPv6, el intercambio DHCPv6 de dos mensajes se puede utilizar para asignar servidores DNS, nombres de dominio DNS y otros valores de configuración que no se incluyen en el mensaje de anuncio de enrutador.

Compatibilidad de DHCPv6 en Windows

Windows Vista™ y la versión siguiente de Windows Server®, con el nombre en código "Longhorn", incluyen un cliente DHCPv6. Este cliente DHCPv6 intenta la configuración basada en DHCPv6 en función de los valores de las marcas M y O en los mensajes de anuncio de enrutador recibidos. Por lo tanto, para utilizar DHCPv6, debe configurar agentes de retransmisión y servidores DHCPv6 con el fin de atender cada subred IPv6 y configurar así los enrutadores IPv6 para establecer estas dos marcas en sus valores apropiados. Si existen varios enrutadores de anuncio para una subred determinada, se deben configurar para anunciar los mismos prefijos de direcciones sin estado y los valores de las marcas M y O. Los hosts de IPv6 con Windows® XP o Windows Server 2003 no incluyen un cliente DHCPv6 y, por tanto, omiten los valores de las marcas M y O en los anuncios de enrutador recibidos.

Puede configurar un enrutador IPv6 con Windows Vista o Windows Server "Longhorn" para establecer la marca M en 1 en los anuncios de enrutador con el comando "netsh interface ipv6 set interface InterfaceName managedaddress=enabled". De forma parecida, puede establecer la marca O en 1 en los anuncios de enrutador con el comando "netsh interface ipv6 set interface InterfaceName otherstateful=enabled".

La versión Beta 2 de Windows Server "Longhorn" es compatible con un agente de retransmisión DHCPv6 y la configuración sin estado DHCPv6 con el servicio de servidor DHCP. Puede configurar el servicio de servidor DHCP para que las opciones DHCPv6 se distribuyan a todos los clientes DHCPv6 en el intercambio de dos mensajes DHCPv6 descrito anteriormente. Microsoft tiene planes de ofrecer compatibilidad para el uso de DHCPv6 con estado, incluida la capacidad de crear ámbitos de direcciones IPv6 en el complemento DHCP, en la versión Beta 3 de Windows Server "Longhorn".

Recursos RFC de DHCPv6

RFC seleccionados y relacionados con DHCPv6:

Joseph Davieses escritor técnico en Microsoft y ha enseñado y escrito acerca de temas de red de Windows desde 1992. Ha escrito cinco libros para Microsoft Press y es el autor de la columna mensual Cable Guy de TechNet.

© 2008 Microsoft Corporation and CMP Media, LLC. Reservados todos los derechos; queda prohibida la reproducción parcial o total sin previa autorización.