Interactive IPv6 SLAAC and Neighbor Discovery animation for learning RS, RA, NS, NA, DAD, prefix formation, 6LoWPAN IPHC address reconstruction, and fragment budgeting.
Interactive animationIPv6SLAAC and NDP
IPv6 SLAAC and Neighbor Discovery Workbench
Step through how an IoT node gets from no IPv6 address to a usable address and a working next hop. Watch which ICMPv6 message changes the address state, router state, and neighbor cache.
Tentative link-localAddress state
Create IIDCurrent message
None yetNext hop
TryLoad Industrial cell /64 with EUI-64 derived IID, then Step through RS, RA, DAD NS, and the no-conflict result.
ObserveAddress state moves tentative to preferred after 1 DAD exchange; enabling Context prefix /64 can reduce the 80 B datagram from 2 fragments to 1 frame.
ExplainRA supplies the /64 and default router, the IID completes 128 bits, DAD probes uniqueness, and LOWPAN_IPHC elides fields only when both peers share reconstruction context.
Separate link-local setup, router discovery, prefix learning, DAD, and neighbor resolution.
Try
Run normal boot, duplicate address, same-link peer, and sleepy 6LoWPAN scenarios.
Watch
Use Step to connect each ICMPv6 message to one concrete state change.
Check
Decide whether the payload needs a direct neighbor or the default router as next hop.
Scenario Presets
Node Configuration
Address State and ICMPv6 Message Flow
A sensor joins a normal IPv6 subnet. It creates a link-local address, discovers a router, learns a /64 prefix, runs DAD, then resolves the next hop before sending data.
Ready: normal SLAAC boot loaded
Sensor tentative
Router RA source
On-link peer actuator
Cloud off-link
Create IID
Start: the node has a link-layer identity but no assigned IPv6 address yet.
Address State
tentativeLink-local
not learnedGlobal or ULA
unknownDefault router
buildingCurrent result
Neighbor Cache and Diagnosis
Step through the flow to see when a tentative address becomes usable and when the node learns a link-layer next hop.
Targetnone
Entryempty
MeaningNo packet can leave until the address and next hop are ready.
SLAAC, DAD, and LOWPAN_IPHC joined trace
Form one bounded /64 address, prove whether DAD makes it usable, name every address reconstruction source, and pass the exact compressed datagram to the canonical 802.15.4 sender plan.
Zigbee & Thread · 6LoWPAN
TryLoad Global, no context. Then change only Shared context with the counterexample button.
ObserveBoth 128-bit addresses change from 16 inline bytes to named reconstruction sources; two fragments become one frame.
ExplainAddress formation and DAD do not prove the receiver owns the prefix context required for IPHC elision.
Bounded inputs
Causal trace
Load a fixture to begin.The address, field ledger, and sender plan remain synchronized.
Misconception: “Once an IPv6 address is formed, IPHC can always remove it.” Without a shared global-prefix context, both addresses remain inline even after successful DAD.
Technical boundaries. This is a bounded /64 SLAAC, DAD, and LOWPAN_IPHC reconstruction lesson. It does not implement privacy or stable-secret IIDs, DHCPv6, non-/64 SLAAC, every RFC 6282 multicast/address mode, context distribution or expiry, 6LoWPAN ND registration lifetimes, secured ND, router failover, mesh-under forwarding, link retries, or receiver reassembly. The displayed header size is exact only for the shown field ledger. Verify the real context table, compressed capture, reconstructed IPv6 packet, DAD or registration evidence, and application receipt before making an interoperability claim.
Quick Reference
RS: Router Solicitation asks routers to advertise sooner.
RA: Router Advertisement can carry a Prefix Information Option; the autonomous flag lets hosts use SLAAC.
NS/NA: Neighbor Solicitation and Advertisement support DAD and link-layer address resolution.
DAD: A tentative address is not assigned if a duplicate is reported.
How To Debug
If the node has only `fe80::`, inspect RA reception and prefix flags. If the global address is tentative or failed, inspect DAD. If the address is assigned but packets do not leave, inspect the default route and neighbor cache entry for the selected next hop.
Technical Accuracy Notes
This animation uses documentation prefixes and simplified interface identifiers for teaching.
For off-link destinations, the node resolves the router as the link-layer next hop, not the cloud server.
Classic IPv6 ND uses multicast heavily. 6LoWPAN deployments often use ND optimizations and address registration to reduce multicast cost.
Modern systems do not have to expose MAC-derived EUI-64 interface identifiers; opaque or privacy-oriented identifiers are common.