For Part 1 of this series on IPv6 Transition Mechanisms, click here.

If you loved the simplicity of the IPv6 manual tunnel we created in Part 1, you should love the Generic Routing Encapsulation (GRE) approach to tunneling IPv6 traffic through an IPv4 cloud just as much.

This simple approach takes the IPv6 packet and encapsulates it using the standard IPv4 GRE tunnel. But wait a minute? In Part 1 of this blog series, we had IPv4 encapsulate the IPv6 packet directly for tunneling across the v4 cloud. Why do we even need this additional method that adds GRE encapsulation to the process? Well, the answer is that this method is required within integrated IS-IS and IPv6 tunnel environments. If you plan on sending both IS-IS traffic and IPv6 traffic over the tunnel, you need the protocol field of the GRE header that allows identification of the passenger protocol.

From a CCIE lab perspective, you might say, “well, I will never need this tunnel type then! We are not running IS-IS in the CCIE R/S lab. Woohoo!” Hold on. Not so fast. The exam authors could easily phrase an IPv6 transition task in such a way that requires the above tunnel type without a single care of its relevance for your lab scenario.

The great news is, once you master the distinction between the Manual and the GRE/IPv4 tunnel types, the configuration is nearly identical. We will just be modifying the tunnel mode option. Here is our topology from Part 1, and the subsequent configurations and verifications:



R1(config)#ipv6 unicast-routing
R1(config)#interface loopback 0
R1(config-if)#ipv6 rip CCIERIP enable
R1(config)#interface tunnel 0
R1(config-if)#ipv6 address 2001:13::1/64
R1(config-if)#tunnel source fastethernet0/0
R1(config-if)#tunnel destination
R1(config-if)#tunnel mode gre ip
R1(config-if)#ipv6 rip CCIERIP enable


R3(config)#ipv6 unicast-routing
R3(config)#interface loopback 0
R3(config-if)#ipv6 rip CCIERIP enable
R3(config)#interface tunnel 0
R3(config-if)#ipv6 address 2001:13::3/64
R3(config-if)#tunnel source fastethernet0/0
R3(config-if)#tunnel destination
R3(config-if)#tunnel mode gre ip
R3(config-if)#ipv6 rip CCIERIP enable


R1#ping 2001:3::3

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:3::3, timeout is 2 seconds:
Success rate is 100 percent (5/5), round-trip min/avg/max = 12/13/16 ms

You should be aware that the example in the 12.4 Mainline Configuration Guide shows a configuration similar to the above, but incorrectly demonstrates the use of the tunnel mode gre ipv6 command. This command would be used to encapsulate v4 packets over an IPv6 infrastructure.

Thanks for reading, and for your Tier 2 and Tier 3 practice and assessments, be sure to investigate all of our R&S products!

You can leave a response, or trackback from your own site.

8 Responses to “IPv6 Transition Mechanisms Part 2: GRE/IPv4 Tunnels”

  1. Rodney says:

    Thanks, Was the correct command discovered from the router command line itself, I have also noticed that the CCIE R&S exam cert guide shows the same incorrect command on page 795 , but they show the correct command in table 20-7 page 793 as ( gre ip) , the cisco errata file also did not catch the mistake.

  2. Rodney says:

    So what does it mean if the tunnel mode is ipv6ip

    • Check part 1 of this series Rodney. Tunnel mode ipv6ip means that IPv6 packets are being encapsulated directly in IPv4 packets without the help of GRE.

      In one of our practice exams – this mode is hinted at by indicating you need to tunnel with the least tunnel overhead.

  3. Martin says:


    Thanks very much for the article.

    Is the default mode for tunnel is gre-ip? I config it and didn’t see it show up in the running config and found out it is a default setting.

  4. micyew says:


    Like to know for “ipv6ip” or “gre ip” mode, do I need to created another tunnels for different ipv6 “island”.

    For example, if R1 and R3 both have another Looopback1, do I need another tunnel?


  5. Hi Micyew!

    Nope! Notice that we run RIPng over the tunnel here. So if we add other islands, and they are running RIPng, no need for another tunnel!

  6. Satish says:

    I have a question here: Why cannot the same IPv4 tunnel be used for sending both IPv6 and IS-IS packets by using the appropriate protocol numbers? I hear everybody saying, GRE is needed to send both IPv6 and IS-IS over the same tunnel.


Leave a Reply


CCIE Bloggers