The world is running out of IPv4 addresses, and while IPv6 is the long-term solution, the transition won't happen overnight. CCNA 200-301 exam objective 1.9 covers the key mechanisms that allow IPv4 and IPv6 networks to coexist and communicate during this transition. Understanding dual-stack, tunneling, and translation is essential for any network engineer who will work in real-world networks that are neither all-IPv4 nor all-IPv6.
Jump to a section
Imagine a large office building where most employees speak only English (IPv4), but a growing number speak only Spanish (IPv6). The building needs to function smoothly for everyone. The building manager has three strategies:
Dual-Stack: Every office is equipped with two phones—one connected to the English-speaking phone network and one to the Spanish-speaking phone network. Any employee can use either phone. The building's internal phone system supports both languages, but each call uses only one language. This is like running both IPv4 and IPv6 stacks on every device; the device can communicate using either protocol, but the choice depends on the destination and application.
Tunneling: The Spanish-speaking employees in one wing want to talk to Spanish-speaking employees in another wing, but the hallway between them has only English-only phones. So they install a special device that takes their Spanish conversation, wraps it inside an English conversation (like a sealed envelope), sends it through the English-only hallway, and then unwraps it at the other end. The English-only phones never know Spanish was spoken. This is IPv6-in-IPv4 tunneling: IPv6 packets are encapsulated in IPv4 packets to traverse an IPv4-only network.
Translation: A Spanish-speaking employee needs to talk to an English-speaking employee directly. They use a human translator who listens to Spanish and speaks English, and vice versa. The translator must understand both languages perfectly and handle the nuances (like different grammar for addresses). This is Network Address Translation-Protocol Translation (NAT-PT) or the newer NAT64, which translates between IPv4 and IPv6 packets, rewriting headers and addresses on the fly.
The building manager chooses a mix: most new offices get dual-stack phones, some legacy areas use tunnels, and a few translation booths are installed for critical cross-language communication. The key is that the building must support all three to ensure no one is left out during the transition.
Why Transition Mechanisms Exist
IPv4 has a 32-bit address space, providing roughly 4.3 billion addresses. The Internet Assigned Numbers Authority (IANA) allocated the last IPv4 /8 block in 2011, and regional registries have exhausted their pools. IPv6, with its 128-bit address space, solves the address shortage, but the installed base of IPv4-only devices, applications, and networks is enormous. Transition mechanisms allow incremental deployment of IPv6 without breaking existing IPv4 connectivity.
Dual-Stack: The Preferred Approach
Dual-stack is the simplest and most recommended transition mechanism. Every node (host, router, server) runs both IPv4 and IPv6 protocol stacks simultaneously. The node has both an IPv4 and an IPv6 address, and it can communicate using either protocol. When a dual-stack host wants to reach a destination, it queries DNS. If the DNS returns both A (IPv4) and AAAA (IPv6) records, the host typically prefers IPv6 (RFC 6724). If the destination is IPv4-only, the host uses IPv4. If the destination is IPv6-only, it uses IPv6.
Configuration on a Cisco router is straightforward:
interface GigabitEthernet0/0
ip address 192.168.1.1 255.255.255.0
ipv6 address 2001:db8:1::1/64
no shutdownVerification:
show ip interface brief
show ipv6 interface briefTunneling Mechanisms
Tunneling encapsulates IPv6 packets inside IPv4 packets for transport across an IPv4-only network. The tunnel endpoints are dual-stack routers. Several tunneling techniques exist, but CCNA focuses on manual tunnels, 6to4, and ISATAP.
#### Manual IPv6-in-IPv4 Tunnels
A manual tunnel requires explicit configuration of both tunnel endpoints. The IPv4 address of the destination is specified. The tunnel interface on each router is assigned an IPv6 address, and the tunnel source/destination are the IPv4 addresses of the physical interfaces.
Configuration on Router A:
interface Tunnel0
ipv6 address 2001:db8:2::1/64
tunnel source 192.168.1.1
tunnel destination 192.168.2.2
tunnel mode ipv6ipRouter B would have a similar configuration with reversed source/destination. The tunnel mode ipv6ip specifies that IPv6 packets are encapsulated directly in IPv4 (protocol type 41).
Verification:
show interfaces tunnel 0
show ipv6 route#### 6to4 Tunnels
6to4 is an automatic tunneling technique that does not require explicit tunnel destination configuration. It uses a special IPv6 prefix: 2002::/16. The IPv6 address is formed by concatenating 2002::/16 with the IPv4 address of the tunnel endpoint. For example, if the IPv4 address is 192.168.99.1, the 6to4 prefix is 2002:c0a8:6301::/48 (each octet of the IPv4 address becomes two hexadecimal digits). The tunnel destination is derived from the destination IPv6 address. 6to4 requires a router with a global IPv4 address (not private) to be reachable from the Internet.
Configuration:
interface Tunnel0
ipv6 address 2002:c0a8:6301:1::1/64
tunnel source 192.168.99.1
tunnel mode ipv6ip 6to4A 6to4 relay router is used to communicate with native IPv6 networks. The relay has a well-known anycast address 192.88.99.1 (now deprecated but still seen).
#### ISATAP (Intra-Site Automatic Tunnel Addressing Protocol)
ISATAP is designed for use within a site. It treats the IPv4 network as a link layer for IPv6. The IPv6 address is formed using a 64-bit prefix (e.g., from the site's IPv6 prefix) and a 64-bit interface identifier that includes the IPv4 address. The interface identifier format is ::0:5EFE:IPv4-address. For example, if the IPv4 address is 192.168.1.1, the interface ID becomes ::0:5EFE:C0A8:0101. ISATAP routers act as a default gateway for ISATAP hosts.
Translation Mechanisms
Translation is used when a pure IPv6 host needs to communicate with a pure IPv4 host (or vice versa). NAT-PT (Network Address Translation-Protocol Translation) is the legacy method, but it has limitations and is deprecated. NAT64 is the modern replacement, often used with DNS64 to synthesize AAAA records from A records.
#### NAT-PT (Deprecated)
NAT-PT translates between IPv6 and IPv4 packets. It maintains a pool of IPv4 addresses to map to IPv6 addresses. It also translates ICMP, DNS, and other protocols. However, it breaks end-to-end connectivity and requires application-layer gateways (ALGs) for many protocols. Cisco no longer recommends NAT-PT.
#### NAT64 + DNS64
NAT64 is a stateful translation mechanism. It uses a well-known IPv6 prefix (e.g., 64:ff9b::/96) to represent IPv4 destinations. An IPv6 packet destined to 64:ff9b::192.0.2.1 will be translated by the NAT64 gateway to an IPv4 packet destined to 192.0.2.1. The gateway also performs source address translation (IPv6 to IPv4). DNS64 is used to synthesize AAAA records from A records so that IPv6-only hosts can resolve IPv4-only names. For example, if a host queries for www.example.com and only gets an A record (192.0.2.1), DNS64 returns an AAAA record with the address 64:ff9b::192.0.2.1.
Interaction with Routing Protocols
Dual-stack routers run both IPv4 and IPv6 routing protocols (e.g., OSPFv2 for IPv4, OSPFv3 for IPv6). Tunnels create virtual interfaces that participate in routing. For translation, routing must direct traffic to the translator.
Key Timers and Defaults
Manual tunnels: no timers; static configuration.
6to4: no dynamic discovery; relies on relay routers.
ISATAP: uses Router Solicitation and Router Advertisement (RS/RA) for address autoconfiguration.
NAT64: stateful; timeout for translations is typically 5 minutes for TCP, 1 minute for UDP.
Verification Commands Summary
show ipv6 interface brief
show interfaces tunnel <num>
show ipv6 route
show ipv6 neighbors
debug ipv6 packetConfigure Dual-Stack on an Interface
On a Cisco router, enter global configuration mode. Navigate to the interface that connects to your network. Use `ip address` to assign an IPv4 address and `ipv6 address` to assign an IPv6 address. For example: `interface GigabitEthernet0/0`, then `ip address 192.168.1.1 255.255.255.0`, then `ipv6 address 2001:db8:1::1/64`. Use `no shutdown` to enable the interface. Verify with `show ip interface brief` and `show ipv6 interface brief`.
Configure a Manual IPv6-in-IPv4 Tunnel
Create a tunnel interface with `interface Tunnel0`. Assign an IPv6 address to the tunnel interface, e.g., `ipv6 address 2001:db8:2::1/64`. Specify the tunnel source as the IPv4 address of the local physical interface: `tunnel source 192.168.1.1`. Specify the tunnel destination as the IPv4 address of the remote router: `tunnel destination 192.168.2.2`. Set the tunnel mode to IPv6IP: `tunnel mode ipv6ip`. Verify with `show interfaces tunnel 0` and `show ipv6 route`. Ensure that IPv4 routing between the tunnel endpoints works.
Configure a 6to4 Tunnel
Create a tunnel interface with `interface Tunnel0`. Set the tunnel source to the IPv4 address of the router's exit interface: `tunnel source 192.168.99.1`. Configure the tunnel mode as 6to4: `tunnel mode ipv6ip 6to4`. Assign an IPv6 address using the 6to4 prefix: `ipv6 address 2002:c0a8:6301:1::1/64` (where c0a8:6301 is the hex representation of 192.168.99.1). To reach native IPv6, configure a static route: `ipv6 route 2000::/3 Tunnel0` and optionally point to a 6to4 relay. Verify with `show ipv6 route`.
Configure ISATAP on a Router
Create a tunnel interface: `interface Tunnel0`. Set the tunnel source to the IPv4 address of a physical interface: `tunnel source 192.168.1.1`. Set the tunnel mode to ISATAP: `tunnel mode ipv6ip isatap`. Assign an IPv6 address with the ISATAP interface identifier: `ipv6 address 2001:db8:1::/64 eui-64` (the router will automatically generate the interface ID with 0:5EFE:IPv4). Enable router advertisements: `ipv6 nd prefix 2001:db8:1::/64` and `no ipv6 nd suppress-ra`. Hosts on the IPv4 network can then autoconfigure IPv6 addresses using ISATAP.
Verify Tunnel Operation and Connectivity
Use `show interfaces tunnel 0` to check tunnel status (up/up). Use `show ipv6 interface tunnel 0` to see IPv6-specific details. Use `ping ipv6 2001:db8:2::2` to test reachability across the tunnel. Use `traceroute ipv6 2001:db8:2::2` to verify the path. On the remote router, use `show ipv6 neighbors` to see the neighbor cache. If the tunnel is not working, check IPv4 connectivity between endpoints, verify tunnel configuration, and ensure firewall rules allow protocol 41 (IPv6-in-IPv4).
Configure NAT64 and DNS64 (Conceptual)
NAT64 configuration is beyond CCNA scope but understand the concept. On a NAT64 gateway, define an IPv4 address pool for translations. Configure the NAT64 prefix (e.g., 64:ff9b::/96). Enable NAT64 on an interface facing the IPv6 network. For DNS64, configure the DNS server to synthesize AAAA records. Verification: an IPv6-only host can `ping 64:ff9b::c000:0201` (where c000:0201 is 192.0.2.1) and get a response from the IPv4 host.
Scenario 1: Enterprise Campus Dual-Stack Migration
A large enterprise has a campus network with thousands of devices. The network team decides to deploy IPv6 gradually. They enable dual-stack on all routers and switches. Users' computers receive both IPv4 and IPv6 addresses via DHCP or SLAAC. The challenge is that many legacy applications are IPv4-only. The team configures DNS to return AAAA records for dual-stack servers. Over time, they migrate services to IPv6. The key performance consideration is that dual-stack doubles the routing table size and increases CPU load on routers. Misconfiguration: if a router has a broken IPv6 stack, it may blackhole IPv6 traffic; the team must monitor both protocols.
Scenario 2: Connecting Two IPv6 Islands over IPv4 WAN
A company has two branch offices, each with native IPv6 connectivity from their ISP, but the WAN link between them is IPv4-only (e.g., MPLS with IPv4). The network engineer configures a manual IPv6-in-IPv4 tunnel between the two branch routers. The tunnel provides a virtual IPv6 link. The engineer must ensure that the IPv4 path is reliable and has sufficient MTU; fragmentation can occur. He configures the tunnel with tunnel path-mtu-discovery to avoid fragmentation. Misconfiguration: if the tunnel destination is incorrect or the IPv4 path has a firewall blocking protocol 41, the tunnel will not come up. Verification with show interfaces tunnel and ping is critical.
Scenario 3: IPv6-Only Data Center with IPv4 Legacy Services
A company builds a new data center that is IPv6-only for security and efficiency. However, they must access an IPv4-only legacy payment gateway. They deploy a NAT64/DNS64 gateway. The DNS64 server synthesizes AAAA records for the payment gateway's IPv4 address. When an IPv6-only server tries to reach the payment gateway, it sends a packet to the synthesized IPv6 address. The NAT64 gateway translates it to IPv4 and forwards it. The gateway also translates return traffic. Scale: the NAT64 gateway must handle all traffic between the IPv6 data center and IPv4 Internet. Misconfiguration: if the NAT64 prefix is not correctly routed, traffic will be dropped. Also, some applications embed IP addresses in payloads, which NAT64 cannot translate, requiring an ALG.
What CCNA 200-301 Tests
Exam objective 1.9: "Describe IPv6 address types and transition mechanisms." You must understand the purpose and basic operation of dual-stack, tunneling (manual, 6to4, ISATAP), and translation (NAT64). You will not be asked to configure NAT64 or DNS64 in detail, but you should know what they do. Expect multiple-choice questions that ask you to identify which mechanism is appropriate for a given scenario. For example: "Which transition mechanism allows an IPv6-only host to communicate with an IPv4-only server?" Answer: NAT64 with DNS64.
Common Wrong Answers
Choosing NAT-PT over NAT64: NAT-PT is deprecated and has many limitations. Candidates pick it because they heard "NAT" and "IPv6" together. The correct answer is NAT64.
Confusing ISATAP with 6to4: Both are automatic tunneling, but ISATAP is for intra-site use and uses a different interface identifier. Candidates confuse the prefixes: 6to4 uses 2002::/16, ISATAP does not.
Thinking dual-stack requires translation: Dual-stack does not translate; it runs both protocols natively. Candidates may think dual-stack means converting between IPv4 and IPv6.
Selecting a manual tunnel when the scenario says "automatic": Manual tunnels require explicit destination configuration; 6to4 and ISATAP are automatic.
Specific Values and Commands
6to4 prefix: 2002::/16.
6to4 address format: 2002:IPv4-hex::/48.
ISATAP interface identifier: ::0:5EFE:IPv4-address.
Manual tunnel mode: tunnel mode ipv6ip.
6to4 tunnel mode: tunnel mode ipv6ip 6to4.
ISATAP tunnel mode: tunnel mode ipv6ip isatap.
Decision Rule for Scenario Questions
If the question asks about communication between two IPv6 sites over an IPv4 network, choose tunneling. If the question asks about a host that has both IPv4 and IPv6 stacks, choose dual-stack. If the question asks about an IPv6-only host talking to an IPv4-only host, choose translation (NAT64). For tunneling, if the endpoints are known and fixed, choose manual tunnel; if automatic, choose 6to4 for site-to-site over the Internet, or ISATAP for within a site.
Dual-stack runs both IPv4 and IPv6 on the same interface; it is the preferred transition mechanism.
Manual IPv6-in-IPv4 tunnels require explicit configuration of source and destination IPv4 addresses.
6to4 uses the 2002::/16 prefix and automatically derives the tunnel destination from the IPv6 address.
ISATAP uses an interface identifier with ::0:5EFE:IPv4-address for intra-site tunneling.
NAT64 with DNS64 translates between IPv6 and IPv4, allowing IPv6-only hosts to reach IPv4-only servers.
NAT-PT is deprecated and not recommended; NAT64 is the modern translation method.
Verify tunnels with show interfaces tunnel, show ipv6 route, and ping ipv6.
These come up on the exam all the time. Here's how to tell them apart.
Manual Tunnel
Explicit configuration of tunnel destination
Static, predictable endpoints
No automatic address assignment
Suitable for point-to-point links
Requires IPv4 connectivity between endpoints
6to4 Tunnel
Automatic tunnel destination derived from IPv6 address
Uses 2002::/16 prefix
Address includes embedded IPv4 address
Suitable for site-to-site over Internet
Requires a 6to4 relay for native IPv6 access
Mistake
Dual-stack means translating between IPv4 and IPv6.
Correct
Dual-stack means both protocols run independently on the same device; no translation occurs.
The word 'stack' suggests a protocol stack, but candidates misinterpret it as a translation layer.
Mistake
6to4 and ISATAP are the same thing.
Correct
6to4 is for site-to-site tunneling over the Internet using the 2002::/16 prefix; ISATAP is for intra-site tunneling and uses a different address format.
Both are automatic tunneling mechanisms, so candidates lump them together without understanding the use cases.
Mistake
NAT-PT is the standard IPv6 translation mechanism.
Correct
NAT-PT is deprecated; NAT64 is the current standard for IPv6-IPv4 translation.
Older study materials still mention NAT-PT, and candidates may not know it is obsolete.
Mistake
A manual tunnel requires a tunnel mode command to specify automatic.
Correct
Manual tunnels use 'tunnel mode ipv6ip'; automatic tunnels use 'tunnel mode ipv6ip 6to4' or 'isatap'.
Candidates confuse the modes and may think manual tunnels are 'automatic' because they don't understand the terminology.
Reveal each answer, then mark whether you got it right. Score 60%+ to unlock the next chapter.
A manual tunnel requires you to explicitly configure the tunnel source and destination IPv4 addresses on both endpoints. It is static and used for point-to-point connections. 6to4 is an automatic tunneling technique: the tunnel destination is derived from the IPv6 destination address. 6to4 uses the 2002::/16 prefix, and the IPv4 address is embedded in the IPv6 address. Manual tunnels are simpler for fixed links; 6to4 is useful for connecting multiple sites without per-tunnel configuration. For the exam, know that 6to4 is automatic and uses 2002::/16.
No. NAT-PT (Network Address Translation-Protocol Translation) is an older mechanism that Cisco has deprecated. It had many limitations, such as requiring application-layer gateways for many protocols and breaking end-to-end security. NAT64 is the modern replacement. It uses a well-known prefix (64:ff9b::/96) and works with DNS64 to allow IPv6-only hosts to reach IPv4-only destinations. NAT64 is stateful and more robust. For the CCNA exam, know that NAT-PT is deprecated and NAT64 is the preferred translation method.
Use `show interfaces tunnel 0` to check if the tunnel interface is up/up. Use `show ipv6 interface tunnel 0` to see the IPv6 address and neighbor discovery. Use `ping ipv6 <destination-ipv6-address>` to test connectivity across the tunnel. Use `traceroute ipv6 <destination-ipv6-address>` to see the path. Also, check IPv4 connectivity between the tunnel endpoints with a standard ping. If the tunnel is down, verify the tunnel source and destination, ensure the physical interfaces are up, and check for firewall rules blocking protocol 41.
DNS64 is used in conjunction with NAT64. When an IPv6-only host performs a DNS lookup for a name that only has an IPv4 address (A record), the DNS64 server synthesizes an AAAA record by appending the IPv4 address to a prefix (typically 64:ff9b::/96). For example, if the A record is 192.0.2.1, DNS64 returns an AAAA record for 64:ff9b::c000:0201. The host then sends traffic to that IPv6 address, which is routed to the NAT64 gateway for translation to IPv4. Without DNS64, the host would not know how to reach the IPv4-only server.
Yes. Dual-stack means that a single interface can have both an IPv4 and an IPv6 address. You configure both `ip address` and `ipv6 address` on the same interface. The router will process both IPv4 and IPv6 packets on that interface. This is the most common deployment for transition. For example, on a router's LAN interface, you might assign 192.168.1.1/24 for IPv4 and 2001:db8:1::1/64 for IPv6. Hosts on that LAN can use either protocol to reach the router.
This command sets the tunnel interface to use 6to4 automatic tunneling. In this mode, the router will encapsulate IPv6 packets in IPv4 packets with protocol type 41. The IPv4 destination address is derived from the IPv6 destination address: the IPv6 address must have the 2002::/16 prefix, and the next 32 bits contain the IPv4 address of the destination tunnel endpoint. This allows the router to automatically determine where to send the encapsulated packet without a static tunnel destination configuration. The tunnel source must be specified as the router's global IPv4 address.
NAT-PT (defined in RFC 2766) was found to have fundamental issues. It broke end-to-end connectivity, made IPsec and other security protocols difficult or impossible, required application-layer gateways for many protocols (e.g., FTP, SIP), and introduced a single point of failure. It also had problems with DNS and ICMP translation. The IETF deprecated NAT-PT in RFC 4966 and recommended moving to NAT64 or other mechanisms. Cisco no longer supports NAT-PT in modern IOS versions. For the exam, remember that NAT64 is the replacement.
You've just covered IPv4-to-IPv6 Transition Mechanisms — now see how well it sticks with free CCNA 200-301 practice questions. Full explanations included, no account needed.
Done with this chapter?