Aller au contenu principal

22. DHCP Options (Options DHCP)

22. DHCP Options (Options DHCP)

Les options sont utilisées pour transporter des informations et paramètres supplémentaires dans les messages DHCP. Chaque option partage un format de base commun, comme décrit dans la section 22.1. Toutes les valeurs dans les options sont représentées en ordre d'octets réseau.

Ce document décrit les options DHCP définies dans le cadre de la spécification DHCP de base. D'autres options peuvent être définies à l'avenir dans des documents séparés.

Sauf indication contraire, chaque option ne peut apparaître que dans la zone d'options d'un message DHCP, et ne peut apparaître qu'une seule fois. Si une option apparaît effectivement plusieurs fois, chaque instance est considérée comme indépendante et les zones de données des options ne doivent pas être concaténées ou combinées de toute autre manière.

22.1. Format of DHCP Options (Format des options DHCP)

Le format d'une option DHCP est:

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| option-code | option-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| option-data |
| (option-len octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

option-code (code d'option)
Un entier non signé identifiant le type d'option spécifique transporté dans cette option.

option-len (longueur d'option)
Un entier non signé donnant la longueur du champ de données d'option dans cette option en octets.

option-data (données d'option)
Les données de l'option; le format de ces données dépend de la définition de l'option.

Les options DHCPv6 sont limitées en portée en utilisant l'encapsulation. Certaines options s'appliquent généralement au client, certaines sont spécifiques à une IA, et certaines sont spécifiques à une adresse dans une IA. Ces deux derniers cas sont discutés dans les sections 22.4 et 22.6.

22.2. Client Identifier Option (Option Identificateur client)

L'option Client Identifier est utilisée pour transporter un DUID (voir section 9) utilisé pour identifier un client entre les clients et les serveurs. Le format de l'option Client Identifier est:

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_CLIENTID | option-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. .
. DUID .
. (variable length) .
. .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

option-code (code d'option)
OPTION_CLIENTID (1).

option-len (longueur d'option)
La longueur du DUID en octets.

DUID
Le DUID du client.

22.3. Server Identifier Option (Option Identificateur serveur)

L'option Server Identifier est utilisée pour transporter un DUID (voir section 9) utilisé pour identifier un serveur entre les clients et les serveurs. Le format de l'option Server Identifier est:

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_SERVERID | option-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. .
. DUID .
. (variable length) .
. .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

option-code (code d'option)
OPTION_SERVERID (2).

option-len (longueur d'option)
La longueur du DUID en octets.

DUID
Le DUID du serveur.

22.4. Identity Association for Non-temporary Addresses Option (Option Association d'identité pour les adresses non temporaires)

L'option Identity Association for Non-temporary Addresses (option IA_NA) est utilisée pour transporter une IA_NA, les paramètres associés à l'IA_NA et les adresses non temporaires associées à l'IA_NA.

Les adresses qui apparaissent dans l'option IA_NA ne sont pas des adresses temporaires (voir section 22.5).

Le format de l'option IA_NA est:

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_IA_NA | option-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IAID (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| T1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| T2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
. IA_NA-options .
. .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

option-code (code d'option)
OPTION_IA_NA (3).

option-len (longueur d'option)
12 + la longueur du champ IA_NA-options.

IAID
L'identificateur unique de cette IA_NA. L'IAID doit être unique parmi les identificateurs de toutes les IA_NA sur ce client. L'espace de numérotation des IAID IA_NA est séparé de l'espace de numérotation des IAID IA_TA.

T1
Le temps auquel le client contacte le serveur à partir duquel les adresses dans l'IA_NA ont été obtenues pour prolonger les durées de vie des adresses assignées à l'IA_NA. T1 est exprimé en unités de secondes et représente une durée de temps par rapport à l'heure actuelle.

T2
Le temps auquel le client contacte tout serveur disponible pour prolonger les durées de vie des adresses assignées à l'IA_NA. T2 est exprimé en unités de secondes et représente une durée de temps par rapport à l'heure actuelle.

IA_NA-options (options IA_NA)
Les options associées à cette IA_NA.

Le champ IA_NA-options encapsule les options spécifiques à cette IA_NA. Par exemple, toutes les options IA Address qui transportent les adresses associées à cette IA_NA sont dans le champ IA_NA-options.

L'option IA_NA ne peut apparaître que dans la zone d'options d'un message DHCP. Un message DHCP peut contenir plusieurs options IA_NA.

Le statut de l'opération associée à cette IA_NA est indiqué dans une option Status Code dans le champ IA_NA-options.

Notez qu'une IA_NA n'a pas de "durée de vie" ou de "longueur de bail" explicite elle-même. Une IA_NA peut être considérée comme expirée lorsque toutes les durées de vie valides des adresses dans l'IA_NA ont expiré. T1 et T2 sont inclus pour permettre au serveur de contrôler explicitement le moment où le client contacte le serveur concernant une IA_NA spécifique.

Dans les messages envoyés du client au serveur, les valeurs dans les champs T1 et T2 indiquent les préférences du client pour ces paramètres. Le client définit T1 et T2 à 0 s'il n'a pas de préférence pour ces valeurs. Dans les messages envoyés du serveur au client, le client doit utiliser les valeurs dans les champs T1 et T2 pour les paramètres T1 et T2, sauf si les valeurs dans ces champs sont 0. Les valeurs dans les champs T1 et T2 sont le nombre de secondes jusqu'à T1 et T2.

Le serveur sélectionne les temps T1 et T2 pour permettre au client de prolonger les durées de vie de toute adresse dans l'IA_NA avant que les durées de vie n'expirent. Les valeurs recommandées pour T1 et T2 sont respectivement 0,5 et 0,8 fois la durée de vie préférée la plus courte des adresses dans l'IA que le serveur est disposé à prolonger. Si la durée de vie préférée "la plus courte" est 0xffffffff ("infini"), les valeurs recommandées pour T1 et T2 sont également 0xffffffff. Si le serveur laisse le moment de renouvellement des adresses dans l'IA_NA à la discrétion du client, le serveur définit T1 et T2 à 0.

Si le serveur reçoit une IA_NA avec T1 supérieur à T2 et que T1 et T2 sont tous deux supérieurs à 0, le serveur ignore les valeurs invalides de T1 et T2 et traite l'IA_NA comme si le client avait défini T1 et T2 à 0.

Si le client reçoit une IA_NA avec T1 supérieur à T2 et que T1 et T2 sont tous deux supérieurs à 0, le client rejette l'option IA_NA et traite le reste du message comme si le serveur n'avait pas inclus l'option IA_NA invalide.

Une attention particulière est nécessaire lors de la définition de T1 ou T2 à 0xffffffff ("infini"). Aucune tentative ne sera faite pour prolonger les durées de vie de toute adresse dans une IA avec T1 défini à 0xffffffff. Aucune tentative ne sera faite pour utiliser un message Rebind pour trouver un serveur différent pour prolonger les durées de vie de toute adresse dans une IA avec T2 défini à 0xffffffff.

22.5. Identity Association for Temporary Addresses Option (Option Association d'identité pour les adresses temporaires)

L'option Identity Association for Temporary Addresses (IA_TA) est utilisée pour transporter une IA_TA, les paramètres associés à l'IA_TA et les adresses associées à l'IA_TA. Toutes les adresses dans cette option sont utilisées par le client comme adresses temporaires, comme défini dans RFC 3041 [12]. Le format de l'option IA_TA est:

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_IA_TA | option-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IAID (4 octets) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
. IA_TA-options .
. .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

option-code (code d'option)
OPTION_IA_TA (4).

option-len (longueur d'option)
4 + la longueur du champ IA_TA-options.

IAID
L'identificateur unique de cette IA_TA. L'IAID doit être unique parmi les identificateurs de toutes les IA_TA sur ce client. L'espace de numérotation des IAID IA_TA est séparé de l'espace de numérotation des IAID IA_NA.

IA_TA-options (options IA_TA)
Les options associées à cette IA_TA.

Le champ IA_TA-Options encapsule les options spécifiques à cette IA_TA. Par exemple, toutes les options IA Address qui transportent les adresses associées à cette IA_TA sont dans le champ IA_TA-options.

Chaque IA_TA transporte un "ensemble" d'adresses temporaires; c'est-à-dire, au plus une adresse de chaque préfixe assigné au lien auquel le client est connecté.

L'option IA_TA ne peut apparaître que dans la zone d'options d'un message DHCP. Un message DHCP peut contenir plusieurs options IA_TA.

Le statut de l'opération associée à cette IA_TA est indiqué dans une option Status Code dans le champ IA_TA-options.

Notez qu'une IA n'a pas de "durée de vie" ou de "longueur de bail" explicite elle-même. Une IA_TA peut être considérée comme expirée lorsque toutes les durées de vie valides des adresses dans l'IA_TA ont expiré.

L'option IA_TA ne contient pas de valeurs T1 et T2. Le client peut demander la prolongation des durées de vie des adresses temporaires en incluant les adresses dans l'option IA_TA dans un message Renew ou Rebind envoyé au serveur. Par exemple, le client peut demander la prolongation des durées de vie des adresses temporaires pour permettre à une application de continuer à utiliser une connexion TCP établie.

Le client obtient de nouvelles adresses temporaires en envoyant une option IA_TA avec un nouvel IAID au serveur. Demander de nouvelles adresses temporaires au serveur équivaut à générer de nouvelles adresses temporaires comme décrit dans RFC 3041. Le serveur génère de nouvelles adresses temporaires et les retourne au client. Le client doit demander de nouvelles adresses temporaires avant que les durées de vie valides des adresses précédemment assignées n'expirent.

Le serveur doit retourner le même ensemble d'adresses temporaires pour la même IA_TA (identifiée par l'IAID) tant que ces adresses sont encore valides. Après que les durées de vie valides des adresses dans l'IA_TA ont expiré, l'IAID peut être réutilisé pour identifier une nouvelle IA_TA avec de nouvelles adresses temporaires.

Cette option peut apparaître dans un message Confirm si les durées de vie valides des adresses temporaires dans l'IA associée n'ont pas expiré.

22.6. IA Address Option (Option Adresse IA)

L'option IA Address est utilisée pour spécifier les adresses IPv6 associées à une IA_NA ou IA_TA. L'option IA Address doit être encapsulée dans le champ d'options de l'option IA_NA ou IA_TA. Le champ d'options encapsule les options spécifiques à cette adresse.

Le format de l'option IA Address est:

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_IAADDR | option-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
| IPv6 address |
| |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| preferred-lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| valid-lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. .
. IAaddr-options .
. .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

option-code (code d'option)
OPTION_IAADDR (5).

option-len (longueur d'option)
24 + la longueur du champ IAaddr-options.

IPv6 address (adresse IPv6)
Une adresse IPv6.

preferred-lifetime (durée de vie préférée)
La durée de vie préférée de l'adresse IPv6 dans l'option. Exprimée en unités de secondes.

valid-lifetime (durée de vie valide)
La durée de vie valide de l'adresse IPv6 dans l'option. Exprimée en unités de secondes.

IAaddr-options (options IAaddr)
Les options associées à cette adresse.

Dans les messages envoyés du client au serveur, les valeurs dans les champs preferred et valid lifetime indiquent les préférences du client pour ces paramètres. Le client peut envoyer 0 s'il n'a pas de préférence pour les durées de vie préférées et valides. Dans les messages envoyés du serveur au client, le client doit utiliser les valeurs dans les champs preferred et valid lifetime pour les durées de vie préférées et valides. Les valeurs dans les durées de vie préférées et valides sont le nombre de secondes restantes dans les durées de vie respectives.

Le client rejette une adresse avec une durée de vie préférée supérieure à la durée de vie valide. Si la durée de vie préférée est supérieure à la durée de vie valide, le serveur ignore la durée de vie valide définie par le client et, si les valeurs T1 et T2 définies par le client sont supérieures à la durée de vie préférée, ignore ces valeurs.

Une attention particulière est nécessaire lors de la définition de la durée de vie valide d'une adresse à 0xffffffff ("infini"). Cela équivaut à une assignation permanente d'adresse au client.

L'option IA Address ne peut apparaître que dans une option IA_NA ou IA_TA. Plusieurs options IA Address peuvent apparaître dans une option IA_NA ou IA_TA.

Le statut de l'opération associée à cette adresse IA est indiqué dans une option Status Code dans le champ IAaddr-options.

22.7. Option Request Option (Option Demande d'option)

L'option Option Request est utilisée pour identifier une liste d'options dans un message entre un client et un serveur. Le format de l'option Option Request est:

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_ORO | option-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| requested-option-code-1 | requested-option-code-2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

option-code (code d'option)
OPTION_ORO (6).

option-len (longueur d'option)
2 * le nombre d'options demandées.

requested-option-code-n (code d'option demandé-n)
Le code d'option des options demandées par le client.

Le client peut inclure une option Option Request dans un message Solicit, Request, Renew, Rebind, Confirm ou Information-request pour informer le serveur des options que le client souhaite recevoir. Le serveur peut inclure une option Option Request dans une option Reconfigure pour indiquer les options que le client doit demander au serveur.

22.8. Preference Option (Option Préférence)

L'option Preference est envoyée par un serveur à un client pour affecter la sélection d'un serveur par le client.

Le format de l'option Preference est:

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_PREFERENCE | option-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| pref-value |
+-+-+-+-+-+-+-+-+

option-code (code d'option)
OPTION_PREFERENCE (7).

option-len (longueur d'option)
1.

pref-value (valeur de préférence)
La valeur de préférence du serveur dans ce message.

Le serveur peut inclure une option Preference dans un message Advertise pour contrôler la sélection d'un serveur par le client. Pour l'utilisation de l'option Preference par le client et l'interprétation de la valeur de données de l'option Preference, voir la section 17.1.3.

22.9. Elapsed Time Option (Option Temps écoulé)

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_ELAPSED_TIME | option-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| elapsed-time |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

option-code (code d'option)
OPTION_ELAPSED_TIME (8).

option-len (longueur d'option)
2.

elapsed-time (temps écoulé)
La quantité de temps écoulée depuis que le client a commencé la transaction DHCP actuelle. Ce temps est exprimé en centièmes de seconde (10^-2 secondes).

Le client doit inclure une option Elapsed Time dans un message pour indiquer la quantité de temps que le client a tenté de compléter l'échange de messages DHCP. Le temps écoulé est mesuré depuis le moment où le client a envoyé le premier message dans l'échange de messages, et le champ elapsed-time est défini à 0 dans le premier message de l'échange de messages. Les serveurs et agents relais utilisent la valeur de données dans cette option comme entrée à une politique qui contrôle la façon dont le serveur répond aux messages clients. Par exemple, l'option Elapsed Time permet à un serveur DHCP secondaire de répondre à une requête si le serveur DHCP primaire n'a pas répondu dans un délai raisonnable. La valeur elapsed-time est un entier non signé de 16 bits. Le client utilise la valeur 0xffff pour exprimer une valeur de temps écoulé supérieure à la valeur de temps maximum qui peut être exprimée dans l'option Elapsed Time.

22.10. Relay Message Option (Option Message relais)

L'option Relay Message est utilisée pour transporter un message DHCP dans un message Relay-forward ou Relay-reply.

Le format de l'option Relay Message est:

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_RELAY_MSG | option-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
. DHCP-relay-message .
. .
. .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

option-code (code d'option)
OPTION_RELAY_MSG (9)

option-len (longueur d'option)
La longueur de DHCP-relay-message

DHCP-relay-message (message DHCP-relais)
Dans un message Relay-forward, le message reçu est relayé textuellement au prochain agent relais ou serveur. Dans un message Relay-reply, le message à copier et relayer à l'adresse dans le champ peer-address du message Relay-reply

22.11. Authentication Option (Option Authentification)

L'option Authentication transporte des informations d'authentification et authentifie l'identité et le contenu des messages DHCP. L'utilisation de l'option Authentication est décrite dans la section 21. Le format de l'option Authentication est:

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_AUTH | option-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| protocol | algorithm | RDM | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| |
| replay detection (64 bits) +-+-+-+-+-+-+-+-+
| | auth-info |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
. authentication information .
. (variable length) .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

option-code (code d'option)
OPTION_AUTH (11)

option-len (longueur d'option)
11 + la longueur du champ authentication information

protocol (protocole)
Le protocole d'authentification utilisé dans cette option Authentication

algorithm (algorithme)
L'algorithme utilisé dans le protocole d'authentification

RDM
La méthode de détection de rejeu utilisée dans cette option Authentication

Replay detection (détection de rejeu)
Les informations de détection de rejeu pour RDM

authentication information (informations d'authentification)
Les informations d'authentification spécifiées par le protocole et l'algorithme utilisés dans cette option Authentication

22.12. Server Unicast Option (Option Unicast serveur)

Le serveur envoie cette option au client pour indiquer au client qu'il est autorisé à envoyer des messages au serveur en utilisant l'unicast. Le format de l'option Server Unicast est:

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_UNICAST | option-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
| server-address |
| |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

option-code (code d'option)
OPTION_UNICAST (12).

option-len (longueur d'option)
16.

server-address (adresse serveur)
L'adresse IP à laquelle le client doit envoyer des messages livrés en utilisant l'unicast.

Le serveur spécifie l'adresse IPv6 à laquelle le client doit envoyer des messages unicast dans le champ server-address de l'option. Si le client reçoit cette option, le client envoie des messages directement au serveur en utilisant l'adresse IPv6 spécifiée dans le champ server-address de l'option lorsque cela est autorisé et approprié.

Si le serveur envoie l'option Server Unicast au client, certains messages du client ne seront pas relayés par des agents relais et ne contiendront pas d'options d'agent relais des agents relais. Par conséquent, le serveur ne doit envoyer l'option Server Unicast au client que lorsque les options d'agent relais ne seront pas utilisées. Un serveur DHCP rejette les messages envoyés en utilisant l'unicast de manière inappropriée pour garantir que les messages sont relayés par des agents relais lorsque les options d'agent relais sont utilisées.

Pour plus de détails sur les cas où le client peut utiliser l'unicast pour envoyer des messages au serveur, voir la section 18.

22.13. Status Code Option (Option Code de statut)

Cette option est utilisée pour retourner une indication de statut concernant le message DHCP ou l'option dans lequel elle apparaît. Le format de l'option Status Code est:

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_STATUS_CODE | option-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| status-code | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
. .
. status-message .
. .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

option-code (code d'option)
OPTION_STATUS_CODE (13).

option-len (longueur d'option)
2 + la longueur de status-message.

status-code (code de statut)
Le code numérique du statut encodé dans cette option. Les codes de statut sont définis dans la section 24.4.

status-message (message de statut)
Une chaîne de texte encodée en UTF-8 appropriée pour l'affichage à l'utilisateur final. Ne doit pas être terminée par null.

L'option Status Code peut apparaître dans le champ d'options d'un message DHCP et/ou dans le champ d'options d'une autre option. Si une option Status Code n'apparaît pas dans un message où une option peut apparaître, le statut du message est considéré comme Success.

22.14. Rapid Commit Option (Option Engagement rapide)

L'option Rapid Commit est utilisée pour signaler l'utilisation d'un échange de deux messages pour l'assignation d'adresse. Le format de l'option Rapid Commit est:

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_RAPID_COMMIT | 0 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

option-code (code d'option)
OPTION_RAPID_COMMIT (14).

option-len (longueur d'option)
0.

Le client peut inclure cette option dans un message Solicit s'il est prêt à effectuer l'échange de messages Solicit-Reply décrit dans la section 17.1.1.

Le serveur doit inclure cette option dans le message Reply envoyé en réponse à un message Solicit pour compléter l'échange de messages Solicit-Reply.

Discussion:

Chaque serveur qui répond à un Solicit avec Rapid Commit engage les adresses assignées dans le message Reply au client sans confirmation que le client a reçu le message Reply. Par conséquent, si plusieurs serveurs répondent à un Solicit avec Rapid Commit, certains serveurs engageront des adresses qui ne seront pas réellement utilisées par le client.

Le problème des adresses non utilisées peut être minimisé, par exemple, en concevant le service DHCP de sorte qu'un seul serveur réponde à un Solicit, ou en utilisant des durées de vie relativement courtes pour les adresses assignées.

22.15. User Class Option (Option Classe utilisateur)

L'option User Class est utilisée par un client pour identifier le type ou la catégorie d'utilisateur ou d'application qu'il représente.

Le format de l'option User Class est:

     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_USER_CLASS | option-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. .
. user-class-data .
. .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

option-code (code d'option)
OPTION_USER_CLASS (15).

option-len (longueur d'option)
La longueur du champ user-class-data.

user-class-data (données de classe utilisateur)
La classe utilisateur transportée par le client.

Les informations contenues dans la zone de données de cette option sont contenues dans un ou plusieurs champs opaques représentant la classe ou les classes d'utilisateurs dont le client est membre. Le serveur sélectionne les informations de configuration du client basées sur les classes identifiées dans cette option. Par exemple, l'option User Class peut être utilisée pour configurer tous les clients des personnes du département comptable avec une imprimante différente de celle des clients des personnes du département marketing. Les informations de classe utilisateur transportées dans cette option doivent être configurables sur le client.

La zone de données de l'option User Class doit contenir une ou plusieurs instances de user-class-data. Chaque instance de user-class-data est formatée comme suit:

    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...-+-+-+-+-+-+-+
| user-class-len | opaque-data |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...-+-+-+-+-+-+-+

user-class-len a une longueur de 2 octets et spécifie la longueur des données de classe utilisateur opaques en ordre d'octets réseau.

Le serveur interprète les classes identifiées dans cette option selon sa configuration pour sélectionner les informations de configuration appropriées pour le client. Le serveur peut utiliser uniquement les classes d'utilisateurs qu'il est configuré pour interpréter lors de la sélection des informations de configuration du client et peut ignorer d'autres classes d'utilisateurs. En réponse à un message contenant une option User Class, le serveur inclut une option User Class contenant les classes interprétées avec succès par le serveur. Cela informe le client des classes interprétées par le serveur.

22.16. Vendor Class Option (Option Classe fournisseur)

Cette option est utilisée par un client pour identifier le fournisseur du matériel sur lequel le client s'exécute. Les informations contenues dans la zone de données de cette option sont contenues dans un ou plusieurs champs opaques identifiant les détails de la configuration matérielle. Le format de l'option Vendor Class est:

     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_VENDOR_CLASS | option-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| enterprise-number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. .
. vendor-class-data .
. . . . .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

option-code (code d'option)
OPTION_VENDOR_CLASS (16).

option-len (longueur d'option)
4 + la longueur du champ vendor-class-data.

enterprise-number (numéro d'entreprise)
Le numéro d'entreprise privé enregistré du fournisseur maintenu par l'IANA [6].

vendor-class-data (données de classe fournisseur)
La configuration matérielle de l'hôte sur lequel le client s'exécute.

Les données de classe fournisseur sont composées d'une série d'éléments distincts, chacun décrivant une caractéristique de la configuration matérielle du client. Des exemples d'instances de données de classe fournisseur peuvent inclure la version du système d'exploitation sur lequel le client s'exécute ou la quantité de mémoire installée sur le client.

Chaque instance de vendor-class-data est formatée comme suit:

    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...-+-+-+-+-+-+-+
| vendor-class-len | opaque-data |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...-+-+-+-+-+-+-+

vendor-class-len a une longueur de 2 octets et spécifie la longueur des données de classe fournisseur opaques en ordre d'octets réseau.

22.17. Vendor-specific Information Option (Option Informations spécifiques au fournisseur)

Cette option est utilisée par les clients et serveurs pour échanger des informations spécifiques au fournisseur.

Le format de l'option Vendor-specific Information est:

     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_VENDOR_OPTS | option-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| enterprise-number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. .
. option-data .
. .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

option-code (code d'option)
OPTION_VENDOR_OPTS (17)

option-len (longueur d'option)
4 + la longueur du champ option-data

enterprise-number (numéro d'entreprise)
Le numéro d'entreprise privé enregistré du fournisseur maintenu par l'IANA [6].

option-data (données d'option)
Un objet opaque de option-len octets. Interprété par le code spécifique au fournisseur sur le client et le serveur

La définition des informations transportées dans cette option est spécifique au fournisseur. Le fournisseur est indiqué par le champ enterprise-number. L'utilisation d'informations spécifiques au fournisseur permet des opérations étendues utilisant des fonctionnalités supplémentaires des implémentations DHCP du fournisseur. Un client DHCP qui ne reçoit pas les informations spécifiques au fournisseur demandées continue de configurer la pile IPv6 de l'appareil hôte pour fonctionner.

Le champ d'options encapsulé spécifique au fournisseur doit être encodé comme une séquence de champs code/longueur/valeur de la même forme que le champ d'options DHCP. Les codes d'option sont définis par le fournisseur identifié par le champ enterprise-number et ne sont pas gérés par l'IANA. Chaque option encapsulée est formatée comme suit:

     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| opt-code | option-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. .
. option-data .
. .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

opt-code (code d'option)
Le code de l'option encapsulée.

option-len (longueur d'option)
Un entier non signé indiquant la longueur du champ de données d'option dans cette option encapsulée en octets.

option-data (données d'option)
La zone de données de l'option encapsulée.

Plusieurs instances de l'option Vendor-specific Information peuvent apparaître dans un message DHCP. Chaque instance de l'option est interprétée selon les codes d'option définis par le fournisseur identifié par le champ enterprise-number dans cette option.

22.18. Interface-Id Option (Option ID d'interface)

Un agent relais peut envoyer une option Interface-Id pour identifier l'interface sur laquelle un message client a été reçu. Si un agent relais reçoit un message Relay-reply contenant une option Interface-Id, l'agent relais relaie le message du serveur au client sur le lien identifié par l'option Interface-Id.

Le format de l'option Interface-Id est:

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_INTERFACE_ID | option-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. .
. interface-id .
. .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

option-code (code d'option)
OPTION_INTERFACE_ID (18).

option-len (longueur d'option)
La longueur du champ interface-id.

interface-id (ID d'interface)
Une valeur opaque de longueur arbitraire générée par l'agent relais identifiant l'une des interfaces de l'agent relais.

Le serveur doit copier l'option Interface-Id d'un message Relay-forward dans le message Relay-reply que le serveur envoie en réponse à l'agent relais. Cette option ne doit pas apparaître dans des messages autres que Relay-forward ou Relay-reply.

Le serveur peut utiliser l'Interface-Id dans la politique d'assignation de paramètres. L'Interface-Id doit être considéré comme une valeur opaque, et la politique doit être basée uniquement sur une correspondance exacte. C'est-à-dire que le serveur ne doit pas analyser l'Interface-Id en interne. La valeur Interface-Id d'une interface doit être stable et ne doit pas changer; par exemple, après un redémarrage de l'agent relais. Si l'Interface-Id change, le serveur ne peut pas l'utiliser de manière fiable dans la politique d'assignation de paramètres.

22.19. Reconfigure Message Option (Option Message de reconfiguration)

Le serveur inclut une option Reconfigure Message dans un message Reconfigure pour indiquer si le client répond avec un message Renew ou Information-request. Le format de cette option est:

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_RECONF_MSG | option-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| msg-type |
+-+-+-+-+-+-+-+-+

option-code (code d'option)
OPTION_RECONF_MSG (19).

option-len (longueur d'option)
1.

msg-type (type de message)
5 pour un message Renew, 11 pour un message Information-request.

L'option Reconfigure Message ne peut apparaître que dans un message Reconfigure.

22.20. Reconfigure Accept Option (Option Acceptation de reconfiguration)

Le client utilise l'option Reconfigure Accept pour informer le serveur s'il est disposé à accepter des messages Reconfigure du serveur, et le serveur utilise cette option pour informer le client s'il doit accepter des messages Reconfigure. L'absence de cette option signifie, respectivement pour les messages clients et serveurs, que le client n'est pas disposé à accepter des messages Reconfigure ou que le serveur n'informe pas le client d'accepter des messages Reconfigure. Le diagramme suivant illustre le format de l'option Reconfigure Accept:

     0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_RECONF_ACCEPT | 0 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

option-code (code d'option)
OPTION_RECONF_ACCEPT (20).

option-len (longueur d'option)
0.