Ever wondered how your device magically gets an IPv6 address without touching a DHCP server? That’s the power of Stateless Address Autoconfiguration (SLAAC). It lets your device configure itself, which is what "stateless" really means—the network doesn't have to keep track of its assignments.
Here’s the flow in simple steps:
- Link-Local First: Every IPv6 host starts by creating a link-local address (fe80::/64) when the interface comes up. This address is only for local-network chatter, like talking to the router.
- Asking the Router (RS): The host sends a Router Solicitation (RS) to the all-routers multicast address (ff02::2), essentially asking, "Hey, what's the prefix around here?"

- Router Reply (RA) & Flag Bits: The router responds with a Router Advertisement (RA). This vital message contains the network prefix (e.g., 2001:db8:ab00:1::/64) and three critical flag bits that tell the host what to do next:
- A-bit (Autonomous): If set, the host can use SLAAC to build its address.
- M-bit (Managed): If set, the host must use DHCPv6 for address assignment.
- O-bit (Other Config): If set, the host should use DHCPv6 for other information (DNS, NTP, etc.), but not the address itself.
Here are the main configuration methods signaled by the flags:
Method | A-bit | O-bit | M-bit | Description |
1. Pure SLAAC | Set (1) | Not Set (0) | Not Set (0) | Host uses SLAAC for Address and all other info (DNS, etc., is not provided or is manual). |
2. SLAAC + DHCPv6 (Stateless) | Set (1) | Set (1) | Not Set (0) | Host uses SLAAC for its Address, but then contacts DHCPv6 for Other information (like DNS servers). |
3. DHCPv6 Only (Stateful) | Not Set (0) | Not Set (0) | Set (1) | Host ignores SLAAC and must contact DHCPv6 for both its Address and Other information. |

- Build the Global Address: Assuming the A-bit is set, the host needs a unique 64-bit Interface ID to complete its address. It appends this ID to the prefix to form the Global Unicast Address (GUA).
- The Interface ID is typically derived from the device's MAC address using the Modified EUI-64 format, or a Privacy Extension address is randomly generated for better anonymity.
- DAD Check: Before using it, the host runs Duplicate Address Detection (DAD) to ensure the address is truly unique. It sends a Neighbor Solicitation (NS) for its own tentative address. If no Neighbor Advertisement (NA) comes back, the address is safe to use.
💡
End result? Your device has a unique IPv6 GUA, a confirmed default gateway (the router’s link-local address), and knows exactly where to get any extra configuration, making it ready to talk on the internet.