DHCPv6
Internet protocol suite |
---|
Application layer |
Transport layer |
Internet layer |
Link layer |
The Dynamic Host Configuration Protocol version 6 (DHCPv6) is a network protocol for configuring Internet Protocol version 6 (IPv6) hosts with IP addresses, IP prefixes, default route, local segment MTU, and other configuration data required to operate in an IPv6 network. It is not just the IPv6 equivalent of the Dynamic Host Configuration Protocol for IPv4.
IPv6 hosts may automatically generate IP addresses internally using stateless address autoconfiguration (SLAAC), or they may be assigned configuration data with DHCPv6.
IPv6 hosts that use stateless autoconfiguration may require information other than an IP address or route. DHCPv6 can be used to acquire this information, even though it is not being used to configure IP addresses. DHCPv6 is not necessary for configuring hosts with the addresses of Domain Name System (DNS) servers, because they can be configured using Neighbor Discovery Protocol, which is also the mechanism for stateless autoconfiguration.REFERENCE FOR RFC4339 IS NOT DEFINED YET. You are invited to add it here.
Many IPv6 routers, such as routers for residential networks, must be configured automatically with no operator intervention. Such routers require not only an IPv6 address for use in communicating with upstream routers, but also an IPv6 prefix for use in configuring devices on the downstream side of the router. DHCPv6 prefix delegation provides a mechanism for configuring such routers.
Operation
Port numbers
Clients listen for DHCP messages on UDP port 546. Servers and relay agents listen for DHCP messages on UDP port 547.REFERENCE FOR RFC8415 IS NOT DEFINED YET. You are invited to add it here.
Identifiers
DHCP unique identifier
The DHCP unique identifier (DUID) is used by a client to get an IP address from a DHCPv6 server. It has a 2-byte DUID type field, and a variable-length identifier field up to 128 bytes. Its actual length depends on its type. The server compares the DUID with its database and delivers configuration data (address, lease times, DNS servers, etc.) to the client.
Four DUID types are identified:REFERENCE FOR RFC8415 IS NOT DEFINED YET. You are invited to add it here.
- Link-layer address plus time (DUID-LLT)
- Vendor-assigned unique ID based on enterprise number (DUID-EN)
- Link-layer address (DUID-LL)
- UUID-based DUID (DUID-UUID)
RFC 6939: Client Link-Layer Address Option
Due to the fact that it is difficult to manage multiple identifiers in a dual-stack environment, and the fact that DUIDs are simply not optimal for some situations, RFC 6939 was released, giving a way to identify a host based on its MAC address. It defines a way for a DHCPv6 relay to pass that information to a DHCPv6 server.
Example
In this example, without rapid-commit present, the server's link-local address is fe80::0011:22ff:fe33:5566 and the client's link-local address is fe80::aabb:ccff:fedd:eeff.
- Client sends a solicit from [fe80::aabb:ccff:fedd:eeff]:546 to multicast address [ff02::1:2]:547.REFERENCE FOR RFC8415 IS NOT DEFINED YET. You are invited to add it here.
- Server replies with an advertise from [fe80::0011:22ff:fe33:5566]:547 to [fe80::aabb:ccff:fedd:eeff]:546.
- Client replies with a request from [fe80::aabb:ccff:fedd:eeff]:546 to [ff02::1:2]:547.
- Server finishes with a reply from [fe80::0011:22ff:fe33:5566]:547 to [fe80::aabb:ccff:fedd:eeff]:546.
DHCPv6 Message types
This table lists the DHCPv6 message types.
Code | Name | RFC |
---|---|---|
1 | SOLICIT | RFC 8415 |
2 | ADVERTISE | RFC 8415 |
3 | REQUEST | RFC 8415 |
4 | CONFIRM | RFC 8415 |
5 | RENEW | RFC 8415 |
6 | REBIND | RFC 8415 |
7 | REPLY | RFC 8415 |
8 | RELEASE | RFC 8415 |
9 | DECLINE | RFC 8415 |
10 | RECONFIGURE | RFC 8415 |
11 | INFORMATION-REQUEST | RFC 8415 |
12 | RELAY-FORW | RFC 8415 |
13 | RELAY-REPL | RFC 8415 |
14 | LEASEQUERY | RFC 5007 |
15 | LEASEQUERY-REPLY | RFC 5007 |
16 | LEASEQUERY-DONE | RFC 5460 |
17 | LEASEQUERY-DATA | RFC 5460 |
18 | RECONFIGURE-REQUEST | RFC 6977 |
19 | RECONFIGURE-REPLY | RFC 6977 |
20 | DHCPV4-QUERY | RFC 7341 |
21 | DHCPV4-RESPONSE | RFC 7341 |
22 | ACTIVELEASEQUERY | RFC 7653 |
23 | STARTTLS | RFC 7653 |
IETF standards
- RFC 8415, "Dynamic Host Configuration Protocol for IPv6 (DHCPv6)" - Obsoletes RFC 3315, RFC 3633, RFC 3736, RFC 4242, RFC 7083, RFC 7283, RFC 7550.
- RFC 3319, "Dynamic Host Configuration Protocol (DHCPv6) Options for Session Initiation Protocol (SIP) Servers"
- RFC 3646, "DNS Configuration options for Dynamic Host Configuration Protocol for IPv6 (DHCPv6)"
- RFC 4704, "The Dynamic Host Configuration Protocol for IPv6 (DHCPv6) Client Fully Qualified Domain Name (FQDN) Option"
- RFC 5007, "DHCPv6 Leasequery" support
- RFC 6221, "Lightweight DHCPv6 Relay Agent" (LDRA) - Updates RFC 3315, Errata
- RFC 6355, "Definition of the UUID-Based DHCPv6 Unique Identifier (DUID-UUID)"
- RFC 6939, "Client Link-Layer Address Option in DHCPv6"
- RFC 7653, "DHCPv6 Active Leasequery"
See also
- Comparison of DHCP server software
- Dynamic Host Configuration Protocol (DHCP)
- Neighbor Discovery Protocol, which also supports DNS Configuration
- Prefix delegation, which allows a DHCPv6 client to obtain a whole prefix.
References
External links
- IANA DHCPv6 Parameters
- IPv6 Intelligence: DHCPv6, comparison of DHCPv6 packages and implementations (Last updated: April, 2009)
- IPv6 Ready: DHCPv6, list of IPv6 Phase II Certified DHCPv6 implementations (Last updated: December, 2012)
de:Dynamic Host Configuration Protocol#DHCPv6
Original source: https://en.wikipedia.org/wiki/DHCPv6.
Read more |