Represents the DUID and is neutral to the DUID's construction
format.
duid-base
string
Each DHCP server and client has a DHCP Unique Identifier
(DUID). The DUID consists of a 2-octet type field
and an arbitrary length (1-128 octets) content field.
The duid-base type is used by other duid types with
additional pattern constraints.
Currently, there are four defined types of DUIDs
in RFCs 8415 and 6355 -- DUID-LLT, DUID-EN, DUID-LL, and
DUID-UUID. DUID-unstructured represents DUIDs that do not
follow any of the defined formats.
Type 'string' is used to represent the hexadecimal DUID value
so that pattern constraints can be applied.
duid-en
string
DUID type 2, assigned by vendor based on Enterprise
Number (DUID-EN). This DUID consists of the 4-octet vendor's
registered Private Enterprise Number, as maintained by IANA,
followed by a unique identifier assigned by the vendor. For
example:
+------+----------+------------------+
| 0002 | 00007ED9 | 0CC084D303000912 |
+------+----------+------------------+
This example includes the 2-octet DUID type of 2 (0x02),
4 octets for the Enterprise Number (0x7ED9), followed by
8 octets of identifier data (0x0CC084D303000912).
duid-ll
string
DUID type 3, based on Link-Layer Address (DUID-LL).
Constructed with a 2-octet hardware type assigned
by IANA and a link-layer address. The address is encoded
without separator characters. For example:
+------+------+--------------+
| 0003 | 0006 | 00005E005300 |
+------+------+--------------+
This example includes the 2-octet DUID type of 3 (0x03); the
hardware type is 0x06 (IEEE Hardware Types), and the
link-layer address is 0x5E005300 (EUI-48 address
00-00-5E-00-53-00).
duid-llt
string
DUID type 1, based on Link-Layer Address Plus Time
(DUID-LLT). Constructed with a 2-octet hardware type assigned
by IANA, 4 octets containing the time the DUID is generated
(represented in seconds since midnight (UTC), January 1, 2000,
modulo 2^32), and a link-layer address. The address is encoded
without separator characters. For example:
+------+------+----------+--------------+
| 0001 | 0006 | 28490058 | 00005E005300 |
+------+------+----------+--------------+
This example includes the 2-octet DUID type of 1 (0x01); the
hardware type is 0x06 (IEEE Hardware Types), and the creation
time is 0x28490058 (constructed as described above). Finally,
the link-layer address is 0x5E005300 (EUI-48 address
00-00-5E-00-53-00).
duid-unstructured
string
Used for DUIDs following any formats other than DUID
types 1-4. For example:
+----------------------------------+
| 7b6a164d325946539dc540fb539bc430 |
+----------------------------------+
Here, an arbitrary 16-octet value is used. The only
constraint placed on this is that the first 2 octets
are not 0x01-0x04 to avoid collision with the other
defined DUID types (duid-llt, duid-en, duid-ll,
or duid-uuid).
duid-uuid
string
DUID type 4, based on Universally Unique Identifier
(DUID-UUID). This type of DUID consists of 16 octets
containing a 128-bit UUID. For example:
+------+----------------------------------+
| 0004 | 9f03b182705747e38a1e422910078642 |
+------+----------------------------------+
This example includes the 2-octet DUID type of 4 (0x04) and
the UUID 9f03b182-7057-47e3-8a1e-422910078642.