IPv6 over IPv4 Point-to-Point Tunnel, such as IPv6IP and GRE are the most effective way to forward enterprise ipv6 traffic over ipv4 infrastructure where underlying network does not supports IPv6. These tunneling methods support dynamic routing protocols and are effective for enterprise networks, though they can face scalability issues.
Table of Contents
IPv6 ove IPv4 gre/ipv6ip Tunnel Configuration
To better understand how IPv6 over IPv4 point-to-point tunneling works, let’s walk through a demonstration example.
This is a sample topology where two IPv6 branches, with addresses 2001:AA:2::/64 and 2001:AA:3::/64, are connected through an IPv4-only service provider infrastructure. The IPv6 network is simulated using loopback interfaces on IOU2 and IOU3, while IOU1 serves as the IPv4-only backbone connecting the two branches.
One of the simplest and most effective ways to establish connectivity between these two branches is by using point-to-point tunnels like “ipv6ip” or “GRE” to forward IPv6 traffic over an IPv4 tunnel. This method supports dynamic routing protocols and is easy to configure, though it may not scale well when connecting multiple sites.
IPv6 over IPv4 Tunnel Configuration
In this configuration, the tunnel mode can be set to either “ipv6ip” or “GRE.” The tunnel source and destination addresses must be configured, and the tunnel interface itself should be assigned an IPv6 address—in this case, 2001:AA:2:3::/64. Finally, IPv6 OSPF is configured on the loopback and tunnel interfaces to enable dynamic routing.
!!! IOU1 interface eth0/0 no shutdown ip address 10.1.2.1 255.255.255.0 ! interface eth0/1 no shutdown ip address 10.1.3.1 255.255.255.0
!!! IOU2 ipv6 unicast-routing ! interface eth0/0 no shutdown ip address 10.1.2.2 255.255.255.0 ! interface loopback 0 ipv6 address 2001:AA:2::2/64 ! ip route 0.0.0.0 0.0.0.0 10.1.2.1
!!! IOU3 ipv6 unicast-routing ! interface eth0/0 no shutdown ip address 10.1.3.3 255.255.255.0 ! interface loopback 0 ipv6 address 2001:AA:3::3/64 ! ip route 0.0.0.0 0.0.0.0 10.1.3.1
!!! IOU2 interface Tunnel0 no ip address ipv6 address 2001:AA:2:3::2/64 ipv6 ospf 1 area 0 tunnel source Ethernet0/0 tunnel mode "ipv6ip | gre ip" tunnel destination 10.1.3.3 ! ipv6 router ospf 1 router-id 2.2.2.2 ! interface Loopback0 ipv6 ospf 1 area 0
!!! IOU3 interface Tunnel0 no ip address ipv6 address 2001:AA:2:3::3/64 ipv6 ospf 1 area 0 tunnel source Ethernet0/0 tunnel mode "ipv6ip | gre ip" tunnel destination 10.1.2.2 ! ipv6 router ospf 1 router-id 3.3.3.3 ! interface Loopback0 ipv6 ospf 1 area 0
IPv6 over IPv4 Tunnel Verification
To verify connectivity, you can use IPv6 ping between the loopback interfaces of the devices. This ensures that the tunnel is functioning correctly. Additionally, you can check the OSPFv3 neighborship and confirm that routes to the loopback interfaces are being learned through the tunnel interface.
IOU2(config-if)#do ping 2001:AA:3::3 so loo0 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 2001:AA:3::3, timeout is 2 seconds: Packet sent with a source address of 2001:AA:2::2 !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 4/4/5 ms IOU2(config-if)#
IOU2#show ipv6 ospf neighbor OSPFv3 Router with ID (2.2.2.2) (Process ID 1) Neighbor ID Pri State Dead Time Interface ID Interface 3.3.3.3 0 FULL/ - 00:00:31 23 Tunnel0
IOU2#show ipv6 route ospf ... O 2001:AA:3::3/128 [110/1000] via FE80::A8BB:CCFF:FE00:300, Tunnel0 IOU2#