Lesson 3 — IPv6 Addressing and Dual-Stack
Week 6 outline
- Week 6 overview
- Lesson 1DHCP, DNS, and NTP Basics
- Lesson 2NAT and PAT Fundamentals
- QuizAddressing Services & NAT
- Lesson 3IPv6 Addressing and Dual-Stack (current step)
- Lesson 4IPv6 Static Routing
- QuizIPv6 Addressing & Routing
- Lesson 5Network Management Services: SNMP, Syslog, TFTP/FTP, QoS
- CheckpointWeek 6 Checkpoint
IPv6 Addressing and Dual-Stack
Abbreviate and expand IPv6 addresses without error, identify each address type from its leading bits, derive an interface ID with EUI-64 and SLAAC, and configure an interface that runs IPv4 and IPv6 side by side.
Lesson orientation
What you'll learn (5 objectives)~52 min: video → lesson → check → apply → lab prep
Learning objectives
- Apply the two IPv6 shortening rules to compress and expand an address without error
- Identify global unicast, unique local, link-local, multicast, and anycast from their leading bits
- Explain how SLAAC lets a host build its own global address from a Router Advertisement plus an interface ID
- Derive a modified EUI-64 interface ID from a MAC address
- Configure a dual-stack interface with an IPv4 address and an IPv6 global unicast, and verify both
Terms you will see
Time breakdown
- Read the notes24 min
- Drill shortening and EUI-6412 min
- Walk the dual-stack configuration9 min
- Work the classification practice7 min
Assigned video

