How Are IPv6 Addresses Assigned to Devices?

When a device connects to an IPv6 network, it needs to obtain one or more IPv6 addresses to communicate. Unlike IPv4, where DHCP is the dominant method, IPv6 offers multiple address assignment mechanisms, each designed for different use cases and network requirements. Understanding these methods is essential for network administrators and anyone interested in how modern networks operate.

This article explores the three primary methods of IPv6 address assignment: SLAAC (Stateless Address Autoconfiguration), DHCPv6 (Dynamic Host Configuration Protocol for IPv6), and manual configuration.

SLAAC: Stateless Address Autoconfiguration

SLAAC is IPv6's revolutionary approach to network configuration, allowing devices to automatically configure their own addresses without requiring a central server to track assignments. This "stateless" nature makes it particularly scalable and efficient.

How SLAAC Works

The SLAAC process involves several distinct steps:

When an IPv6-enabled device first connects to a network, it generates a link-local address (fe80::/10 prefix). This address is used only for communication within the local network segment and serves as the foundation for the autoconfiguration process.

2. Router Solicitation (RS)

The device sends an ICMPv6 Router Solicitation (RS) message to the all-routers multicast address (FF02::2), essentially asking, "Are there any routers on this network?"

3. Router Advertisement (RA)

IPv6 routers respond with Router Advertisement (RA) messages, either in response to solicitations or periodically (typically every 200 seconds). These RA messages contain crucial information:

4. Global Address Generation

The device combines the advertised prefix with a locally-generated interface identifier to create a globally unique IPv6 address. The interface identifier can be derived from:

5. Duplicate Address Detection (DAD)

Before using the newly generated address, the device performs Duplicate Address Detection by sending a Neighbor Solicitation message to verify no other device is using the same address.

6. Address Activation

Once DAD confirms the address is unique, the device begins using it for communication and sets the router's link-local address as its default gateway.

SLAAC Flowchart

Device Connects to Network
         |
         v
Generate Link-Local Address (fe80::/10)
         |
         v
Send Router Solicitation (RS) --> FF02::2
         |
         v
Receive Router Advertisement (RA)
         |
         v
Extract Network Prefix (e.g., 2001:db8::/64)
         |
         v
Generate Interface Identifier
         |
         v
Combine: Prefix + Interface ID = Global Address
         |
         v
Perform Duplicate Address Detection (DAD)
         |
         v
Address Ready for Use

Router Advertisement Flags

RA messages include two critical flags that determine how additional configuration is obtained:

SLAAC Advantages

SLAAC Limitations

DHCPv6: Dynamic Host Configuration Protocol for IPv6

DHCPv6 extends the familiar DHCP protocol to IPv6, providing centralized address management and extensive configuration capabilities. Unlike DHCPv4, DHCPv6 comes in two flavors: stateful and stateless.

Stateful DHCPv6

In stateful DHCPv6, a server assigns IPv6 addresses to clients and maintains a database of which addresses are assigned to which devices—similar to DHCPv4.

Process:

  1. Device sends DHCPv6 SOLICIT message
  2. Server responds with ADVERTISE message
  3. Device sends REQUEST message
  4. Server responds with REPLY containing address and configuration

Key features:

Stateless DHCPv6

Stateless DHCPv6 does NOT assign addresses—devices use SLAAC for addresses—but provides additional configuration parameters that SLAAC cannot deliver.

What it provides:

This hybrid approach combines SLAAC's simplicity for address assignment with DHCPv6's ability to deliver comprehensive configuration data.

DHCPv6 Advantages

DHCPv6 Limitations

Manual/Static Configuration

Administrators can manually configure IPv6 addresses on devices, just as with IPv4. This method is typically used for:

Manual configuration bypasses both SLAAC and DHCPv6, giving complete control but requiring hands-on configuration for each device.

Privacy Extensions (RFC 8981)

One concern with SLAAC is that interface identifiers derived from MAC addresses remain constant across networks, potentially enabling device tracking. RFC 8981 (formerly RFC 4941) addresses this with temporary addresses.

How Privacy Extensions Work

Instead of using a predictable interface identifier, devices generate random identifiers that change periodically (typically daily). A device might have multiple addresses simultaneously:

Benefits

Most modern operating systems enable privacy extensions by default for client devices.

Comparison of IPv6 Address Assignment Methods

Feature SLAAC Stateful DHCPv6 Stateless DHCPv6 Manual
Address Assignment Yes (automatic) Yes (server-assigned) No (uses SLAAC) Yes (manual)
State Tracking No Yes No N/A
DNS Configuration Limited (RFC 8106) Yes Yes Yes
Server Required No (router only) Yes Yes No
Scalability Excellent Good Excellent Poor
Management Control Low High Medium High
Android Support Yes No Yes Yes
Best For Simple networks, end-users Enterprise, managed networks Hybrid environments Infrastructure devices

Choosing the Right Method

The choice of address assignment method depends on your network requirements:

Use SLAAC when:

Use Stateful DHCPv6 when:

Use Stateless DHCPv6 when:

Use Hybrid Approaches when:

Many modern networks use hybrid configurations, combining SLAAC for address assignment with stateless DHCPv6 for additional parameters. This approach offers broad compatibility while providing necessary configuration options.

Testing Your IPv6 Configuration

Understanding how addresses are assigned is crucial, but verifying your actual connectivity is equally important. Tools like test-ipv6.run can help you verify:

These tests run entirely in your browser and can reveal configuration issues or connectivity problems that might not be immediately apparent.

Conclusion

IPv6 address assignment offers unprecedented flexibility through SLAAC, DHCPv6, and manual configuration. SLAAC's stateless autoconfiguration simplifies network deployment, while DHCPv6 provides the control and management features required by enterprise networks. Privacy extensions ensure that automatic configuration doesn't compromise user privacy.

As IPv6 adoption continues to grow, understanding these assignment methods becomes increasingly important for network administrators, developers, and IT professionals. The key is choosing the right method—or combination of methods—for your specific network requirements, balancing simplicity, control, and compatibility.

Whether you're setting up a home network, managing enterprise infrastructure, or simply curious about how your devices get their IPv6 addresses, these mechanisms work quietly in the background to make modern networking possible.


Last updated: October 2025