IPv6 Address Structure
128-bit addresses written as 8 groups of 16-bit hex
IPv6 addresses are 128 bits long, written as 8 groups of 4 hex digits separated by colons. Two abbreviation rules apply:
Rule 1 — Omit leading zeros:
Rule 2 — Replace one longest run of all-zero groups with
0DB8 → DB8, 0001 → 1Rule 2 — Replace one longest run of all-zero groups with
:: (only once per address)
Full → Compressed Example
Full: 2001:0DB8:0000:0000:0000:0000:0000:0001
Compressed: 2001:DB8::1
Structure of a Global Unicast Address (GUA)
2001
:
DB8
:
ACAD
:
0001
:
AA
:
BB
:
CC
:
DD
◀──── Global Routing Prefix /48 ────▶
Sub
◀── Interface ID /64 ──▶
IPv6 Address Types
Know these for the exam
| Type | Prefix | Purpose |
|---|---|---|
| Global Unicast | 2000::/3 | Routable — public internet |
| Link-Local | FE80::/10 | Same link only, auto-configured |
| Unique Local | FC00::/7 | Private, not routed (like RFC 1918) |
| Multicast | FF00::/8 | One-to-many (no broadcast in IPv6) |
| Loopback | ::1 | Local loopback (equivalent to 127.0.0.1) |
| Unspecified | :: | Unknown source (DAD / DHCP discover) |
No broadcast in IPv6. Replaced by multicast. All-nodes multicast =
FF02::1. All-routers = FF02::2.
EUI-64 Interface ID
Derive a 64-bit Interface ID from a 48-bit MAC address
EUI-64 is used by SLAAC to auto-generate the host portion of an IPv6 address. Steps: split MAC in half, insert FF:FE in the middle, then flip bit 7 of the first byte.
Example: MAC = AA:BB:CC:DD:EE:FF
MAC OUI
AA:BB:CCMAC NIC
DD:EE:FF↓ Split + insert FF:FE + flip bit 7
Bit 7 flipped
A8BB
CC
Inserted
FFInserted
FEDD
EE
FF
Interface ID: A8BB:CCFF:FEDD:EEFF
Link-Local: FE80::A8BB:CCFF:FEDD:EEFF
Bit 7 flip: AA = 10101010 → bit 7 (U/L bit) flipped → 10101000 = A8. If bit 7 was 0 (globally unique), it becomes 1 (locally administered) and vice versa.
SLAAC & DHCPv6
How IPv6 hosts get their addresses
METHOD 1 — SLAAC (Stateless)
Stateless Address Autoconfiguration
Host sends RS → Router sends RA with prefix. Host generates own Interface ID (EUI-64 or random). No server needed. M=0, O=0 in RA flags.
METHOD 2 — Stateless DHCPv6
SLAAC + DHCPv6 for extras
Host gets prefix from RA (SLAAC), but uses DHCPv6 server for DNS/domain. M=0, O=1 in RA flags.
METHOD 3 — Stateful DHCPv6
Full DHCPv6 (like DHCPv4)
DHCPv6 server assigns full address + options. M=1 in RA flags. Server tracks leases.
Neighbor Discovery Protocol (NDP)
IPv6 replacement for ARP — uses ICMPv6 multicast
| Message | Type | Purpose |
|---|---|---|
| Router Solicitation (RS) | ICMPv6 133 | Host requests RA from routers |
| Router Advertisement (RA) | ICMPv6 134 | Router sends prefix + flags |
| Neighbor Solicitation (NS) | ICMPv6 135 | Find MAC for IPv6 (like ARP request) |
| Neighbor Advertisement (NA) | ICMPv6 136 | Reply with MAC (like ARP reply) |
| Redirect | ICMPv6 137 | Better next-hop exists |
DAD (Duplicate Address Detection): Before using an address, a host sends a Neighbor Solicitation for that address. If no NA comes back, the address is unique and safe to use.
Solicited-node multicastFF02::1:FFxx:xxxx
All-nodes multicastFF02::1
All-routers multicastFF02::2
All OSPF routersFF02::5
All DHCPv6 serversFF02::1:2
IPv6 Knowledge Drills
Spaced repetition · 60-second timer per question
0
Correct
0
Wrong
0
Streak 🔥
60s
QUESTION 1 · IPv6
Packet Tracer Labs
Step-by-step IPv6 configuration walkthroughs.
IPv6 Topology Diagrams
IPv6 Cheatsheet
IPv6 Interface Configuration
# Enable IPv6 routing
R1(config)# ipv6 unicast-routing
# Manual GUA address
R1(config)# interface GigabitEthernet0/0/0
R1(config-if)# ipv6 address 2001:DB8:ACAD:1::1/64
R1(config-if)# no shutdown
# EUI-64 auto Interface ID
R1(config-if)# ipv6 address 2001:DB8:ACAD:1::/64 eui-64
# Manual link-local (optional)
R1(config-if)# ipv6 address FE80::1 link-local
# Verify
R1# show ipv6 interface brief
R1# show ipv6 interface GigabitEthernet0/0/0
DHCPv6 Server Config
# Stateless DHCPv6 (M=0, O=1)
R1(config)# ipv6 dhcp pool STATELESS
R1(config-dhcpv6)# dns-server 2001:DB8::1
R1(config-dhcpv6)# domain-name ccna.local
R1(config-if)# ipv6 dhcp server STATELESS
R1(config-if)# ipv6 nd other-config-flag
# Stateful DHCPv6 (M=1)
R1(config)# ipv6 dhcp pool STATEFUL
R1(config-dhcpv6)# address prefix 2001:DB8:ACAD:1::/64
R1(config-dhcpv6)# dns-server 2001:DB8::1
R1(config-if)# ipv6 dhcp server STATEFUL
R1(config-if)# ipv6 nd managed-config-flag
# Verify
R1# show ipv6 dhcp binding
IPv6 Static Routing
# Static route syntax
R1(config)# ipv6 route 2001:DB8:ACAD:2::/64 GigabitEthernet0/0/1
R1(config)# ipv6 route 2001:DB8:ACAD:2::/64 FE80::2
# Default IPv6 route
R1(config)# ipv6 route ::/0 2001:DB8:FEED::1
# OSPFv3 for IPv6
R1(config)# ipv6 router ospf 1
R1(config-rtr)# router-id 1.1.1.1
R1(config-if)# ipv6 ospf 1 area 0
# Verify routing
R1# show ipv6 route
R1# ping ipv6 2001:DB8:ACAD:2::1
Key IPv6 Facts
Address length128 bits (vs IPv4 32 bits)
Notation8 × 16-bit hex groups
GUA prefix2000::/3 (starts 001)
Link-local prefixFE80::/10
Loopback::1
No broadcastsReplaced by multicast
No NAT neededEnough GUAs for every device
Header size40 bytes (fixed, simpler than IPv4)
ICMP versionICMPv6 (NDP, MLD built-in)
DHCPv6 multicastFF02::1:2
Topic Checklist
Track your progress through IPv6 concepts.
0%
Complete