Skip to content
AdminKit

DHCPv6

DHCPv6, defined in RFC 8415, is the IPv6 protocol a server uses to assign addresses and configuration options such as DNS servers to clients, either statefully (assigning the address itself) or statelessly alongside SLAAC. AdminKit's guide to IPv6 SLAAC and EUI-64 addressing explains the self-assignment alternative DHCPv6 is often paired or compared with.

By AdminKit team, Netbase JSC · Updated

DHCPv6, defined in RFC 8415, is the IPv6 counterpart to DHCP that a server uses to hand out addresses and configuration options — such as DNS servers — to clients on a network. Unlike DHCPv4, DHCPv6 can run in two distinct modes: “stateful,” where the server assigns the IPv6 address itself, and “stateless,” where a client already has an address through another mechanism — usually SLAAC via Neighbor Discovery — and only uses DHCPv6 to request configuration options. Which mode a host actually uses is signaled by flags in IPv6 Router Advertisement messages, defined in RFC 4861: the Managed (M) flag tells it to use DHCPv6 for address assignment, and the Other (O) flag tells it to request configuration options only. DHCPv6 also drops DHCPv4’s reliance on the hardware MAC address to identify a client, instead using a DUID (DHCP Unique Identifier) that RFC 8415 defines to stay stable for a client or server across interfaces and lease renewals. Messages run over UDP, with clients using port 546 and servers/relays using port 547, and clients typically reach a server through a multicast address rather than a broadcast, since IPv6 has no broadcast address at all.

DHCPv6 is part of AdminKit’s IP & network cluster; the full AdminKit glossary lists other related terms.

Frequently asked questions

Does DHCPv6 always assign an IPv6 address to a client?

Not necessarily -- RFC 8415 supports a "stateless" mode where a client already has an address, typically from SLAAC, and only requests configuration options like DNS servers, as well as the "stateful" mode that assigns the address itself.

How does a host know whether to use DHCPv6 at all?

Through flags carried in IPv6 Router Advertisement messages, defined in RFC 4861 (Neighbor Discovery): the Managed (M) flag tells a host to use DHCPv6 for address assignment, and the Other (O) flag tells it to use DHCPv6 only for configuration options.

What identifies a client in DHCPv6 instead of a MAC address?

A DUID (DHCP Unique Identifier), defined in RFC 8415, which identifies a client or server consistently across interfaces and lease renewals, unlike DHCPv4's common reliance on the hardware MAC address.

What transport does DHCPv6 use?

DHCPv6 messages travel over UDP, using well-known ports 546 (client) and 547 (server/relay), and clients typically reach a server via a multicast address rather than a broadcast, which IPv6 doesn't have.