Restrictions for GRE IPv6 Tunnels
-
GRE tunnel keepalive packets are not supported.
-
Multipoint GRE (mGRE) IPv6 tunneling is not supported.
The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
The GRE IPv6 Tunnels feature enables the delivery of packets from other protocols through an IPv6 network and allows the routing of IPv6 packets between private networks across public networks with globally routed IPv6 addresses. Generic routing encapsulation (GRE) is a unicast protocol that offers the advantages of encapsulating broadcast and multicast traffic (multicast streaming or routing protocols) or other non-IP protocols and of being protected by IPsec.
GRE tunnel keepalive packets are not supported.
Multipoint GRE (mGRE) IPv6 tunneling is not supported.
The GRE IPv6 Tunnels feature enables the delivery of packets from other protocols through an IPv6 network and allows the routing of IPv6 packets between private networks across public networks with globally routed IPv6 addresses.
For point-to-point GRE tunnels, each tunnel interface requires a tunnel source IPv6 address and a tunnel destination IPv6 address when being configured. All packets are encapsulated with an outer IPv6 header and a GRE header.
GRE IPv6 tunnel protection allows devices to work as security gateways, establish IPsec tunnels between other security gateway devices, and provide crypto IPsec protection for traffic from internal networks when the traffic is sent across the public IPv6 Internet. The GRE IPv6 tunnel protection functionality is similar to the security gateway model that uses GRE IPv4 tunnel protection.
Perform this task to configure a GRE tunnel on an IPv6 network. GRE tunnels can be configured to run over an IPv6 network layer and transport IPv6 and IPv4 packets through IPv6 tunnels.
Note |
You must enable IPv6 or configure IPv6 MTU size more than 1500 on a tunnel's exit interface to avoid receiving warning messages. |
When GRE IPv6 tunnels are configured, IPv6 addresses are assigned to the tunnel source and the tunnel destination. The tunnel interface can have either IPv4 or IPv6 addresses. The host or device at each end of the configured tunnel must support both IPv4 and IPv6 protocol stacks.
Command or Action | Purpose | |||
---|---|---|---|---|
Step 1 |
enable Example:
|
Enables privileged EXEC mode.
|
||
Step 2 |
configure terminal Example:
|
Enters global configuration mode. |
||
Step 3 |
interface tunnel tunnel-number Example:
|
Specifies a tunnel interface and number and enters interface configuration mode. |
||
Step 4 |
CDP enable Example:
|
Enables Cisco Discovery Protocol on the interface. |
||
Step 5 |
tunnel source {ipv6-address | interface-type |interface-number } Example:
|
Specifies the source IPv6 address or the source interface type and number for the tunnel interface.
|
||
Step 6 |
tunnel destination ipv6-address Example:
|
Specifies the destination IPv6 address for the tunnel interface.
|
||
Step 7 |
tunnel mode gre ipv6 Example:
|
Specifies a GRE IPv6 tunnel.
|
||
Step 8 |
end Example:
|
Exits interface configuration mode and returns to privileged EXEC mode. |
Command or Action | Purpose | |||
---|---|---|---|---|
Step 1 |
enable Example:
|
Enables privileged EXEC mode.
|
||
Step 2 |
configure terminal Example:
|
Enters global configuration mode. |
||
Step 3 |
interface tunnel tunnel-number Example:
|
Specifies a tunnel interface and number and enters interface configuration mode. |
||
Step 4 |
tunnel source {ipv6-address | interface-type interface-number } Example:
|
Specifies the source IPv6 address or the source interface type and number for the tunnel interface.
|
||
Step 5 |
tunnel destination ipv6-address Example:
|
Specifies the destination IPv6 address for the tunnel interface.
|
||
Step 6 |
tunnel mode gre ipv6 Example:
|
Specifies a GRE IPv6 tunnel.
|
||
Step 7 |
tunnel protection ipsec profile profile-name Example:
|
Associates the tunnel interface with an IPsec profile.
|
||
Step 8 |
end Example:
|
Exits interface configuration mode and returns to privileged EXEC mode. |
The following example shows how to configure a GRE tunnel over an IPv6 transport. In this example, Ethernet0/0 has an IPv6 address, and this is the source address used by the tunnel interface. The destination IPv6 address of the tunnel is specified directly. In this example, the tunnel carries both IPv4 and IS-IS traffic.
interface Tunnel0
ip address 10.1.1.1 255.255.255.0
ip router isis
tunnel source Ethernet0/0
tunnel destination 2001:DB8:1111:2222::1
tunnel mode gre ipv6
!
interface Ethernet0/0
no ip address
ipv6 address 2001:DB8:1111:1111::1/64
!
router isis
net 49.0001.0000.0000.000a.00
The following example shows how to configure CDP on GRE IPv6 P2P Tunnel Interface.
interface Tunnel1
cdp enable
ipv6 address 20::1/64
tunnel source Ethernet0/0
tunnel mode gre ipv6
tunnel destination 10::2
end
The following example shows how to configure CDP on GRE IPv6 Multipoint Tunnel Interface.
interface Tunnel1
ipv6 address 172::2/64
ipv6 nhrp map 172::1/64 192::1
ipv6 nhrp map multicast 192::1
ipv6 nhrp network-id 1
ipv6 nhrp nhs 172::1
llp nhrp map multicast 192::1
tunnel source 2000::1
tunnel mode gre multipoint ipv6
end
The following show example displays the CDP neighbor tunnels that are configured in a device.
Router#show cdp neighbors
Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge
S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone,
D - Remote, C - CVTA, M - Two-port Mac Relay
Device ID Local Intrfce Holdtme Capability Platform Port ID
Router Tunnel1 179 R Linux Uni Tunnel1
The following example shows how to associate the IPsec profile “ipsec-profile” with a GRE IPv6 tunnel interface. The IPsec profile is configured using the crypto ipsec profile command.
crypto ipsec profile ipsec-profile
set transform-set ipsec-profile
!
interface Tunnel1
ip address 192.168.1.1 255.255.255.252
tunnel source FastEthernet2/0
tunnel destination 10.13.7.67
tunnel protection ipsec profile ipsec-profile
Ethernet over MPLS (EoMPLS) is a tunneling mechanism that allows you to tunnel Layer 2 traffic through a Layer 3 MPLS network. EoMPLS is also known as Layer 2 tunneling.
The EoMPLS over IPv6 GRE Tunnel feature supports tunneling of EoMPLS traffic via an IPv6 network by using GRE tunnels. Effective from Cisco IOS XE Release 3.15s, EoMPLS is supported over IPv6 GRE tunnel.
EoMPLS over IPv6 GRE Tunnel can be configured in the following two methods:
This section describes how to configure EoMPLS over IPv6 GRE Tunnel using legacy commands. The following are relevant configurations from both Provider Edge 1 Router and Provider Edge 2 Router:
Command or Action | Purpose | |||
---|---|---|---|---|
Step 1 |
configure terminal Example:
|
Enters global configuration mode. |
||
Step 2 |
ipv6 unicast-routing Example:
|
Enables the forwarding of IPv6 unicast datagrams globally on the router. |
||
Step 3 |
mpls label protocol ldp Example:
|
Enables Label Distribution Protocol (LDP). |
||
Step 4 |
mpls ldp router-id Loopback0 [force] Example:
|
Configures the LDP Router ID.
|
||
Step 5 |
interface type number Example:
|
Enters configuration mode for the loopback interface. |
||
Step 6 |
ip address ip-address mask Example:
|
Sets the IP address and subnet mask for the loopback interface. |
||
Step 7 |
interface gigabitethernet slot/port Example:
|
Enters the configuration mode for a Gigabit Ethernet interface on the router. |
||
Step 8 |
encapsulation dot1 vlan-id Example:
|
Enables 802.1Q trunking on a router. |
||
Step 9 |
xconnect peer-ipaddress vc-id encapsulation mpls Example:
|
Enables the attachment circuit and specifies the IP address of the peer, a VC ID, and the data encapsulation method. |
||
Step 10 |
interface tunnel interface number Example:
|
Designates a tunnel interface and enters interface configuration mode. |
||
Step 11 |
ip address ip-address mask Example:
|
Sets the IP address and subnet mask for the loopback interface. |
||
Step 12 |
tunnel source {ip-address | interface-type interface-number} Example:
|
Specifies the source IPv4 address or the source interface type and number for the tunnel interface. |
||
Step 13 |
tunnel mode gre ipv6 Example:
|
Specifies that the GRE over IPv6 encapsulation protocol is used in the tunnel. |
||
Step 14 |
tunnel destination ipv6-address Example:
|
Specifies the destination IPv6 address for the tunnel interface. |
||
Step 15 |
mpls ip Example:
|
Enables mpls processing on the tunnel interface. |
||
Step 16 |
interface gigabitethernet slot/port Example:
|
Enters the configuration mode for a Gigabit Ethernet interface on the router. |
||
Step 17 |
ipv6 address { ipv6-prefix/prefix-length | prefix-name sub-bits/prefix-length } Example:
|
Configures an IPv6 address based on an IPv6 general prefix and enables IPv6 processing on an interface. |
This section describes how to configure EoMPLS over IPv6 GRE Tunnel using Protocol-based commands.
Command or Action | Purpose | |
---|---|---|
Step 1 |
template type pseudowire [pseudowire-name] Example:
|
Specifies the name of a Layer 2 pseudowire class and enters pseudowire class configuration mode. |
Step 2 |
encapsulation mpls Example:
|
Specifies the tunneling encapsulation. |
Step 3 |
end Example:
|
Exits to privileged EXEC mode. |
Step 4 |
interface pseudowire number Example:
|
Specifies the pseudowire interface and enters interface configuration mode. |
Step 5 |
source template type pseudowire Example:
|
Configures the source template of type pseudowire named EoMPLS. |
Step 6 |
encapsulation mpls Example:
|
Specifies the tunneling encapsulation. |
Step 7 |
neighbor peer-address vcid-value Example:
|
Specifies the peer IP address and virtual circuit (VC) ID value of a Layer 2 VPN (L2VPN) pseudowire. |
Step 8 |
end Example:
|
Exits to privileged EXEC mode. |
Step 9 |
l2vpn xconnect context context-name Example:
|
Creates a Layer 2 VPN (L2VPN) cross connect context and enters xconnect configuration mode. |
Step 10 |
member pseudowire interface-number Example:
|
Specifies a member pseudowire to form a Layer 2 VPN (L2VPN) cross connect. |
Step 11 |
member gigabit ethernet interface-number Example:
|
Specifies the location of the Gigabit Ethernet member interface. |
Use the following commands to verify that the EoMPLS over IPv6 GRE Tunnel feature is correctly configured.
Command or Action | Purpose | |
---|---|---|
Step 1 |
show inter tunnel [tunnel-id] |
|
Step 2 |
show xconnect all [detail] |
|
Step 3 |
show mpls l2transport vc id detail |
|
Related Topic |
Document Title |
---|---|
Cisco IOS commands |
|
Tunnel commands: complete command syntax, command mode, defaults, command history, usage guidelines, and examples |
|
IPv6 commands: complete command syntax, command mode, defaults, command history, usage guidelines, and examples |
Description |
Link |
---|---|
The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password. |
The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.