Table Of Contents
Implementing IPv6 VPN over MPLS (6VPE)
Contents
Prerequisites for Implementing IPv6 VPN over MPLS
Restrictions for Implementing IPv6 VPN over MPLS
Information About IPv6 VPN over MPLS
Addressing Considerations for IPv6 VPN over MPLS (6VPE)
Basic IPv6 VPN over MPLS Functionality
IPv6 VPN Architecture Overview
IPv6 VPN Next Hop
MPLS Forwarding
VRF Concepts
IPv6 VPN Scalability
Advanced IPv6 MPLS VPN Functionality
Internet Access
Multi-Autonomous-System Backbones
Carrier Supporting Carriers
How to Implement IPv6 VPN over MPLS (6VPE)
Configuring a Virtual Routing and Forwarding Instance for IPv6
Binding a VRF to an Interface
Configuring a Static Route for PE-to CE-Routing
Configuring eBGP PE-to-CE Routing Sessions
Configuring the IPv6 VPN Address Family for iBGP
Configuring Route Reflectors for Improved Scalability
Configuring Internet Access
Configuring the Internet Gateway
Configuring the IPv6 VPN PE
Configuring a Multi-Autonomous-System Backbone for IPv6 VPN
Configuring the PE VPN for a Multi-Autonomous-System Backbone
Configuring the Route Reflector for a Multi-Autonomous-System Backbone
Configuring the ASBR
Configuring CSC for IPv6 VPN
Verifying and Troubleshooting IPv6 VPN
Verifying and Troubleshooting Routing
Verifying and Troubleshooting Forwarding
Debugging Routing and Forwarding
Configuration Examples for Implementing IPv6 VPN over MPLS
IPv6 VPN Configuration Using IPv4 Next Hop: Example
Additional References
Related Documents
Standards and Drafts
MIBs
RFCs
Technical Assistance
Feature Information for Implementing IPv6 VPN over MPLS
Glossary
Implementing IPv6 VPN over MPLS (6VPE)
First Published: February 28, 2007
Last Updated: May 31, 2007
The Border Gateway Protocol (BGP)-Multiprotocol Label Switching (MPLS) virtual private network (VPN) feature represents an implementation of the provider edge (PE)-based VPN model. This document describes the IPv6 VPN over MPLS (6VPE) feature.
In principle, there is no difference between IPv4 VPNs and IPv6 VPNs. In both IPv4 and IPv6, the multiprotocol BGP is the centerpiece of the MPLS VPN for IPv6 (VPNv6) architecture. It is used to distribute IPv6 routes over the service provider backbone, with the same set of mechanisms to work with overlapping addresses, redistribution policies, and scalability issues.
Finding Feature Information in This Module
Your Cisco IOS software release may not support all of the features documented in this module. To reach links to specific feature documentation in this module and to see a list of the releases in which each feature is supported, use the "Feature Information for Implementing IPv6 VPN over MPLS" section or the "Start Here: Cisco IOS Software Release Specifics for IPv6 Features" document.
Finding Support Information for Platforms and Cisco IOS and Catalyst OS Software Images
Use Cisco Feature Navigator to find information about platform support and Cisco IOS and Catalyst OS software image support. To access Cisco Feature Navigator, go to http://www.cisco.com/go/cfn. An account on Cisco.com is not required.
Contents
•
Prerequisites for Implementing IPv6 VPN over MPLS
•
Restrictions for Implementing IPv6 VPN over MPLS
•
Information About IPv6 VPN over MPLS
•
How to Implement IPv6 VPN over MPLS (6VPE)
•
Configuration Examples for Implementing IPv6 VPN over MPLS
•
Additional References
•
Feature Information for Implementing IPv6 VPN over MPLS
•
Glossary
Prerequisites for Implementing IPv6 VPN over MPLS
This document assumes that you are familiar with IPv4. Refer to the publications listed in the "Additional References" section for IPv4 configuration and command reference information.
Your network must be running the following Cisco IOS services before you configure IPv6 VPN operation:
•
MPLS in provider backbone routers
•
MPLS with VPN code in provider routers with VPN PE routers
•
BGP in all routers providing a VPN service
•
Cisco Express Forwarding switching in every MPLS-enabled router
•
Class of Service (CoS) feature
Restrictions for Implementing IPv6 VPN over MPLS
6VPE supports an MPLS IPv4-signaled core. An MPLS IPv6-signaled core is not supported.
Information About IPv6 VPN over MPLS
Multiprotocol BGP is the centerpiece of the MPLS IPv6 VPN architecture in both IPv4 and IPv6. It is used to distribute IPv6 routes over the service provider backbone, with the same set of mechanisms to work with overlapping addresses, redistribution policies, and scalability issues.
Although IPv6 should not have overlapping address space, IPv6 addresses are still prepended with a route distinguisher (RD). A network layer reachability information (NLRI) 3-tuple format (which contains length, IPv6 prefix, and label) is defined to distribute these routes using multiprotocol BGP. The extended community attribute—the route target—is used to control redistribution of routing information by tagging exported routes and filtering imported ones.
For scalability, route reflectors can be used to concentrate routing paths and avoid a full PE mesh. Similar to IPv4, BGP features in IPv6 such as route refresh, automatic route filtering, and outbound route filtering help reduce the number of routes held in each PE.
This document focuses on the following differences between IPv4 and IPv6:
•
Creation of a new multiprotocol BGP IPv6 VPN address-family and specification of a IPv6 VPN address format
•
Specification of a new IPv6 VPN NLRI
•
Specification of BGP next-hop encoding when working with an IPv4-based MPLS core.
Some IPv6 VPN features, such as interprovider and Carrier Supporting Carrier (CSC) topologies, are specific to BGP-MPLS IPv6 VPN. For instance, the link between Autonomous System Boundary Routers (ASBRs) might support IPv4 only, IPv6 only, or both, independently of the address family being transported.
Before you configure IPv6 VPN over MPLS, you should understand the following concepts:
•
Addressing Considerations for IPv6 VPN over MPLS (6VPE)
•
Basic IPv6 VPN over MPLS Functionality
•
Advanced IPv6 MPLS VPN Functionality
Addressing Considerations for IPv6 VPN over MPLS (6VPE)
Regardless of the VPN model deployed (such as customer edge [CE]-based, PE-based), an addressing plan must be defined for the VPN that allows hosts to communicate with other sites using one site within one VPN, and with public resources.
VPN IPv4 sites often use private addressing for their addressing plan. These addresses need not be registered, and they are not routable on the public network. Whenever a host within a private site needs to access a public domain, it goes through a device that finds a public address on its behalf. With IPv4, this can be a network address translator or an application proxy.
Given the larger address space available with IPv6, the easiest approach to IPv6 addressing is to use IPv6 global addresses for the private addressing plan. Another approach is to use unique local addresses (ULAs). ULAs are easy to filter at site boundaries based on their scope. ULAs are also Internet service provider (ISP)-independent and can be used for communications inside a site without any permanent or intermittent Internet connectivity.
In 6VPE, ULAs are treated as regular global addresses. The router configuration filters, wherever useful, ULA prefixes to prevent them from being leaked in the public domain. Link-local addresses on the other end will not be announced by BGP (IPv6 or IPv6 VPN) speakers.
A host within a private site needs to access a public domain can do so through an IPv6 application proxy (such as a web proxy for accessing web pages), which accesses the public resource on the host's behalf with a global routable address, or the host can use a public address of its own. In the latter case, if ULAs have been deployed, the IPv6 host is configured with a routable global address as well. A source address selection algorithm is used to select one or the other, based on the destination address.
Basic IPv6 VPN over MPLS Functionality
The transition to IPv6 is expected to lead to a long period of coexistence between IPv4 and IPv6. A method for deploying IPv6 VPN takes advantage of this coexistence by leveraging an existent MPLS IPv4 core network. This approach is called 6VPE.
The following sections describe concepts for basic IPv6 MPLS VPN functionality:
•
IPv6 VPN Architecture Overview
•
IPv6 VPN Next Hop
•
MPLS Forwarding
•
VRF Concepts
•
IPv6 VPN Scalability
IPv6 VPN Architecture Overview
Figure 1 illustrates the important aspects of the IPv6 VPN architecture.
Figure 1 Simple IPv6 VPN Architecture
The CE routers are connected to the provider's backbone using PE routers. The PE routers are connected using provider (P1 and P2 in Figure 1) routers. The provider (P) routers are unaware of VPN routes, and, in the case of 6VPE, may support only IPv4. Only PE routers perform VPN-specific tasks. For 6VPE, the PE routers are dual-stack (IPv4 and IPv6) routers.
The routing component of the VPN operation is divided into core routing and edge routing. Core routing, which involves PE routers and P routers, typically is performed by an IPv4 Interior Gateway Protocol (IGP) such as Open Shortest Path First (OSPF) or Intermediate System-to-Intermediate System (IS-IS). In Figure 1, the IGP distributes only routes internal to the provider's autonomous system. The core routing enables connectivity among P and PE routers.
Edge routing takes place in two directions: routing between PE pairs and routing between a PE and a CE. Routing between PE pairs is achieved using multiprotocol internal BGP (iBGP) using the IPv6 VPN address family. This method distributes routes learned from CEs through PE-CE routing, using appropriate route export policies at the ingress PE router and appropriate route import policies at the egress PE router.
Routing between the CE and its PE is achieved using a routing protocol that is VRF aware. Only static routes and external BGP (eBGP) are VPN routing and forwarding instance (VRF) aware. In Figure 1, eBGP is used between the CE (CE1) and the PE (PE1). At the same time, the CE runs an IPv6 IGP (such as OSPFv3 or IS-IS for IPv6) within the VPN site (site1 in Figure 1). The CE redistributes IGP routes into MP-eBGP address family IPv6. At the PE, these routes are installed in the VRF named red, and forwarded to the remote PEs (PE2 in Figure 1), according to export policies defined for this VRF.
IPv6 VPN Next Hop
When announcing a prefix using the MP_REACH_NLRI attribute, multiprotocol BGP running on one PE inserts a BGP next hop in the update message sent to a remote PE. This next hop is either propagated from the received update (for instance, if the PE is a route reflector), or it is the address of the PE sending the update message (the egress PE).
For the IPv6 VPN address family, the next hop has to be a IPv6 VPN address, regardless of the nature of the network between the PE speakers. Because the RD has no significance (the address is not part of any VPN), it is set to 0. If the provider network is a native IPv6 network, the remaining part of the next hop is the IPv6 address of the egress PE. Otherwise, it is an IPv4 address used as an IPv6-mapped address (for example, ::FFFF:IPv4-address).
See the "IPv6 VPN Configuration Using IPv4 Next Hop: Example" section for an example of IPv6 VPN next-hop configuration.
MPLS Forwarding
Upon receiving IPv6 traffic from one customer site, the ingress PE router uses MPLS to tunnel IPv6 VPN packets over the backbone toward the egress PE router identified as the BGP next hop. The ingress PE router typically prepends the IPv6 packets with the outer and inner labels before putting the packet on the egress interface.
Under normal operation, a P router along the forwarding path does not look inside the frame beyond the first label. The P router either swaps the incoming label with an outgoing one, or removes the incoming label if the next router is a PE router. Removing the incoming label is called penultimate hop popping. The remaining label (BGP label) is used to identify the egress PE interface toward the customer site. It also hides the protocol version (IPv6) from the last P router, which would otherwise need to forward an IPv6 packet.
A P router is ignorant about IPv6 VPN routes. The IPv6 header remains hidden under one or more MPLS labels. When the P router receives an MPLS-encapsulated IPv6 packet that cannot be delivered, it has two options. If the P router is IPv6 aware, it exposes the IPv6 header, builds an Internet Control Message Protocol (ICMP) for IPv6 message, and sends the message, which is MPLS encapsulated, to the source of the original packet. If the P router is not IPv6 aware, it drops the packet.
6VPE Over GRE Tunnels
In the 12.2(33)SRB1 release, the ingress PE router uses IPv4 generic routing encapsulation (GRE) tunnels combined with 6VPE over MPLS to tunnel IPv6 VPN packets over the backbone toward the egress PE router identified as the BGP next hop.
VRF Concepts
A VRF is a virtual routing and forwarding entity, which works with a private customer-specific Routing Information Base (RIB) and Forwarding Information Base (FIB). While IPv4 and IPv6 routing tables are distinct, it is convenient for the two protocols to share the same VRF for a specific customer.
IPv6 VPN customers are likely to be existing VPNv4 customers that are either deploying dual-stack hosts and routers or shadowing some of their IPv4 infrastructure with IPv6 nodes. Several deployment models are possible. Some customers use separate logical interfaces for IPv4 and IPv6 and define separate VRFs on each. Although this approach provides flexibility to configure separate policies for IPv4 and IPv6, it prevents sharing the same policy. Another approach, the multiprotocol VRF, keeps a single VRF on the PE-CE interface, and enables it for IPv4, IPv6, or both. It is then possible to define common or separate policies for each IP version. With this approach, a VRF is better defined as the set of tables, interfaces, and policies found at the PE, used by sites of a particular VPN connected to this PE.
Figure 2 illustrates the multiprotocol VRF, in which the VRF named red is enabled for both IPv4 and IPv6 and is associated with two interfaces (IF1, IF2), two sets of tables (IPv4 RIB and FIB and IPv6 RIB and FIB), and a set of common or distinct policies.
For information on how to configure a VRF in IPv6, see the "Configuring a Virtual Routing and Forwarding Instance for IPv6" section.
Figure 2 Multiprotocol VRF
IPv6 VPN Scalability
PE-based VPNs such as BGP-MPLS IPv6 VPN scale better than CE-based VPNs. A network designer must consider scaling when designing the network. Scaling a BGP-MPLS IPv6 VPN is similar to scaling a BGP-MPLS IPv4 VPN. The following points need to be considered:
•
Routing table size, which include the size of VRF tables and BGP tables
•
Number of BGP sessions, which grows as a square number of PEs
Routing table size concerns occur with PEs that handle many customer sites. Not only do these PEs have one RIB and FIB per connected customer, but the PEs' BGP tables, which total all entries from individual VRFs, grow accordingly. Another scalability issue arises when the number of PEs in the provider network grows beyond a certain level. Assuming that a significant number of sites belonging to the same VPN are spread over many PEs, the number of multiprotocol BGP sessions may rapidly become prohibitive: (N-1) x N/2, where N is the number of PEs.
Identical concerns faced by both IPv6 and IPv4 drive similar solutions. The most common solutions are as follows:
•
Route refresh and automatic route filtering—Limits the size of routing tables, because only routes imported into a VRF are kept locally. When the import policy changes, a route refresh can be sent to query a retransmission of routing updates.
•
Outbound route filtering (ORF)—Allows the ingress PE to advertise filters to the egress PE so that updates are not sent unnecessarily over the network.
•
Route reflectors—Route reflectors (RRs) are iBGP peers that propagate iBGP routes learned from other iBGP peers. RRs are used to concentrate iBGP sessions.
Advanced IPv6 MPLS VPN Functionality
Advanced MPLS features such as accessing the Internet from a VPN for IPv4, multi-AS backbones, and CSCs are generally the same for IPv6 as for IPv4. However, there are differences in addressing and in the way 6VPE operates over an IPv4 backbone.
The following sections describe concepts for advanced IPv6 MPLS VPN functionality:
•
Internet Access
•
Multi-Autonomous-System Backbones
•
Carrier Supporting Carriers
Internet Access
Most VPN sites require access to the Internet. RFC 4364 describes a set of models for enabling VPN access to the Internet. All these models apply to IPv6 VPNs as well. In one approach, one interface is used by the CE to connect to the Internet and a different one to connect to the VRF. Another model is in which all internet routes are redistributed into the VRF. This approach has the disadvantage of requiring the Internet routes to be replicated in each VRF.
In one scenario, a static route is inserted into the VRF table, with a next hop that points to the Internet gateway found in the IPv6 default table. Figure 3 illustrates this scenario, in which Internet access is provided to the customer in the VRF named red.
Figure 3 Internet Access Topology
For a customer site (site1 in Figure 3) to access public resources over the Internet, this site must be known by public prefix. Unlike IPv4, IPv6 does not offer a NAT mechanism that allows translating private addresses into public addresses when leaving the site boundaries. Not only does that imply that hosts within the site speak with public addresses, but these addresses (or at least the prefix they belong to) must leak to the public domain.
For outbound traffic, the default route configured in the VRF table at ingress PE (PE1) directs traffic for destinations outside the VPN to the Internet gateway.
For inbound traffic, a route must exist at the Internet gateway to direct the traffic for customer site via its PE of attachment (PE1 above). This route can be distributed by the ingress PE (PE1) using multiprotocol iBGP (with the IPv6 address-family configuration), so no specific configuration needs to be done on a per VPN PE basis at the Internet gateway. Nevertheless, for inbound traffic at PE1, a route must exist in the default table for the customer site global prefix, pointing to the VRF of the site.
Multi-Autonomous-System Backbones
The problem of interprovider VPNs is similar for IPv6 and IPv4, assuming that IPv6 was deployed everywhere IPv4 was deployed. That, however, is not the situation today.
In IPv6 deployments that cross autonomous system boundaries, providers may have to obtain a peering model, or work with the peering model put in place for VPNv4.
Figure 4 illustrates interprovider scenarios in IPv6 VPN.
Figure 4 Interprovider Scenarios
Depending on the network protocol used between ASBRs, the three scenarios shown in Figure 4 can have several implementation options. For instance, scenario B, which suggests an multiprotocol eBGP IPv6 VPN peering between ASBRs, could use either an IPv6 or an IPv4 link.
In scenario C, multihop multiprotocol eBGP redistributes IPv6 VPN routes across route reflectors in different autonomous systems. Labeled IPv4 routes to the PEs (in the 6VPE case) need to be advertised across ASBRs so that a complete labeled switch path is set up end to end.
Carrier Supporting Carriers
The CSC feature provides VPN access to a customer service provider, so this service needs to exchange routes and send traffic over the ISP MPLS backbone. The only difference from a regular PE is that it provides MPLS-to-MPLS forwarding on the CSC-CE to CSC-PE interface, rather than IP-to-MPLS forwarding.
Figure 5 highlights the two ISPs' interface:
Figure 5 CSC 6VPE Configuration Example
For information on configuring CSC for BGP-MPLS VPN for IPv6, see Configuring CSC for IPv6 VPN.
How to Implement IPv6 VPN over MPLS (6VPE)
•
Configuring a Virtual Routing and Forwarding Instance for IPv6
•
Binding a VRF to an Interface
•
Configuring a Static Route for PE-to CE-Routing
•
Configuring eBGP PE-to-CE Routing Sessions
•
Configuring the IPv6 VPN Address Family for iBGP
•
Configuring Route Reflectors for Improved Scalability
•
Configuring Internet Access
•
Configuring a Multi-Autonomous-System Backbone for IPv6 VPN
•
Configuring CSC for IPv6 VPN
•
Verifying and Troubleshooting IPv6 VPN
Configuring a Virtual Routing and Forwarding Instance for IPv6
Configuring a virtual routing and forwarding instance (VRF) for IPv6 is no different from configuring a VRF for IPv4. A VRF is an address family-independent object that can be enabled and configured for each of the supported address families. Configuring a VRF consists of three steps:
1.
Configuring the address-family-independent part of the VRF
2.
Enabling and configuring IPv4 for the VRF
3.
Enabling and configuring IPv6 for the VRF
First, a VRF is given a name and a route distinguisher (RD). The RD is configured outside the context of the address family, although the RD is used to distinguish overlapping addresses within the context of a particular BGP address family. Having separate RDs for IPv4 VPN addresses and IPv6 VPN addresses does not matter. On Cisco routers, the RDs are the same in order to simplify configuration and VPN management.
Users can configure policies in common between IPv4 and IPv6 when outside any address-family context. This feature is shared route targets (import and export), and it is useful in a migration scenario, where IPv4 policies already are configured and IPv6 policies should be the same as the IPv4 policies.
The IPv4 and IPv6 address family can each be enabled and configured separately. Note that the route-target policies entered at this level override global policies that may have been specified during address family-independent configuration.
SUMMARY STEPS
1.
enable
2.
configure terminal
3.
mls ipv6 vrf
4.
vrf definition vrf-name
5.
rd route-distinguisher
6.
route-target {import | export | both} route-target-ext-community (Optional)
7.
address-family ipv4 [mdt | multicast | tunnel | unicast [vrf vrf-name] | vrf vrf-name] (Optional)
8.
route-target {import | export | both} route-target-ext-community (Optional)
9.
exit
10.
address-family ipv6 [vrf vrf-name] [unicast | multicast]
11.
route-target {import | export | both} route-target-ext-community (Optional)
DETAILED STEPS
| |
Command or Action
|
Purpose
|
Step 1
|
enable
Example:
Router> enable
|
Enables privileged EXEC mode.
• Enter your password if prompted.
|
Step 2
|
configure terminal
Example:
Router# configure terminal
|
Enters global configuration mode.
|
Step 3
|
mls ipv6 vrf
Example:
Router(config)# mls ipv6 vrf
|
Enables IPv6 globally in a VRF.
|
Step 4
|
vrf definition vrf-name
Example:
Router(config)# vrf definition red
|
Configures a VPN VRF routing table and enters VRF configuration mode.
|
Step 5
|
rd route-distinguisher
Example:
Router(config-vrf)# rd 100:1
|
Specifies the RD for a VRF.
|
Step 6
|
route-target {import | export | both}
route-target-ext-community
Example:
Router(config-vrf)# route target import 100:10
Router(config-vrf)# route target import 100:20
Router(config-vrf)# route target export 100:1
|
(Optional) Specifies the route target VPN extended communities for both IPv4 and IPv6.
|
Step 7
|
address-family ipv4 [mdt | multicast | tunnel |
unicast [vrf vrf-name] | vrf vrf-name]
Example:
Router(config)# address-family ipv4
|
(Optional) Enters address family configuration mode to configure a routing session using standard IPv4 address prefixes.
|
Step 8
|
route-target {import | export | both}
route-target-ext-community
Example:
Router(config-vrf-af)# route target import
100:11
Router(config-vrf-af)# route target import
100:21
Router(config-vrf-af)# route target import
100:1
|
(Optional) Specifies the route target VPN extended communities specific to IPv4.
|
Step 9
|
exit
Example:
Router(config-vrf-af)# exit
|
Exits address family configuration mode on this VRF.
|
Step 10
|
address-family ipv6 [vrf vrf-name] [unicast |
multicast]
Example:
Router(config-vrf)# address-family ipv6
|
Enters address family configuration mode for configuring routing sessions such as BGP that use standard IPv6 address prefixes.
|
Step 11
|
route-target {import | export | both}
route-target-ext-community
Example:
Router(config-vrf-af)# route target import
100:12
Router(config-vrf-af)# route target import
100:22
Router(config-vrf-af)# route target import
100:1
|
(Optional) Specifies the route target VPN extended communities specific to IPv6.
Note If step 5 was not executed, then this step is required.
|
Binding a VRF to an Interface
The following task describes how to bind a VRF to an interface. In order to specify which interface belongs to which VRF, use the vrf forwarding command for both IPv4 and IPv6. An interface cannot belong to more than one VRF. When the interface is bound to a VRF, previously configured addresses (IPv4 and IPv6) are removed, and they must be reconfigured.
SUMMARY STEPS
1.
enable
2.
configure terminal
3.
interface type number
4.
vrf forwarding vrf-name
5.
ip address ip-address mask [secondary] (Optional)
6.
ipv6 address {ipv6-address/prefix-length | prefix-name sub-bits/prefix-length}
DETAILED STEPS
| |
Command or Action
|
Purpose
|
Step 1
|
enable
Example:
Router> enable
|
Enables privileged EXEC mode.
• Enter your password if prompted.
|
Step 2
|
configure terminal
Example:
Router# configure terminal
|
Enters global configuration mode.
|
Step 3
|
interface type number
Example:
Router(config)# interface Ethernet 0/0
|
Specifies an interface type and number, and places the router in interface configuration mode.
|
Step 4
|
vrf forwarding vrf-name
Example:
Router(config-if)# vrf forwarding red
|
Associates a VPN VRF with an interface or subinterface. Note that any address, IPv4 or IPv6, that was configured prior to entering this command will be removed.
|
Step 5
|
ip address ip-address mask [secondary]
Example:
Router(config-if)# ip address 10.10.10.1
255.255.255.0
|
(Optional) Configures an IPv4 address on the interface.
|
Step 6
|
ipv6 address {ipv6-address/prefix-length |
prefix-name sub-bits/prefix-length}
Example:
Router(config-if)# ipv6 address
2001:DB8:100:1::1/64
|
Configures an IPv6 address on the interface.
|
Configuring a Static Route for PE-to CE-Routing
The following task describes how to configure a static route for PE-to-CE routing.
SUMMARY STEPS
1.
enable
2.
configure terminal
3.
ipv6 route [vrf vrf-name] ipv6-prefix/prefix-length {ipv6-address | interface-type interface-number [ipv6-address]} [nexthop-vrf [vrf-name1 | default]] [administrative-distance] [administrative-multicast-distance | unicast | multicast] [next-hop-address] [tag tag]
DETAILED STEPS
| |
Command or Action
|
Purpose
|
Step 1
|
enable
Example:
Router> enable
|
Enables privileged EXEC mode.
• Enter your password if prompted.
|
Step 2
|
configure terminal
Example:
Router# configure terminal
|
Enters global configuration mode.
|
Step 3
|
ipv6 route [vrf vrf-name]
ipv6-prefix/prefix-length {ipv6-address |
interface-type interface-number [ipv6-address]}
[nexthop-vrf [vrf-name1 | default]]
[administrative-distance]
[administrative-multicast-distance | unicast |
multicast] [next-hop-address] [tag tag]
Example:
Router(config)# ipv6 route vrf red ::/0
2001:DB8:200::1 nexthop-vrf default
|
Installs the IPv6 static route specified in the vrf-name argument via the next hop specified with the vrf-name1 argument.
|
Configuring eBGP PE-to-CE Routing Sessions
The following task describes how to configure eBGP PE-to-CE routing sessions.
SUMMARY STEPS
1.
enable
2.
configure terminal
3.
router bgp autonomous-system-number
4.
address-family ipv6 [vrf vrf-name] [unicast | multicast]
5.
neighbor {ip-address | ipv6-address | peer-group-name} remote-as as-number
6.
neighbor {ip-address | peer-group-name | ipv6-address} activate
DETAILED STEPS
| |
Command or Action
|
Purpose
|
Step 1
|
enable
Example:
Router> enable
|
Enables privileged EXEC mode.
• Enter your password if prompted.
|
Step 2
|
configure terminal
Example:
Router# configure terminal
|
Enters global configuration mode.
|
Step 3
|
router bgp autonomous-system-number
Example:
Router(config)# router bgp 100
|
Configures the BGP routing process.
|
Step 4
|
address-family ipv6 [vrf vrf-name] [unicast |
multicast]
Example:
Router(config-router)# address-family ipv6 vrf
red
|
Enters address family configuration mode.
|
Step 5
|
neighbor {ip-address | ipv6-address |
peer-group-name} remote-as as-number
Example:
Router(config-router-af)# neighbor
2001:DB8:100:1::2 remote-as 200
|
Adds an entry to the multiprotocol BGP neighbor table.
|
Step 6
|
neighbor {ip-address | peer-group-name |
ipv6-address} activate
Example:
Router(config-router-af)# neighbor
2001:DB8:100:1::2 activate
|
Enables the exchange of information for this address family with the specified BGP neighbor.
|
Configuring the IPv6 VPN Address Family for iBGP
The following task describes how to configure the IPv6 VPN address family for iBGP.
SUMMARY STEPS
1.
enable
2.
configure terminal
3.
router bgp autonomous-system-number
4.
neighbor {ip-address | ipv6-address | peer-group-name} remote-as as-number
5.
neighbor {ip-address | ipv6-address | peer-group-name} update-source interface-type interface-number
6.
address-family vpnv6 [unicast]
7.
neighbor {ip-address | peer-group-name | ipv6-address} activate
8.
neighbor {ip-address | ipv6-address | peer-group-name} send-community [both | standard | extended]
9.
exit
DETAILED STEPS
| |
Command or Action
|
Purpose
|
Step 1
|
enable
Example:
Router> enable
|
Enables privileged EXEC mode.
• Enter your password if prompted.
|
Step 2
|
configure terminal
Example:
Router# configure terminal
|
Enters global configuration mode.
|
Step 3
|
router bgp autonomous-system-number
Example:
Router(config)# router bgp 100
|
Configures the BGP routing process.
|
Step 4
|
neighbor {ip-address | ipv6-address |
peer-group-name} remote-as as-number
Example:
Router(config-router)# neighbor 192.168.2.11
remote-as 100
|
Adds an entry to the multiprotocol BGP neighbor table.
In IPv6 VPN, the peer address typically is an IPv4 address, in order to enable the BGP session to be transported over the IPv4-based core network.
|
Step 5
|
neighbor {ip-address | ipv6-address |
peer-group-name} update-source interface-type
interface-number
Example:
Router(config-router)# neighbor 192.168.2.11
update-source Loopback0
|
Enables the BGP session to use a source address on the specified interface.
|
Step 6
|
address-family vpnv6 [unicast]
Example:
Router(config-router)# address-family vpnv6
|
Places the router in address family configuration mode for configuring routing sessions.
|
Step 7
|
neighbor {ip-address | peer-group-name |
ipv6-address} activate
Example:
Router(config-router-af)# neighbor 192.168.2.11
activate
|
Enables the exchange of information for this address family with the specified BGP neighbor.
|
Step 8
|
neighbor {ip-address | ipv6-address |
peer-group-name} send-community [both |
standard | extended]
Example:
Router(config-router-af)# neighbor 192.168.2.11
send-community extended
|
Specifies that a communities attribute should be sent to the BGP neighbor.
|
Step 9
|
exit
Example:
Router(config-router-af)# exit
|
Exits address family configuration mode.
|
Configuring Route Reflectors for Improved Scalability
Deploying RRs improves scalability by drastically reducing the number of BGP sessions. One RR usually peers with many iBGP speakers, preventing a full mesh of BGP sessions.
In an MPLS-based core, RRs are not part of the label switch paths and can be located anywhere in the network. For example, in a flat RR design, RRs can be deployed at Level 1 points of presence (POPs) and peer together in a full-mesh topology. In a hierarchical RR design, RRs could be deployed at Level 1 and Level 2 POPs, with Level 1 POPs peering together and with Level 2 RRs.
In a typical case where 6VPE is deployed in a preexisting MPLS network (e.g., providing VPNv4 services), it is likely that some RR design is already in place, and a similar RR infrastructure for IPv6 VPN services can be deployed. Figure 6 illustrates the main peering points between the RR in the ISP POP and the set of its RR clients.
Figure 6 Route Reflector Peering Design
In this task, note that two RRs are being configured for redundancy reasons.
The following list of BGP RR clients must be configured at each IPv6 RR (RR6 and RR6_1 in Figure 6) router, at each POP:
•
PE routers (PE-VPN) of the POP providing IPv6 VPN access to the ISP customers. This includes both IPv6 VPN (6VPE) peering for interconnecting customer sites and IPv6 peering (6PE) for providing Internet access to VPN customers (see the "Configuring Internet Access" section).
•
Internet gateway (IGW) located in the POP in order to provide PE customers with access to the IPv6 Internet (see the "Configuring Internet Access" section).
•
RRs from other service providers. This feature is used to provide inter-autonomous-system connectivity, and it includes both IPv6 and IPv6 VPN peering. This service is described in the "Configuring a Multi-Autonomous-System Backbone for IPv6 VPN" section section.
•
RRs in other POPs. All RRs peer together, with both IPv6 and IPv6 VPN address families enabled.
SUMMARY STEPS
1.
enable
2.
configure terminal
3.
router bgp autonomous-system-number
4.
neighbor {ip-address | ipv6-address | peer-group-name} remote-as as-number (Optional)
5.
neighbor {ip-address | ipv6-address | peer-group-name} update-source interface-type interface-number (Optional)
6.
neighbor {ip-address | ipv6-address | peer-group-name} remote-as as-number
7.
neighbor {ip-address | ipv6-address | peer-group-name} update-source interface-type interface-number
8.
neighbor {ip-address | ipv6-address | peer-group-name} remote-as as-number
9.
neighbor {ip-address | ipv6-address | peer-group-name} update-source interface-type interface-number
10.
neighbor {ip-address | ipv6-address | peer-group-name} remote-as as-number (Optional)
11.
neighbor {ip-address | ipv6-address | peer-group-name} update-source interface-type interface-number (Optional)
12.
neighbor {ip-address | ipv6-address | peer-group-name} ebgp-multihop [ttl] (Optional)
13.
address-family ipv6 (Optional)
14.
neighbor {ip-address | peer-group-name | ipv6-address} activate (Optional)
15.
neighbor {ip-address | ipv6-address | peer-group-name} send-label (Optional)
16.
neighbor {ip-address | ipv6-address | peer-group-name} route-reflector-client (Optional)
17.
neighbor {ip-address | peer-group-name | ipv6-address} activate (Optional)
18.
neighbor {ip-address | ipv6-address | peer-group-name} send-label (Optional)
19.
neighbor {ip-address | ipv6-address | peer-group-name} route-reflector-client (Optional)
20.
neighbor {ip-address | peer-group-name | ipv6-address} activate (Optional)
21.
neighbor {ip-address | ipv6-address | peer-group-name} send-label (Optional)
22.
neighbor {ip-address | ipv6-address | peer-group-name} route-reflector-client (Optional)
23.
exit (Optional)
24.
address-family vpnv6 [unicast]
25.
neighbor {ip-address | peer-group-name | ipv6-address} activate
26.
neighbor {ip-address | ipv6-address | peer-group-name} send-community [both | standard | extended]
27.
neighbor {ip-address | ipv6-address | peer-group-name} route-reflector-client
28.
neighbor {ip-address | peer-group-name | ipv6-address} activate
29.
neighbor {ip-address | ipv6-address | peer-group-name} send-community [both | standard | extended]
30.
neighbor {ip-address | ipv6-address | peer-group-name} route-reflector-client
31.
neighbor {ip-address | peer-group-name | ipv6-address} activate
32.
neighbor {ip-address | ipv6-address | peer-group-name} send-community [both | standard | extended]
33.
neighbor {ip-address | ipv6-address | peer-group-name} route-reflector-client
34.
neighbor {ip-address | ipv6-address | peer-group-name} next-hop-unchanged [allpaths]
DETAILED STEPS
| |
Command or Action
|
Purpose
|
Step 1
|
enable
Example:
Router> enable
|
Enables privileged EXEC mode.
• Enter your password if prompted.
|
Step 2
|
configure terminal
Example:
Router# configure terminal
|
Enters global configuration mode.
|
Step 3
|
router bgp autonomous-system-number
Example:
Router(config)# router bgp 100
|
Configures the BGP routing process.
|
Step 4
|
neighbor {ip-address | ipv6-address |
peer-group-name} remote-as as-number
Example:
Router(config-router)# neighbor 192.168.2.101
remote-as 100
|
(Optional) Adds an entry to the multiprotocol BGP neighbor table.
Provides peering with the Internet gateway in order to provide Internet access.
|
Step 5
|
neighbor {ip-address | ipv6-address |
|