Free CCNA | IPv6 Part 1 | Day 31 | CCNA 200-301 Complete Course
By Jeremy's IT Lab · Opens externally on YouTube
- Assigned watch
- ~8 min
Where to stop
EUI-64 mechanics and the dual-stack configuration are practised in the written sections below.
The source marks this segment timestampStatus="unresolved" with no start or end, so no bounds are shown here.
The link opens in a new browser tab. Return here when you finish watching.
Watch for these concepts
- The shortening rules applied to real addresses
- How global unicast, link-local, and multicast are told apart
Go beyond the video
The assigned video introduces the idea. CCNA Practice Labs completes the learning path: clarify core concepts, explore how each device behaves, visualize the communication path, check your understanding, and prepare for hands-on lab work.
Watch the concept → understand it → visualize it → practice it → apply it.
Eight hextets, two shortening rules, five types
An IPv6 address is eight 16-bit hextets — 128 bits. Two rules shorten it, and both are mechanical once you trust them.
- Drop leading zeros within each hextet: 0DB8 becomes DB8, and 0000 becomes 0.
- Replace one run of consecutive all-zero hextets with :: — and :: may appear only once per address.
The reason :: appears only once is worth holding rather than memorising: the reader reconstructs the missing groups by counting how many are absent. With two :: in one address there is no way to know how many zeros belong to each, so the address becomes ambiguous. So 2001:0DB8:0000:0000:0000:0000:0000:0001 compresses to 2001:DB8::1, and expanding FE80::1 restores FE80:0000:0000:0000:0000:0000:0000:0001. A /64 prefix — standard for essentially every subnet, including point-to-point links — splits the address into a 64-bit network prefix and a 64-bit interface ID.
| Type | Prefix | Scope / routability | IPv4 analog |
|---|---|---|---|
| Global unicast | 2000::/3 | Unique and internet-routable | Public IPv4 |
| Unique local (ULA) | FC00::/7 | Private org use, not internet-routed | RFC 1918 |
| Link-local | FE80::/10 | One link only; routers never forward it | 169.254.x (APIPA), but always present |
| Multicast | FF00::/8 | One-to-many, e.g. FF02::1 all nodes | 224.0.0.0/4 |
| Anycast | from unicast space | One-to-nearest of several nodes | (no direct analog) |
SLAAC and modified EUI-64
Stateless Address Autoconfiguration lets a host address itself with no server tracking leases. Four steps.
- The host sends a Router Solicitation to FF02::2 (all routers) from its link-local address.
- A router replies with a Router Advertisement carrying the /64 prefix for the link and offering itself as the default gateway.
- The host takes that prefix and appends its own interface ID to build a full global address.
- It runs Duplicate Address Detection to confirm no neighbour already holds that address.
Modified EUI-64 is one way to build that 64-bit interface ID from a 48-bit MAC. Take 00AB.CDEF.1234:
- Split the MAC into halves: 00AB.CD and EF.1234.
- Insert FF:FE between them, giving 00AB:CDFF:FEEF:1234 — now 64 bits.
- Flip the 7th bit (the U/L bit) of the first byte: 00 (0000 0000) becomes 02 (0000 0010).
Result: interface ID 02AB:CDFF:FEEF:1234. On a router you request this with ipv6 address 2001:DB8:0:1::/64 eui-64 and IOS computes the host part for you. Modern host operating systems often use a random interface ID instead, for privacy — so do not assume you can reverse an address back to a MAC.
Configure a dual-stack interface
R1 Gi0/0 faces a LAN that must serve both IPv4 and IPv6 clients. Give the interface an IPv4 address and an IPv6 global unicast and run both stacks at once — dual-stack, the recommended migration approach.
! Turn on IPv6 forwarding (off by default; IPv4 forwarding is on by default)
R1(config)# ipv6 unicast-routing
!
R1(config)# interface GigabitEthernet0/0
R1(config-if)# ip address 10.1.1.1 255.255.255.0
R1(config-if)# ipv6 address 2001:DB8:0:1::1/64
R1(config-if)# no shutdownR1# show ipv6 interface brief
GigabitEthernet0/0 [up/up]
FE80::2AB:CDFF:FEEF:1234
2001:DB8:0:1::1
R1# show ip interface brief | include GigabitEthernet0/0
GigabitEthernet0/0 10.1.1.1 YES manual up up- ipv6 unicast-routing is the switch that lets the router forward IPv6 between interfaces. Without it the interface still holds an IPv6 address but the router will not route — a classic silent misconfiguration.
- show ipv6 interface brief lists two IPv6 addresses on the one interface: the FE80:: link-local IOS created automatically, and the global unicast you configured. Multiple addresses per IPv6 interface is normal, not an error.
- That link-local is the EUI-64 form of the interface's MAC — 02AB:CDFF:FEEF:1234 appended to FE80::, compressed to FE80::2AB:CDFF:FEEF:1234.
- show ip interface brief still shows the IPv4 address on the same interface. Both stacks coexist and each host uses whichever protocol it and its peer support.
What you should retain
- Eight hextets, 128 bits. Drop leading zeros per field; use :: once, for one run of all-zero groups.
- Global unicast 2000::/3 routable; unique local FC00::/7 private; link-local FE80::/10 per-link and mandatory; multicast FF00::/8, and there is no broadcast in IPv6.
- SLAAC = RA prefix plus interface ID; the gateway is the router's link-local; no DNS without DHCPv6 or manual configuration.
- Modified EUI-64: split the MAC, insert FFFE, flip the 7th bit.
- Dual-stack runs IPv4 and IPv6 on the same interface; ipv6 unicast-routing enables IPv6 forwarding.
- Site-local FEC0::/10 is deprecated — unique local is the private range.
Before you read on
(1) Compress 2001:0DB8:0000:00AB:0000:0000:0000:1000. (2) Classify FE80::A1B2:C3D4 and say whether a router forwards it off the link. (3) Classify FD00:1234::99 — private or public? (4) A SLAAC laptop has a working global address and pings IPv6 hosts by address, but cannot resolve example.com. What is it missing?
See it happen
Binary & Hex Addressing
Use the IPv6 hextet section to drill shortening and expansion until it is automatic, then check your EUI-64 interface IDs against the tool rather than against your own arithmetic.
Section quiz follows Lesson 4, once IPv6 addressing has been joined by IPv6 routing.
Study deeper
Topic guides extend this lesson — they do not replace the first-party walkthrough above.
IPv6
For the full address-type table with exact ranges, and the site-local trap in more detail
