Guest

Cisco IOS Software Releases 12.2 S

MPLS VPN—Inter-AS—IPv4 BGP Label Distribution

  • Viewing Options

  • PDF (769.8 KB)
  • Feedback
MPLS VPN—Inter-AS—IPv4 BGP Label Distribution

Table Of Contents

MPLS VPN—Inter-AS—IPv4 BGP Label Distribution

Contents

Prerequisites for MPLS VPN—Inter-AS—IPv4 BGP Label Distribution

Restrictions for MPLS VPN—Inter-AS—IPv4 BGP Label Distribution

Information About MPLS VPN—Inter-AS—IPv4 BGP Label Distribution

MPLS VPN—Inter-AS—IPv4 BGP Label Distribution Overview

BGP Routing Information

Types of BGP Messages and MPLS Labels

How BGP Sends MPLS Labels with Routes

Using Route Maps to Filter Routes

How to Configure MPLS VPN—Inter-AS—IPv4 BGP Label Distribution

Configure the ASBRs to Exchange IPv4 Routes and MPLS Labels

Configure the Route Reflectors to Exchange VPNv4 Routes

Configure the Route Reflectors to Reflect Remote Routes in Its AS

Create Route Maps

Configure a Route Map for Arriving Routes

Configure a Route Map for Departing Routes

Apply the Route Maps to the ASBRs

Verify the MPLS VPN—Inter-AS—IPv4 BGP Label Distribution Configuration

Verify the Route Reflector Configuration

Verify that CE1 Has Network Reachability Information for CE2

Verify that PE1 Has Network Layer Reachability Information for CE2

Verify that PE2 Has Network Reachability Information for CE2

Verify the ASBR Configuration

Configuration Examples for MPLS VPN—Inter-AS—IPv4 BGP Label Distribution

Configuring Inter-AS Using BGP to Distribute Routes and MPLS Labels Over an MPLS VPN Service Provider Example

Route Reflector 1 Configuration Example (MPLS VPN Service Provider)

ASBR1 Configuration Example (MPLS VPN Service Provider)

Route Reflector 2 Configuration Example (MPLS VPN Service Provider)

ASBR2 Configuration Example (MPLS VPN Service Provider)

Configuring Inter-AS Using BGP to Distribute Routes and MPLS Labels Over a Non MPLS VPN Service Provider Example

Route Reflector 1 Configuration Example (Non MPLS VPN Service Provider)

ASBR1 Configuration Example (Non MPLS VPN Service Provider)

Route Reflector 2 Configuration Example (Non MPLS VPN Service Provider)

ASBR2 Configuration Example (Non MPLS VPN Service Provider)

ASBR3 Configuration Example (Non MPLS VPN Service Provider)

Route Reflector 3 Configuration Example (Non MPLS VPN Service Provider)

ASBR4 Configuration Example (Non MPLS VPN Service Provider)

Additional References

Related Documents

Standards

MIBs

RFCs

Technical Assistance

Command Reference

debug ip bgp

match mpls-label

neighbor send-label

set mpls-label

show ip bgp

show ip bgp labels

show ip bgp neighbors

show ip bgp vpnv4

show route-map

Glossary


MPLS VPN—Inter-AS—IPv4 BGP Label Distribution


This feature enables you to set up a Virtual Private Network (VPN) service provider network so that the autonomous system boundary routers (ASBRs) exchange IPv4 routes with Multiprotocol Label Switching (MPLS) labels of the provider edge (PE) routers. Route reflectors (RRs) exchange VPNv4 routes by using multihop, multiprotocol, External Border Gateway Protocol (EBGP). This configuration saves the ASBRs from having to store all the VPNv4 routes. Using the route reflectors to store the VPNv4 routes and forward them to the PE routers results in improved scalability.

The MPLS VPN—Inter-AS—IPv4 BGP Label Distribution feature has the following benefits:

Having the route reflectors store VPNv4 routes results in improved scalability—This configuration scales better than other configurations where the ASBR holds all of the VPNv4 routes and forwards the routes based on VPNv4 labels. With this configuration, route reflectors hold the VPNv4 routes, which simplifies the configuration at the border of the network.

Enables a non-VPN core network to act as a transit network for VPN traffic—You can transport IPv4 routes with MPLS labels over a non MPLS VPN service provider.

Eliminates the need for any other label distribution protocol between adjacent LSRs—If two adjacent label switch routers (LSRs) are also BGP peers, BGP can handle the distribution of the MPLS labels. No other label distribution protocol is needed between the two LSRs.

Feature Specifications for MPLS VPN—Inter-AS—IPv4 BGP Label Distribution

Feature History
 
Release
Modification

12.0(21)ST

This feature was introduced.

12.0(22)S

This feature was implemented on the Cisco 12000 series routers (for specific line cards supported, see Table 1) and integrated into Cisco IOS Release 12.0(22)S.

12.0(23)S

Support was added for the Cisco 12000 Series Eight-Port OC-3c/STM-1c ATM Line Card (8-Port OC-3 ATM) and the Cisco 12000 Series Three-Port Gigabit Ethernet Line Card (3-Port GbE).

12.2(13)T

This feature was integrated into Cisco IOS Release 12.2(13)T.

12.2(14)S

This feature was integrated into Cisco IOS Release 12.2(14)S and implemented on Cisco 7200 and Cisco 7500 series routers.

Supported Platforms

Cisco 7200 series, Cisco 7500 series, Cisco 12000 series (for specific line cards supported for the Cisco IOS 12.0 S and ST releases, see Table 1).


Determining Platform Support Through Cisco Feature Navigator

Cisco IOS software is packaged in feature sets that are supported on specific platforms. To obtain updated information about platform support for this feature, access Cisco Feature Navigator. Cisco Feature Navigator dynamically updates the list of supported platforms as new platform support is added for the feature.

Cisco Feature Navigator is a web-based tool that enables you to determine which Cisco IOS software images support a specific set of features and which features are supported in a specific Cisco IOS image. You can search by feature or release. In the release section, you can compare releases side by side to display both the features unique to each software release and the features that releases have in common.

To access Cisco Feature Navigator, you must have an account on Cisco.com. If you have forgotten or lost your account information, send a blank e-mail to cco-locksmith@cisco.com. An automatic check will verify that your e-mail address is registered with Cisco.com. If the check is successful, account details with a new random password will be e-mailed to you. Qualified users can establish an account on Cisco.com by following the directions found at this URL:

http://www.cisco.com/register

Cisco Feature Navigator is updated regularly when major Cisco IOS software releases and technology releases occur. For the most current information, go to the Cisco Feature Navigator home page at the following URL:

http://www.cisco.com/go/fn

Availability of Cisco IOS Software Images

Platform support for particular Cisco IOS software releases is dependent on the availability of the software images for those platforms. Software images for some platforms may be deferred, delayed, or changed without prior notice. For updated information about platform support and availability of software images for each Cisco IOS software release, refer to the online release notes or, if supported, Cisco Feature Navigator.

Contents

Prerequisites for MPLS VPN—Inter-AS—IPv4 BGP Label Distribution

Restrictions for MPLS VPN—Inter-AS—IPv4 BGP Label Distribution

Information About MPLS VPN—Inter-AS—IPv4 BGP Label Distribution

How to Configure MPLS VPN—Inter-AS—IPv4 BGP Label Distribution

Configuration Examples for MPLS VPN—Inter-AS—IPv4 BGP Label Distribution

Additional References

Command Reference

Glossary

Prerequisites for MPLS VPN—Inter-AS—IPv4 BGP Label Distribution

The network must be properly configured for MPLS VPN operation before you configure this feature.

Table 1 lists the Cisco 12000 series line card support added by Cisco IOS S and ST releases.

Table 1 Cisco I2000 Series Line Card Support Added for Cisco IOS Releases 

Type
Line Cards
Cisco IOS Release Supported

Packet Over SONET (POS)

4-Port OC-3 POS
8-Port OC-3 POS
16-Port OC-3 POS
1-Port OC-12 POS
4-Port OC-12 POS
1-Port OC-48 POS
4-Port OC-3 POS ISE
8-Port OC-3 POS ISE
16-Port OC-3 POS ISE
4-Port OC-12 POS ISE
1-Port OC-48 POS ISE

12.0(22)S, 12.0(23)S

Electrical Interface

6-Port DS3
12-Port DS3
6-Port E3
12-Port E3

12.0(22)S, 12.0(23)S

Ethernet

3-Port GbE

12.0(23)S

Asynchronous Transfer Mode (ATM)

4-Port OC-3 ATM
1-Port OC12 ATM
4-Port OC-12 ATM
8-Port OC-3 ATM

12.0(22)S, 12.0(23)S


12.0(23)S

Channelized Interface

2-Port CHOC-3
6-Port Ch T3 (DS1)
1-Port CHOC-12 (DS3)
1-Port CHOC-12 (OC-3)
4-Port CHOC-12 ISE
1-Port CHOC-48 ISE

12.0(22)S, 12.0(23)S


Restrictions for MPLS VPN—Inter-AS—IPv4 BGP Label Distribution

This feature includes the following restrictions:

For networks configured with EBGP multihop, a labeled switched path (LSP) must be established between nonadjacent routers. (RFC 3107)

This feature does not currently support multiple routes to a given destination.

The PE routers must run images that support BGP label distribution. Otherwise, you cannot run EBGP between them.

This feature is not supported with EIBGP multipath.

The physical interfaces that connect the BGP speakers must support Cisco Express Forwarding (CEF) or distributed CEF and MPLS.

Information About MPLS VPN—Inter-AS—IPv4 BGP Label Distribution

To configure MPLS VPN—Inter-AS—IPv4 BGP Label Distribution, you need the following information:

MPLS VPN—Inter-AS—IPv4 BGP Label Distribution Overview

BGP Routing Information

Types of BGP Messages and MPLS Labels

How BGP Sends MPLS Labels with Routes

Using Route Maps to Filter Routes

MPLS VPN—Inter-AS—IPv4 BGP Label Distribution Overview

This feature enables you to set up a VPN service provider network to exchange IPv4 routes with MPLS labels. You can configure the VPN service provider network as follows:

Route reflectors exchange VPNv4 routes by using multihop, multiprotocol EBGP. This configuration also preserves the next hop information and the VPN labels across the autonomous systems.

A local PE router (for example, PE1 in Figure 1) needs to know the routes and label information for the remote PE router (PE2). This information can be exchanged between the PE routers and ASBRs in one of two ways:

Internal Gateway Protocol (IGP) and Label Distribution Protocol (LDP): The ASBR can redistribute the IPv4 routes and MPLS labels it learned from EBGP into IGP and LDP and vice versa.

Internal Border Gateway Protocol (IBGP) IPv4 label distribution: The ASBR and PE router can use direct IBGP sessions to exchange VPNv4 and IPv4 routes and MPLS labels.

Alternatively, the route reflector can reflect the IPv4 routes and MPLS labels learned from the ASBR to the PE routers in the VPN. This is accomplished by enabling the ASBR to exchange IPv4 routes and MPLS labels with the route reflector. The route reflector also reflects the VPNv4 routes to the PE routers in the VPN (as mentioned in the first bullet). For example, in VPN1, RR1 reflects to PE1 the VPNv4 routes it learned and IPv4 routes and MPLS labels learned from ASBR1. Using the route reflectors to store the VPNv4 routes and forward them through the PE routers and ASBRs allows for a scalable configuration.

ASBRs exchange IPv4 routes and MPLS labels for the PE routers by using EBGP.

Figure 1 VPNs Using EBGP and IBGP to Distribute Routes and MPLS Labels

BGP Routing Information

BGP routing information includes the following items:

A network number (prefix), which is the IP address of the destination.

Autonomous system (AS) path, which is a list of the other ASs through which a route passes on its way to the local router. The first AS in the list is closest to the local router; the last AS in the list is farthest from the local router and usually the AS where the route began.

Path attributes, which provide other information about the AS path, for example, the next hop.

Types of BGP Messages and MPLS Labels

MPLS labels are included in the update messages that a router sends. Routers exchange the following types of BGP messages:

Open Messages—After a router establishes a TCP connection with a neighboring router, the routers exchange open messages. This message contains the AS number to which the router belongs and the IP address of the router who sent the message.

Update Messages—When a router has a new, changed, or broken route, it sends an update message to the neighboring router. This message contains the Network Layer Reachability Information (NLRI), which lists the IP addresses of the usable routes. The update message also includes any routes that are no longer usable. The update message also includes path attributes and the lengths of both the usable and unusable paths. Labels for VPNv4 routes are encoded in the update message as specified in RFC 2858. The labels for the IPv4 routes are encoded in the update message as specified in RFC 3107.

Keepalive Messages—Routers exchange keepalive messages to determine if a neighboring router is still available to exchange routing information. The router sends these messages at regular intervals. (Sixty seconds is the default for Cisco routers.) The keepalive message does not contain routing data; it only contains a message header.

Notification Messages—When a router detects an error, it sends a notification message.

How BGP Sends MPLS Labels with Routes

When BGP (EBGP and IBGP) distributes a route, it can also distribute an MPLS label that is mapped to that route. The MPLS label mapping information for the route is carried in the BGP update message that contains the information about the route. If the next hop is not changed, the label is preserved.

When you issue the neighbor send-label command on both BPG routers, the routers advertise to each other that they can then send MPLS labels with the routes. If the routers successfully negotiate their ability to send MPLS labels, the routers add MPLS labels to all outgoing BGP updates.

Using Route Maps to Filter Routes

When both routers are configured to distribute routes with MPLS labels, all the routes are encoded with the multiprotocol extensions and contain an MPLS label. You can use a route map to control the distribution of MPLS labels between routers. Route maps enable you to specify the following:

For a router distributing MPLS labels, you can specify which routes are distributed with an MPLS label.

For a router receiving MPLS labels, you can specify which routes are accepted and installed in the BGP table.

How to Configure MPLS VPN—Inter-AS—IPv4 BGP Label Distribution

This section contains the following procedures:

Configure the ASBRs to Exchange IPv4 Routes and MPLS Labels

Configure the Route Reflectors to Exchange VPNv4 Routes

Configure the Route Reflectors to Reflect Remote Routes in Its AS

Create Route Maps

Apply the Route Maps to the ASBRs

Verify the MPLS VPN—Inter-AS—IPv4 BGP Label Distribution Configuration

Figure 2 shows the following sample configuration:

The configuration consists of two VPNs.

The ASBRs exchange the IPv4 routes with MPLS labels.

The route reflectors exchange the VPNv4 routes using multlihop MPLS EBGP.

The route reflectors reflect the IPv4 and VPNv4 routes to the other routers in its AS.

Figure 2 Configuring Two VPN Service Providers to Exchange IPv4 Routes and MPLS Labels

Configure the ASBRs to Exchange IPv4 Routes and MPLS Labels

Perform this task to configure the ASBRs so that they can distribute BGP routes with MPLS labels.

SUMMARY STEPS

1. enable

2. configure {terminal | memory | network}

3. router bgp as-number

4. neighbor {ip-address | peer-group-name} remote-as as-number

5. address-family ipv4 [multicast | unicast | vrf vrf-name]

6. neighbor {ip-address | peer-group-name} activate

7. neighbor ip-address send-label

8. exit-address-family

9. end

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables higher privilege levels, such as privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure {terminal | memory | network}

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

router bgp as-number

Example:

Router(config)# router bgp 100

Configures a BGP routing process and places the router in router configuration mode.

The as-number argument indicates the number of an autonomous system that identifies the router to other BGP routers and tags the routing information passed along.

Valid numbers are from 0 to 65535. Private autonomous system numbers that can be used in internal networks range from 64512 to 65535.

Step 4 

neighbor {ip-address | peer-group-name} remote-as as-number

Example:

Router(config-router)# neighbor hh.0.0.1 remote-as 200

Adds an entry to the BGP or multiprotocol BGP neighbor table.

The ip-address argument specifies the IP address of the neighbor.

The peer-group-name argument specifies the name of a BGP peer group.

The as-number argument specifies the autonomous system to which the neighbor belongs.

Step 5 

address-family ipv4 [multicast | unicast | vrf vrf-name]

Example:

Router(config-router)# address-family ipv4

Enters address family configuration mode for configuring routing sessions such as BGP that use standard IPv4 address prefixes.

The multicast keyword specifies IPv4 multicast address prefixes.

The unicast keyword specifies IPv4 unicast address prefixes.

The vrf vrf-name keyword and argument specifies the name of the VPN routing/forwarding instance (VRF) to associate with subsequent IPv4 address family configuration mode commands.

Step 6 

neighbor {ip-address | peer-group-name} activate

Example:

Router(config-router-af)# neighbor hh.0.0.1 activate

Enables the exchange of information with a neighboring router.

The ip-address argument specifies the IP address of the neighbor.

The peer-group-name argument specifies the name of a BGP peer group.

Step 7 

neighbor ip-address send-label

Example:

Router(config-router-af)# neighbor hh.0.0.1 send-label

Enables a BGP router to send MPLS labels with BGP routes to a neighboring BGP router.

The ip-address argument specifies the IP address of the neighboring router.

Step 8 

exit-address-family

Example:

Router(config-router-af)# exit-address-family

Exits from the address family submode.

Step 9 

end

Example:

Router(config-router-af)# end

(Optional) Exits to privileged EXEC mode.


Configure the Route Reflectors to Exchange VPNv4 Routes

Perform this task to enable the route reflectors to exchange VPNv4 routes by using multihop, multiprotocol EBGP.

This procedure also specifies that the next hop information and the VPN label are preserved across the autonomous systems. This procedure uses RR1 as an example.

SUMMARY STEPS

1. enable

2. configure {terminal | memory | network}

3. router bgp as-number

4. neighbor {ip-address | peer-group-name} remote-as as-number

5. address-family vpnv4 [unicast]

6. neighbor {ip-address | peer-group-name} ebgp-multihop [ttl]

7. neighbor {ip-address | peer-group-name} activate

8. neighbor {ip-address | peer-group-name} next-hop unchanged

9. exit-address-family

10. end

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables higher privilege levels, such as privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure {terminal | memory | network}

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

router bgp as-number

Example:

Router(config)# router bgp 100

Configures a BGP routing process and places the router in router configuration mode.

The as-number argument indicates the number of an autonomous system that identifies the router to other BGP routers and tags the routing information passed along.

Valid numbers are from 0 to 65535. Private autonomous system numbers that can be used in internal networks range from 64512 to 65535.

The AS number identifies RR1 to routers in other autonomous systems.

Step 4 

neighbor {ip-address | peer-group-name} remote-as as-number

Example:

Router(config-router)# neighbor bb.bb.bb.bb remote-as 200

Adds an entry to the BGP or multiprotocol BGP neighbor table.

The ip-address argument specifies the IP address of the neighbor.

The peer-group-name argument specifies the name of a BGP peer group.

The as-number argument specifies the autonomous system to which the neighbor belongs.

Step 5 

address-family vpnv4 [unicast]

Example:

Router(config-router)# address-family vpnv4

Enters address family configuration mode for configuring routing sessions, such as BGP, that use standard Virtual Private Network Version 4 (VPNv4) address prefixes.

The optional unicast keyword specifies VPNv4 unicast address prefixes.

Step 6 

neighbor {ip-address | peer-group-name} ebgp-multihop [ttl]

Example:

Router(config-router-af)# neighbor bb.bb.bb.bb ebgp-multihop 255

Accepts and attempts BGP connections to external peers residing on networks that are not directly connected.

The ip-address argument specifies the IP address of the BGP-speaking neighbor.

The peer-group-name argument specifies the name of a BGP peer group.

The ttl argument specifies the time-to-live in the range from 1 to 255 hops.

Step 7 

neighbor {ip-address | peer-group-name} activate

Example:

Router(config-router-af)# neighbor bb.bb.bb.bb activate

Enables the exchange of information with a neighboring router.

The ip-address argument specifies the IP address of the neighbor.

The peer-group-name argument specifies the name of a BGP peer group.

Step 8 

neighbor {ip-address | peer-group-name} next-hop unchanged

Example:

Router(config-router-af)# neighbor ip-address next-hop unchanged

Enables an External BGP (EBGP) multihop peer to propagate the next hop unchanged.

The ip-address argument specifies the IP address of the next hop.

The peer-group-name argument specifies the name of a BGP peer group that is the next hop.

Step 9 

exit-address-family

Example:

Router(config-router-af)# exit-address-family

Exits from the address family submode.

Step 10 

end

Example:

Router(config-router-af)# end

(Optional) Exits to privileged EXEC mode.


Configure the Route Reflectors to Reflect Remote Routes in Its AS

Perform this task to enable the RR to reflect the IPv4 routes and labels learned by the ASBR to the PE routers in the AS.

This is accomplished by making the ASBR and PE router route reflector clients of the RR. This procedure also explains how to enable the RR to reflect the VPNv4 routes.

SUMMARY STEPS

1. enable

2. configure {terminal | memory | network}

3. router bgp as-number

4. address-family ipv4 [multicast | unicast | vrf vrf-name]

5. neighbor {ip-address | peer-group-name} activate

6. neighbor ip-address route-reflector-client

7. neighbor ip-address send-label

8. exit-address-family

9. address-family vpnv4 [unicast]

10. neighbor {ip-address | peer-group-name} activate

11. neighbor ip-address route-reflector-client

12. exit-address-family

13. end

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables higher privilege levels, such as privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure {terminal | memory | network}

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

router bgp as-number

Example:

Router(config)# router bgp 100

Configures a BGP routing process and places the router in router configuration mode.

The as-number argument indicates the number of an autonomous system that identifies the router to other BGP routers and tags the routing information passed along.

Valid numbers are from 0 to 65535. Private autonomous system numbers that can be used in internal networks range from 64512 to 65535.

Step 4 

address-family ipv4 [multicast | unicast | vrf vrf-name]

Example:

Router(config-router)# address-family ipv4

Enters address family configuration mode for configuring routing sessions such as BGP that use standard IPv4 address prefixes.

The multicast keyword specifies IPv4 multicast address prefixes.

The unicast keyword specifies IPv4 unicast address prefixes.

The vrf vrf-name keyword and argument specifies the name of the VPN routing and forwarding instance (VRF) to associate with subsequent IPv4 address family configuration mode commands.

Step 5 

neighbor {ip-address | peer-group-name} activate

Example:

Router(config-router-af)# neighbor ee.ee.ee.ee activate

Enables the exchange of information with a neighboring router.

The ip-address argument specifies the IP address of the neighbor.

The peer-group-name specifies the name of a BGP peer group.

Step 6 

neighbor ip-address route-reflector-client

Example:

Router(config-router-af)# neighbor ee.ee.ee.ees route-reflector-client

Configures the router as a BGP route reflector and configures the specified neighbor as its client.

The ip-address argument specifies the IP address of the BGP neighbor being identified as a client.

Step 7 

neighbor ip-address send-label

Example:

Router(config-router-af)# neighbor ee.ee.ee.ee send-label

Enables a BGP router to send MPLS labels with BGP routes to a neighboring BGP router.

The ip-address argument specifies the IP address of the neighboring router.

Step 8 

exit-address-family

Example:

Router(config-router-af)# exit-address-family

Exits from the address family submode.

Step 9 

address-family vpnv4 [unicast]

Example:

Router(config-router)# address-family vpnv4

Enters address family configuration mode for configuring routing sessions, such as BGP, that use standard VPNv4 address prefixes.

The optional unicast keyword specifies VPNv4 unicast address prefixes.

Step 10 

neighbor {ip-address | peer-group-name} activate

Example:

Router(config-router-af)# neighbor ee.ee.ee.ee activate

Enables the exchange of information with a neighboring router.

The ip-address argument specifies the IP address of the neighbor.

The peer-group-name argument specifies the name of a BGP peer group.

Step 11 

neighbor ip-address route-reflector-client

Example:

Router(config-router-af)# neighbor ee.ee.ee.ee route-reflector-client

Enables the RR to pass IBGP routes to the neighboring router.

Step 12 

exit-address-family

Example:

Router(config-router-af)# exit-address-family

Exits from the address family submode.

Step 13 

end

Example:

Router(config-router-af)# end

(Optional) Exits to privileged EXEC mode.


Create Route Maps

The following procedures enable the ASBRs to send MPLS labels with the routes specified in the route maps. Further, the ASBRs accept only the routes that are specified in the route map.

Configure a Route Map for Arriving Routes

Configure a Route Map for Departing Routes

Route maps enable you to specify which routes are distributed with MPLS labels. Route maps also enable you to specify which routes with MPLS labels a router receives and adds to its BGP table.

Route maps work with access lists. You enter the routes into an access list and then specify the access list when you configure the route map.

Configure a Route Map for Arriving Routes

This configuration is optional.

Perform this task to create a route map to filter arriving routes. You create an access list and specify the routes that the router should accept and add to the BGP table.

SUMMARY STEPS

1. enable

2. configure {terminal | memory | network}

3. router bgp as-number

4. route-map route-map-name [permit | deny] [sequence-number]

5. match ip address {access-list-number | access-list-name} [... access-list-number |... access-list-name]

6. match mpls-label

7. end

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables higher privilege levels, such as privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure {terminal | memory | network}

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

router bgp as-number

Example:

Router(config)# router bgp 100

Configures a BGP routing process and places the router in router configuration mode.

The as-number argument indicates the number of an autonomous system that identifies the router to other BGP routers and tags the routing information passed along.

Valid numbers are from 0 to 65535. Private autonomous system numbers that can be used in internal networks range from 64512 to 65535.

Step 4 

route-map route-map-name [permit | deny] [sequence-number]

Example:

Router(config-router)# route-map IN permit 11

Creates a route map with the name you specify.

The permit keyword allows the actions to happen if all conditions are met.

A deny keyword prevents any actions from happening if all conditions are met.

The sequence-number argument allows you to prioritize route maps. If you have multiple route maps and want to prioritize them, assign each one a number. The route map with the lowest number is implemented first, followed by the route map with the second lowest number, and so on.

Step 5 

match ip address {access-list-number | access-list-name} [... access-list-number |... access-list-name]

Example:

Router(config-route-map)# match ip address 2

Distributes any routes that have a destination network number address that is permitted by a standard or extended access list, or performs policy routing on packets.

The access-list-number argument is a number of a standard or extended access list. It can be an integer from 1 to 199.

The access-list-name argument is a name of a standard or extended access list. It can be an integer from 1 to 199.

Step 6 

match mpls-label

Example:

Router(config-route-map)# match mpls-label

Redistributes routes that include MPLS labels if the routes meet the conditions specified in the route map.

Step 7 

end

Example:

Router(config-route-map)# end

(Optional) Exits to privileged EXEC mode.


Configure a Route Map for Departing Routes

This configuration is optional.

Perform this task to create a route map to filter departing routes. You create an access list and specify the routes that the router should distribute with MPLS labels.

SUMMARY STEPS

1. enable

2. configure {terminal | memory | network}

3. router bgp as-number

4. route-map route-map-name [permit | deny] [sequence-number]

5. match ip address {access-list-number | access-list-name} [... access-list-number |... access-list-name]

6. set mpls label

7. end

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables higher privilege levels, such as privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure {terminal | memory | network}

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

router bgp as-number

Example:

Router(config)# router bgp 100

Configures a BGP routing process and places the router in router configuration mode.

The as-number argument indicates the number of an autonomous system that identifies the router to other BGP routers and tags the routing information passed along.

Valid numbers are from 0 to 65535. Private autonomous system numbers that can be used in internal networks range from 64512 to 65535.

Step 4 

route-map route-map-name [permit | deny] [sequence-number]

Example:

Router(config-router)# route-map OUT permit 10

Creates a route map with the name you specify.

The permit keyword allows the actions to happen if all conditions are met.

A deny keyword prevents the actions from happening if all conditions are met.

The sequence-number argument allows you to prioritize route maps. If you have multiple route maps and want to prioritize them, assign each one a number. The route map with the lowest number is implemented first, followed by the route map with the second lowest number, and so on.

Step 5 

match ip address {access-list-number | access-list-name} [... access-list-number |... access-list-name]

Example:

Router(config-route-map)# match ip address 1

Distributes any routes that have a destination network number address that is permitted by a standard or extended access list, or performs policy routing on packets.

The access-list-number argument is a number of a standard or extended access list. It can be an integer from 1 to 199.

The access-list-name argument is a name of a standard or extended access list. It can be an integer from 1 to 199.

Step 6 

set mpls-label

Example:

Router(config-route-map)# set mpls-label

Enables a route to be distributed with an MPLS label if the route matches the conditions specified in the route map.

Step 7 

end

Example:

Router(config-route-map)# end

Exits to privileged EXEC mode.


Apply the Route Maps to the ASBRs

This configuration is optional.

Perform this task to enable the ASBRs to use the route maps.

SUMMARY STEPS

1. enable

2. configure {terminal | memory | network}

3. router bgp as-number

4. address-family ipv4 [multicast | unicast | vrf vrf-name}

5. neighbor ip-address route-map route-map-name in

6. neighbor ip-address route-map route-map-name out

7. neighbor ip-address send-label

8. exit-address-family

9. end

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables higher privilege levels, such as privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure {terminal | memory | network}

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

router bgp as-number

Example:

Router(config)# router bgp 100

Configures a BGP routing process and places the router in router configuration mode.

The as-number argument indicates the number of an autonomous system that identifies the router to other BGP routers and tags the routing information passed along.

Valid numbers are from 0 to 65535. Private autonomous system numbers that can be used in internal networks range from 64512 to 65535.

Step 4 

address-family ipv4 [multicast | unicast | vrf vrf-name]

Example:

Router(config-router)# address-family ipv4

Enters address family configuration mode for configuring routing sessions such as BGP that use standard IPv4 address prefixes.

The multicast keyword specifies IPv4 multicast address prefixes.

The unicast keyword specifies IPv4 unicast address prefixes.

The vrf vrf-name keyword and argument specifies the name of the VRF to associate with subsequent IPv4 address family configuration mode commands.

Step 5 

neighbor ip-address route-map route-map-name in

Example:

Router(config-router-af)# neighbor ip-address route-map IN in

Applies a route map to incoming routes.

The ip-address argument specifies the router to which the route map is to be applied.

The route-map-name argument specifies the name of the route map.

The in keyword applies the route map to incoming routes.

Step 6 

neighbor ip-address route-map route-map-name out

Example:

Router(config-router-af)# neighbor ww.ww.ww.ww route-map OUT out

Applies a route map to outgoing routes.

The ip-address argument specifies the router to which the route map is to be applied.

The route-map-name argument specifies the name of the route map.

The out keyword applies the route map to outgoing routes.

Step 7 

neighbor ip-address send-label

Example:

Router(config-router-af)# neighbor ww.ww.ww.ww send-label

Advertises the ability of the router to send MPLS labels with routes.

The ip-address argument specifies the router that is enabled to send MPLS labels with routes.

Step 8 

exit-address-family

Example:

Router(config-router-af)# exit-address-family

Exits from the address family submode.

Step 9 

end

Example:

Router(config-route-af)# end

(Optional) Exits to privileged EXEC mode.


Verify the MPLS VPN—Inter-AS—IPv4 BGP Label Distribution Configuration

If you use route reflectors to distribute the VPNv4 routes and use the ASBRs to distribute the IPv4 labels, use the following procedures to help verify the configuration:

Verify the Route Reflector Configuration

Verify that CE1 Has Network Reachability Information for CE2

Verify that PE1 Has Network Layer Reachability Information for CE2

Verify that PE2 Has Network Reachability Information for CE2

Verify the ASBR Configuration

Use Figure 3 as a reference of the configuration.

Figure 3 Configuring Two VPN Service Providers to Exchange IPv4 Routes and MPLS Labels

Verify the Route Reflector Configuration

Perform this task to verify the route reflector configuration.

SUMMARY STEPS

1. enable

2. show ip bgp vpnv4 {all | rd route-distinguisher | vrf vrf-name} [summary] [labels]

3. disable

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables higher privilege levels, such as privileged EXEC mode.

Enter your password if prompted.

Step 2 

show ip bgp vpnv4 {all | rd route-distinguisher | vrf vrf-name} [summary] [labels]

Example:

Router# show ip bgp vpnv4 all summary

Example:

Router# show ip bgp vpnv4 all labels

(Optional) Displays VPN address information from the BGP table.

Use the show ip bgp vpnv4 command with the all and summary keywords to verify that a multihop, multiprotocol, EBGP session exists between the route reflectors and that the VPNv4 routes are being exchanged between the route reflectors.

The last two lines of the command output show the following information:

Prefixes are being learned from PE1 and then passed to RR2.

Prefixes are being learned from RR2 and then passed to PE1.

Use the show ip bgp vpnv4 command with the all and labels keywords to verify that the route reflectors are exchanging VPNv4 label information.

Step 3 

disable

Example:

Router# disable

(Optional) Exits to user EXEC mode.


Verify that CE1 Has Network Reachability Information for CE2

Perform this task to verify that router CE1 has NLRI for router CE2.

SUMMARY STEPS

1. enable

2. show ip route [ip-address [mask] [longer-prefixes]] | [protocol [process-id]] | [list access-list-number | access-list-name]

3. disable

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables higher privilege levels, such as privileged EXEC mode.

Enter your password if prompted.

Step 2 

show ip route [ip-address [mask] [longer-prefixes]] | [protocol [process-id]] | [list access-list-number | access-list-name]

Example:

Router# show ip route nn.nn.nn.nn

Example:

Router# show ip route

Displays the current state of the routing table.

Use the show ip route command with the ip-address argument to verify that CE1 has a route to CE2.

Use the show ip route command to verify the routes learned by CE1. Make sure that the route for CE2 is listed.

Step 3 

disable

Example:

Router# disable

Exits to user EXEC mode.


Verify that PE1 Has Network Layer Reachability Information for CE2

Perform this task to verify that router PE1 has NLRI for router CE2.

SUMMARY STEPS

1. enable

2. show ip route vrf vrf-name [connected] [protocol [as-number] [tag] [output-modifiers]] [list number [output-modifiers]] [profile] [static [output-modifiers]] [summary [output-modifiers]] [supernets-only [output-modifiers]] [traffic-engineering [output-modifiers]]

3. show ip bgp vpnv4 {all | rd route-distinguisher | vrf vrf-name} [ip-prefix/length [longer-prefixes] [output-modifiers]] [network-address [mask] [longer-prefixes] [output-modifiers]] [cidr-only] [community] [community-list] [dampened-paths] [filter-list] [flap-statistics] [inconsistent-as] [neighbors] [paths [line]] [peer-group] [quote-regexp] [regexp] [summary] [tags]

4. show ip cef [vrf vrf-name] [network [mask]] [longer-prefixes] [detail]

5. show mpls forwarding-table [{network {mask | length} | labels label [- label] | interface interface | next-hop address | lsp-tunnel [tunnel-id]}] [detail]

6. show ip bgp [network] [network-mask] [longer-prefixes]

7. show ip bgp vpnv4 {all | rd route-distinguisher | vrf vrf-name} [summary] [labels]

8. disable

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables higher privilege levels, such as privileged EXEC mode.

Enter your password if prompted.

Step 2 

show ip route vrf vrf-name [connected] [protocol [as-number] [tag] [output-modifiers]] [list number [output-modifiers]] [profile] [static [output-modifiers]] [summary [output-modifiers]] [supernets-only [output-modifiers]] [traffic-engineering [output-modifiers]]

Example:

Router# show ip route vrf vpn1 nn.nn.nn.nn


(Optional) Displays the IP routing table associated with a VRF.

Use the show ip route vrf command to verify that router PE1 learns routes from router CE2 (nn.nn.nn.nn).

Step 3 

show ip bgp vpnv4 {all | rd route-distinguisher | vrf vrf-name} [ip-prefix/length [longer-prefixes] [output-modifiers]] [network-address [mask] [longer-prefixes] [output-modifiers]] [cidr-only] [community] [community-list] [dampened-paths] [filter-list] [flap-statistics] [inconsistent-as] [neighbors] [paths [line]] [peer-group] [quote-regexp] [regexp] [summary] [tags]

Example:

Router# show ip bgp vpnv4 vrf vpn1 nn.nn.nn.nn

Example:

Router# show ip bgp vpn4 all nn.nn.nn.nn

(Optional) Displays VPN address information from the BGP table.

Use the show ip bgp vpnv4 command with the vrf or all keyword to verify that router PE2 is the BGP next-hop to router CE2.

Step 4 

show ip cef [vrf vrf-name] [network [mask]] [longer-prefixes] [detail]

Example:

Router# show ip cef vrf vpn1 nn.nn.nn.nn

(Optional) Displays entries in the forwarding information base (FIB) or displays a summary of the FIB.

Use the show ip cef command to verify that the Cisco Express Forwarding (CEF) entries are correct.

Step 5 

show mpls forwarding-table [{network {mask | length} | labels label [- label] | interface interface | next-hop address | lsp-tunnel [tunnel-id]}] [detail]

Example:

Router# show mpls forwarding-table

(Optional) Displays the contents of the MPLS forwarding information base (LFIB).

Use the show mpls forwarding-table command to verify the IGP label for the BGP next hop router (AS boundary).

Step 6 

show ip bgp [network] [network-mask] [longer-prefixes]

Example:

Router# show ip bgp ff.ff.ff.ff

(Optional) Displays entries in the BGP routing table.

Use the show ip bgp command to verify the label for the remote egress PE router (PE2).

Step 7 

show ip bgp vpnv4 {all | rd route-distinguisher | vrf vrf-name} [summary] [labels]

Example:

Router# show ip bgp vpnv4 all labels

(Optional) Displays VPN address information from the BGP table.

Use the show ip bgp vpnv4 all summary command to verify the VPN label of CE2, as advertised by PE2.

Step 8 

disable

Example:

Router# disable

(Optional) Exits to user EXEC mode.


Verify that PE2 Has Network Reachability Information for CE2

Perform this task to ensure that PE2 can access CE2.

SUMMARY STEPS

1. enable

2. show ip route vrf vrf-name [connected] [protocol [as-number] [tag] [output-modifiers]] [list number [output-modifiers]] [profile] [static [output-modifiers]] [summary [output-modifiers]] [supernets-only [output-modifiers]] [traffic-engineering [output-modifiers]]

3. show mpls forwarding-table [vrf vpn-name] [{network {mask | length} | labels label [-label] | interface interface | next-hop address | lsp-tunnel [tunnel-id]}] [detail]

4. show ip bgp vpnv4 {all | rd route-distinguisher | vrf vrf-name} [summary] [labels]

5. show ip cef [vrf vrf-name] [network [mask]] [longer-prefixes] [detail]

6. disable

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables higher privilege levels, such as privileged EXEC mode.

Enter your password if prompted.

Step 2 

show ip route vrf vrf-name [connected] [protocol [as-number] [tag] [output-modifiers]] [list number [output-modifiers]] [profile] [static [output-modifiers]] [summary [output-modifiers]] [supernets-only [output-modifiers]] [traffic-engineering [output-modifiers]]

Example:

Router# show ip route vrf vpn1 nn.nn.nn.nn

(Optional) Displays the IP routing table associated with a VRF.

Use the show ip route vrf command to check the VPN routing and forwarding table for CE2. The output provides next hop information.

Step 3 

show mpls forwarding-table [vrf vpn-name] [{network {mask | length} | labels label [-label] | interface interface | next-hop address | lsp-tunnel [tunnel-id]}] [detail]

Example:

Router# show mpls forwarding-table vrf vpn1 nn.nn.nn.nn

(Optional) Displays the contents of the LFIB.

Use the show mpls forwarding-table command with the vrf keyword to check the VPN routing and forwarding table for CE2. The output provides the label for CE2 and the outgoing interface.

Step 4 

show ip bgp vpnv4 {all | rd route-distinguisher | vrf vrf-name} [summary] [labels]

Example:

Router# show ip bgp vpnv4 all labels

(Optional) Displays VPN address information from the BGP table.

Use the show ip bgp vpnv4 command with the all and labels keywords to check the VPN label for CE2 in the multiprotocol BGP table.

Step 5 

show ip cef [vrf vrf-name] [network [mask]] [longer-prefixes] [detail]

Example:

Router# show ip cef <vrf-name> nn.nn.nn.nn

(Optional) Displays entries in the FIB or displays a summary of the FIB.

Use the show ip cef command to check the CEF entry for CE2. The command output shows the local label for CE2 and the outgoing interface.

Step 6 

disable
Example:

Router# disable

(Optional) Exits to user EXEC mode.


Verify the ASBR Configuration

Perform this task to verify that the ASBRs exchange IPv4 routes with MPLS labels or IPv4 routes without labels as prescribed by a route map.

SUMMARY STEPS

1. enable

2. show ip bgp [network] [network-mask] [longer-prefixes]

3. show ip cef [vrf vrf-name] [network [mask]] [longer-prefixes] [detail]

4. disable

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables higher privilege levels, such as privileged EXEC mode.

Enter your password if prompted.

Step 2 

show ip bgp [network] [network-mask] [longer-prefixes]

Example:

Router# show ip bgp ff.ff.ff.ff

Example:

Router# show ip bgp bb.bb.bb.bb


(Optional) Displays entries in the BGP routing table.

Use the show ip bgp command to check that—

ASBR1 receives an MPLS label for PE2 from ASBR2.

ASBR1 received from ASBR2 IPv4 routes for RR2 without labels. If the command output does not display MPLS label information, the route was received without an MPLS label.

ASBR2 distributes an MPLS label for PE2 to ASBR1.

ASBR2 does not distribute a label for RR2 to ASBR1.

Step 3 

show ip cef [vrf vrf-name] [network [mask]] [longer-prefixes] [detail]

Example:

Router# show ip cef ff.ff.ff.ff

Example:

Router# show ip cef bb.bb.bb.bb

(Optional) Displays entries in the FIB or displays a summary of the FIB.

Use the show ip cef command from ASBR1 and ASBR2 to check that—

The CEF entry for PE2 is correct.

The CEF entry for RR2 is correct.

Step 4 

disable
Example:
Router# disable

(Optional) Exits to user EXEC mode.


Configuration Examples for MPLS VPN—Inter-AS—IPv4 BGP Label Distribution

Configuration examples for MPLS VPNM—Inter-AS—IPv4 BGP Label Distribution feature include the following:

Configuring Inter-AS Using BGP to Distribute Routes and MPLS Labels Over an MPLS VPN Service Provider Example

Configuring Inter-AS Using BGP to Distribute Routes and MPLS Labels Over a Non MPLS VPN Service Provider Example

Configuring Inter-AS Using BGP to Distribute Routes and MPLS Labels Over an MPLS VPN Service Provider Example

Configuration examples for Inter-AS using BGP to distribute routes and MPLS labels over an MPLS VPN service provider included in this section are as follows:

Route Reflector 1 Configuration Example (MPLS VPN Service Provider)

ASBR1 Configuration Example (MPLS VPN Service Provider)

Route Reflector 2 Configuration Example (MPLS VPN Service Provider)

ASBR2 Configuration Example (MPLS VPN Service Provider)

Figure 4 shows two MPLS VPN service providers. The service provider distributes the VPNv4 routes between the route reflectors. They distribute the IPv4 routes with MPLS labels between the ASBRs.

The configuration example shows the two techniques you can use to distribute the VPNv4 routes and the IPv4 routes with MPLS labels of the remote RRs and PEs to the local RRs and PEs:

AS 100 uses the RRs to distribute the VPNv4 routes learned from the remote RRs. The RRs also distribute the remote PE address and label learned from ASBR1 using IPv4 + labels.

In AS 200, the IPv4 routes that ASBR2 learned are redistributed into IGP.

Figure 4 Distributing IPv4 Routes and MPLS Labels Between MPLS VPN Service Providers

Route Reflector 1 Configuration Example (MPLS VPN Service Provider)

The configuration example for RR1 specifies the following:

RR1 exchanges VPNv4 routes with RR2 using multiprotocol, multihop EBGP.

The VPNv4 next hop information and the VPN label are preserved across the autonomous systems.

RR1 reflects to PE1:

The VPNv4 routes learned from RR2

The IPv4 routes and MPLS labels learned from ASBR1

ip subnet-zero
ip cef
!
interface Loopback0
 ip address aa.aa.aa.aa 255.255.255.255
 no ip directed-broadcast
!
interface Serial1/2
 ip address dd.0.0.2 255.0.0.0
 no ip directed-broadcast
 clockrate 124061
!   
router ospf 10
 log-adjacency-changes
 auto-cost reference-bandwidth 1000
 network aa.aa.aa.aa 0.0.0.0 area 100
 network dd.0.0.0 0.255.255.255 area 100
!
router bgp 100
 bgp cluster-id 1
 bgp log-neighbor-changes
 timers bgp 10 30
 neighbor ee.ee.ee.ee remote-as 100
 neighbor ee.ee.ee.ee update-source Loopback0
 neighbor ww.ww.ww.ww remote-as 100
 neighbor ww.ww.ww.ww update-source Loopback0
 neighbor bb.bb.bb.bb remote-as 200
 neighbor bb.bb.bb.bb ebgp-multihop 255
 neighbor bb.bb.bb.bb update-source Loopback0
 no auto-summary
 !
address-family ipv4
 neighbor ee.ee.ee.ee activate
 neighbor ee.ee.ee.ee route-reflector-client                !IPv4+labels session to PE1
 neighbor ee.ee.ee.ee send-label
 neighbor ww.ww.ww.ww activate
 neighbor ww.ww.ww.ww route-reflector-client                !IPv4+labels session to ASBR1
 neighbor ww.ww.ww.ww send-label
 no neighbor bb.bb.bb.bb activate
 no auto-summary
 no synchronization
 exit-address-family
 !
 address-family vpnv4
 neighbor ee.ee.ee.ee activate
 neighbor ee.ee.ee.ee route-reflector-client                !VPNv4 session with PE1
 neighbor ee.ee.ee.ee send-community extended
 neighbor bb.bb.bb.bb activate             
 neighbor bb.bb.bb.bb next-hop-unchanged                    !MH-VPNv4 session with RR2
 neighbor bb.bb.bb.bb send-community extended                 with next hop unchanged     
 exit-address-family
!
ip default-gateway 3.3.0.1
no ip classless
!
snmp-server engineID local 00000009020000D0584B25C0
snmp-server community public RO
snmp-server community write RW
no snmp-server ifindex persist
snmp-server packetsize 2048
!
end

ASBR1 Configuration Example (MPLS VPN Service Provider)

ASBR1 exchanges IPv4 routes and MPLS labels with ASBR2.

In this example, ASBR1 uses route maps to filter routes.

A route map called OUT specifies that ASBR1 should distribute the PE1 route (ee.ee) with labels and the RR1 route (aa.aa) without labels.

A route map called IN specifies that ASBR1 should accept the PE2 route (ff.ff) with labels and the RR2 route (bb.bb) without labels.


ip subnet-zero
mpls label protocol tdp
!
interface Loopback0
 ip address ww.ww.ww.ww 255.255.255.255
 no ip directed-broadcast
 no ip route-cache
 no ip mroute-cache
!
interface Ethernet0/2
 ip address hh.0.0.2 255.0.0.0
 no ip directed-broadcast
 no ip mroute-cache
!
interface Ethernet0/3
 ip address dd.0.0.1 255.0.0.0
 no ip directed-broadcast
 no ip mroute-cache
 mpls label protocol ldp
 tag-switching ip
!
router ospf 10
 log-adjacency-changes
 auto-cost reference-bandwidth 1000
 redistribute connected subnets
 passive-interface Ethernet0/2
 network ww.ww.ww.ww 0.0.0.0 area 100
 network dd.0.0.0 0.255.255.255 area 100
 
router bgp 100
 bgp log-neighbor-changes
 timers bgp 10 30
 neighbor aa.aa.aa.aa remote-as 100
 neighbor aa.aa.aa.aa update-source Loopback0
 neighbor hh.0.0.1 remote-as 200
 no auto-summary
 !
!
address-family ipv4                      ! Redistributing IGP into BGP 
redistribute ospf 10                     ! so that PE1 & RR1 loopbacks 
neighbor aa.aa.aa.aa activate            ! get into the BGP table
neighbor aa.aa.aa.aa send-label
neighbor hh.0.0.1 activate
neighbor hh.0.0.1 advertisement-interval 5
neighbor hh.0.0.1 send-label
neighbor hh.0.0.1 route-map IN in        ! accepting routes specified in route map IN.
neighbor hh.0.0.1 route-map OUT out      ! distributing routes specified in route map OUT. 
no auto-summary
no synchronization
exit-address-family
!
ip default-gateway 3.3.0.1
ip classless
!
access-list 1 permit ee.ee.ee.ee log                !Setting up the access lists.
access-list 2 permit ff.ff.ff.ff log
access-list 3 permit aa.aa.aa.aa log
access-list 4 permit bb.bb.bb.bb log

route-map IN permit 10                              !Setting up the route maps.
 match ip address 2
 match mpls-label
!
route-map IN permit 11
 match ip address 4
!
route-map OUT permit 12
 match ip address 3
!
route-map OUT permit 13
 match ip address 1
 set mpls-label
!
end

Route Reflector 2 Configuration Example (MPLS VPN Service Provider)

RR2 exchanges VPNv4 routes with RR1 through multihop, multiprotocol EBGP. This configuration also specifies that the next hop information and the VPN label are preserved across the autonomous systems.

ip subnet-zero
ip cef
!
interface Loopback0
 ip address bb.bb.bb.bb 255.255.255.255
 no ip directed-broadcast
!
interface Serial1/1
 ip address ii.0.0.2 255.0.0.0
 no ip directed-broadcast
 no ip mroute-cache
!
router ospf 20
 log-adjacency-changes
 network bb.bb.bb.bb 0.0.0.0 area 200
 network ii.0.0.0 0.255.255.255 area 200
!
router bgp 200
 bgp cluster-id 1
 bgp log-neighbor-changes
 timers bgp 10 30
 neighbor aa.aa.aa.aa remote-as 100
 neighbor aa.aa.aa.aa ebgp-multihop 255
 neighbor aa.aa.aa.aa update-source Loopback0
 neighbor ff.ff.ff.ff remote-as 200
 neighbor ff.ff.ff.ff update-source Loopback0
 no auto-summary
 !
 address-family vpnv4
 neighbor aa.aa.aa.aa activate
 neighbor aa.aa.aa.aa next-hop-unchanged              !Multihop VPNv4 session with RR1 
 neighbor aa.aa.aa.aa send-community extended              with next-hop-unchanged
 neighbor ff.ff.ff.ff activate
 neighbor ff.ff.ff.ff route-reflector-client          !VPNv4 session with PE2
 neighbor ff.ff.ff.ff send-community extended
 exit-address-family
!
ip default-gateway 3.3.0.1
no ip classless
!
end

ASBR2 Configuration Example (MPLS VPN Service Provider)

ASBR2 exchanges IPv4 routes and MPLS labels with ASBR1. However, in contrast to ASBR1, ASBR2 does not use the RR to reflect IPv4 routes and MPLS labels to PE2. ASBR2 redistributes the IPv4 routes and MPLS labels learned from ASBR1 into IGP. PE2 can now reach these prefixes.

ip subnet-zero
ip cef
!
mpls label protocol tdp
!
interface Loopback0
 ip address xx.xx.xx.xx 255.255.255.255
 no ip directed-broadcast
!
interface Ethernet1/0
 ip address hh.0.0.1 255.0.0.0
 no ip directed-broadcast
 no ip mroute-cache
!
interface Ethernet1/2
 ip address jj.0.0.1 255.0.0.0
 no ip directed-broadcast
 no ip mroute-cache
 mpls label protocol tdp
 tag-switching ip
 !
router ospf 20
 log-adjacency-changes
 auto-cost reference-bandwidth 1000
 redistribute connected subnets
 redistribute bgp 200 subnets           ! redistributing the routes learned from 
 passive-interface Ethernet1/0                ASBR1(EBGP+labels session) into IGP 
 network xx.xx.xx.xx 0.0.0.0 area 200         so that PE2 will learn them  
 network jj..0.0 0.255.255.255 area 200
 !
router bgp 200
 bgp log-neighbor-changes
 timers bgp 10 30
 neighbor bb.bb.bb.bb remote-as 200
 neighbor bb.bb.bb.bb update-source Loopback0
 neighbor hh.0.0.2 remote-as 100
 no auto-summary
 !
address-family ipv4
 redistribute ospf 20                         ! Redistributing IGP into BGP  
 neighbor hh.0.0.2 activate                   ! so that PE2 & RR2 loopbacks
 neighbor hh.0.0.2 advertisement-interval 5   ! will get into the BGP-4 table.
 neighbor hh.0.0.2 route-map IN in 
 neighbor hh.0.0.2 route-map OUT out
 neighbor hh.0.0.2 send-label
 no auto-summary
 no synchronization
 exit-address-family
 ! 
 address-family vpnv4
 neighbor bb.bb.bb.bb activate
 neighbor bb.bb.bb.bb send-community extended
 exit-address-family
 !
ip default-gateway 3.3.0.1
ip classless
!
access-list 1 permit ff.ff.ff.ff log          !Setting up the access lists.
access-list 2 permit ee.ee.ee.ee log
access-list 3 permit bb.bb.bb.bb log
access-list 4 permit aa.aa.aa.aa log

route-map IN permit 11                       !Setting up the route maps. 
 match ip address 2
 match mpls-label
!
route-map IN permit 12
 match ip address 4
!
route-map OUT permit 10
 match ip address 1
 set mpls-label
!
route-map OUT permit 13
 match ip address 3
end

Configuring Inter-AS Using BGP to Distribute Routes and MPLS Labels Over a Non MPLS VPN Service Provider Example

Configuration examples for Inter-AS using BGP to distribute routes and MPLS labels over a non MPLS VPN service provider included in this section are as follows:

Route Reflector 1 Configuration Example (Non MPLS VPN Service Provider)

ASBR1 Configuration Example (Non MPLS VPN Service Provider)

Route Reflector 2 Configuration Example (Non MPLS VPN Service Provider)

ASBR2 Configuration Example (Non MPLS VPN Service Provider)

ASBR3 Configuration Example (Non MPLS VPN Service Provider)

Route Reflector 3 Configuration Example (Non MPLS VPN Service Provider)

ASBR4 Configuration Example (Non MPLS VPN Service Provider)

Figure 5 shows two MPLS VPN service providers that are connected through a non MPLS VPN service provider. The autonomous system in the middle of the network is configured as a backbone autonomous system that uses Label Distribution Protocol (LDP) or Tag Distribution Protocol (TDP) to distribute MPLS labels. You can also use traffic engineering tunnels instead of TDP or LDP to build the LSP across the non MPLS VPN service provider.

Figure 5 Distributing Routes and MPLS Labels Over a Non MPLS VPN Service Provider

Route Reflector 1 Configuration Example (Non MPLS VPN Service Provider)

The configuration example for RR1 specifies the following:

RR1 exchanges VPNv4 routes with RR2 using multiprotocol, multihop EBGP.

The VPNv4 next hop information and the VPN label are preserved across the autonomous systems.

RR1 reflects to PE1:

The VPNv4 routes learned from RR2

The IPv4 routes and MPLS labels learned from ASBR1

ip subnet-zero
ip cef
!
interface Loopback0
 ip address aa.aa.aa.aa 255.255.255.255
 no ip directed-broadcast
!
interface Serial1/2
 ip address dd.0.0.2 255.0.0.0
 no ip directed-broadcast
 clockrate 124061
!   
router ospf 10
 log-adjacency-changes
 auto-cost reference-bandwidth 1000
 network aa.aa.aa.aa 0.0.0.0 area 100
 network dd.dd.0.0.0 0.255.255.255 area 100
!
router bgp 100
 bgp cluster-id 1
 bgp log-neighbor-changes
 timers bgp 10 30
 neighbor ee.ee.ee.ee remote-as 100
 neighbor ee.ee.ee.ee update-source Loopback0
 neighbor ww.ww.ww.ww remote-as 100
 neighbor ww.ww.ww.ww update-source Loopback0
 neighbor bb.bb.bb.bb remote-as 200
 neighbor bb.bb.bb.bb ebgp-multihop 255
 neighbor bb.bb.bb.bb update-source Loopback0
 no auto-summary
 !
address-family ipv4
 neighbor ee.ee.ee.ee activate
 neighbor ee.ee.ee.ee route-reflector-client                !IPv4+labels session to PE1
 neighbor ee.ee.ee.ee send-label
 neighbor ww.ww.ww.ww activate
 neighbor ww.ww.ww.ww route-reflector-client                !IPv4+labels session to ASBR1
 neighbor ww.ww.ww.ww send-label
 no neighbor bb.bb.bb.bb activate
 no auto-summary
 no synchronization
 exit-address-family
 !
 address-family vpnv4
 neighbor ee.ee.ee.ee activate
 neighbor ee.ee.ee.ee route-reflector-client               !VPNv4 session with PE1
 neighbor ee.ee.ee.ee send-community extended
 neighbor bb.bb.bb.bb activate             
 neighbor bb.bb.bb.bb next-hop-unchanged                    !MH-VPNv4 session with RR2
 neighbor bb.bb.bb.bb send-community extended                 with next-hop-unchanged     
 exit-address-family
!
ip default-gateway 3.3.0.1
no ip classless
!
snmp-server engineID local 00000009020000D0584B25C0
snmp-server community public RO
snmp-server community write RW
no snmp-server ifindex persist
snmp-server packetsize 2048
!
end

ASBR1 Configuration Example (Non MPLS VPN Service Provider)

ASBR1 exchanges IPv4 routes and MPLS labels with ASBR2.

In this example, ASBR1 uses route maps to filter routes.

A route map called OUT specifies that ASBR1 should distribute the PE1 route (ee.ee) with labels and the RR1 route (aa.aa) without labels.

A route map called IN specifies that ASBR1 should accept the PE2 route (ff.ff) with labels and the RR2 route (bb.bb) without labels.

ip subnet-zero
ip cef distributed
mpls label protocol tdp
!
interface Loopback0
 ip address ww.ww.ww.ww 255.255.255.255
 no ip directed-broadcast
 no ip route-cache
 no ip mroute-cache
!
interface Serial3/0/0
 ip address kk.0.0.2 255.0.0.0
 no ip directed-broadcast
 ip route-cache distributed
!
interface Ethernet0/3
 ip address dd.0.0.1 255.0.0.0
 no ip directed-broadcast
 no ip mroute-cache
 mpls label protocol ldp
 tag-switching ip
!
router ospf 10
 log-adjacency-changes
 auto-cost reference-bandwidth 1000
 redistribute connected subnets
 passive-interface Serial3/0/0
 network ww.ww.ww.ww 0.0.0.0 area 100
 network dd.0.0.0 0.255.255.255 area 100
 
router bgp 100
 bgp log-neighbor-changes
 timers bgp 10 30
 neighbor aa.aa.aa.aa remote-as 100
 neighbor aa.aa.aa.aa update-source Loopback0
 neighbor kk.0.0.1 remote-as 200
 no auto-summary
!
 address-family ipv4
 redistribute ospf 10                      ! Redistributing IGP into BGP  
 neighbor aa.aa.aa.aa activate             ! so that PE1 & RR1 loopbacks
 neighbor aa.aa.aa.aa send-label           ! get into BGP table
 neighbor kk.0.0.1 activate
 neighbor kk.0.0.1 advertisement-interval 5
 neighbor kk.0.0.1 send-label
 neighbor kk.0.0.1 route-map IN in    ! Accepting routes specified in route map IN
 neighbor kk.0.0.1 route-map OUT out  ! Distributing routes specified in route map OUT
 no auto-summary
 no synchronization
 exit-address-family
!
ip default-gateway 3.3.0.1
ip classless
!
access-list 1 permit ee.ee.ee.ee log
access-list 2 permit ff.ff.ff.ff log
access-list 3 permit aa.aa.aa.aa log
access-list 4 permit bb.bb.bb.bb log
!
route-map IN permit 10
 match ip address 2
 match mpls-label
!
route-map IN permit 11
 match ip address 4
!
route-map OUT permit 12
 match ip address 3
!
route-map OUT permit 13
 match ip address 1
 set mpls-label
!
end

Route Reflector 2 Configuration Example (Non MPLS VPN Service Provider)

RR2 exchanges VPNv4 routes with RR1 using multihop, multiprotocol EBGP. This configuration also specifies that the next hop information and the VPN label are preserved across the autonomous systems.

ip subnet-zero
ip cef
! 
interface Loopback0
 ip address bb.bb.bb.bb 255.255.255.255
 no ip directed-broadcast
!
interface Serial1/1
 ip address ii.0.0.2 255.0.0.0
 no ip directed-broadcast
 no ip mroute-cache
!
router ospf 20
 log-adjacency-changes
 network bb.bb.bb.bb 0.0.0.0 area 200
 network ii.0.0.0 0.255.255.255 area 200
!
router bgp 200
 bgp cluster-id 1
 bgp log-neighbor-changes
 timers bgp 10 30
 neighbor aa.aa.aa.aa remote-as 100
 neighbor aa.aa.aa.aa ebgp-multihop 255
 neighbor aa.aa.aa.aa update-source Loopback0
 neighbor ff.ff.ff.ff remote-as 200
 neighbor ff.ff.ff.ff update-source Loopback0
 no auto-summary
 !
 address-family vpnv4
 neighbor aa.aa.aa.aa activate
 neighbor aa.aa.aa.aa next-hop-unchanged              !MH Vpnv4 session with RR1 
 neighbor aa.aa.aa.aa send-community extended              with next-hop-unchanged
 neighbor ff.ff.ff.ff activate
 neighbor ff.ff.ff.ff route-reflector-client          !Vpnv4 session with PE2
 neighbor ff.ff.ff.ff send-community extended
 exit-address-family
!
ip default-gateway 3.3.0.1
no ip classless
!
end

ASBR2 Configuration Example (Non MPLS VPN Service Provider)

ASBR2 exchanges IPv4 routes and MPLS labels with ASBR1. However, in contrast to ASBR1, ASBR2 does not use the RR to reflect IPv4 routes and MPLS labels to PE2. ASBR2 redistributes the IPv4 routes and MPLS labels learned from ASBR1 into IGP. PE2 can now reach these prefixes.

ip subnet-zero
ip cef
!
mpls label protocol tdp
!
interface Loopback0
 ip address xx.xx.xx.xx 255.255.255.255
 no ip directed-broadcast
!
interface Ethernet0/1
 ip address qq.0.0.2 255.0.0.0
 no ip directed-broadcast
!
interface Ethernet1/2
 ip address jj.0.0.1 255.0.0.0
 no ip directed-broadcast
 no ip mroute-cache
 mpls label protocol tdp
 tag-switching ip
 !
router ospf 20
 log-adjacency-changes
 auto-cost reference-bandwidth 1000
 redistribute connected subnets
 redistribute bgp 200 subnets            !redistributing the routes learned from 
 passive-interface Ethernet0/1                ASBR2 (EBGP+labels session) into IGP 
 network xx.xx.xx.xx 0.0.0.0 area 200         so that PE2 will learn them  
 network jj.0.0.0 0.255.255.255 area 200
 !
router bgp 200
 bgp log-neighbor-changes
 timers bgp 10 30
 neighbor bb.bb.bb.bb remote-as 200
 neighbor bb.bb.bb.bb update-source Loopback0
 neighbor qq.0.0.1 remote-as 100
 no auto-summary
! 
address-family ipv4                          ! Redistributing IGP into BGP                                                                                 
redistribute ospf 20                         ! so that PE2 & RR2 loopbacks
 neighbor qq.0.0.1 activate                  !  will get into the BGP-4 table
 neighbor qq.0.0.1 advertisement-interval 5
 neighbor qq.0.0.1 route-map IN in
 neighbor qq.0.0.1 route-map OUT out
 neighbor qq.0.0.1 send-label
 no auto-summary
 no synchronization
 exit-address-family
 ! 
address-family vpnv4
 neighbor bb.bb.bb.bb activate
 neighbor bb.bb.bb.bb send-community extended
 exit-address-family
 !
ip default-gateway 3.3.0.1
ip classless
!
access-list 1 permit ff.ff.ff.ff log
access-list 2 permit ee.ee.ee.ee log
access-list 3 permit bb.bb.bb.bb log
access-list 4 permit aa.aa.aa.aa log
!
route-map IN permit 11
 match ip address 2
 match mpls-label
!
route-map IN permit 12
 match ip address 4
!
route-map OUT permit 10
 match ip address 1
 set mpls-label
!
route-map OUT permit 13
 match ip address 3
!
end

ASBR3 Configuration Example (Non MPLS VPN Service Provider)

ASBR3 belongs to a non MPLS VPN service provider. ASBR3 exchanges IPv4 routes and MPLS labels with ASBR1. ASBR3 also passes the routes learned from ASBR1 to ASBR3 through RR3.


Note Do not redistribute EBGP routes learned into IBG if you are using IBGP to distribute the routes and labels. This is not a supported configuration.


ip subnet-zero
ip cef
!
interface Loopback0
 ip address yy.yy.yy.yy 255.255.255.255
 no ip directed-broadcast
 no ip route-cache
 no ip mroute-cache
!
interface Hssi4/0
 ip address mm.0.0.0.1 255.0.0.0
 no ip directed-broadcast
 no ip mroute-cache
 tag-switching ip
 hssi internal-clock
 !
interface Serial5/0
 ip address kk.0.0.1 255.0.0.0
 no ip directed-broadcast
 no ip mroute-cache
 load-interval 30
 clockrate 124061
!
router ospf 30
log-adjacency-changes
auto-cost reference-bandwidth 1000
redistribute connected subnets
network yy.yy.yy.yy 0.0.0.0 area 300 
network mm.0.0.0 0.255.255.255 area 300 
!
router bgp 300
 bgp log-neighbor-changes
 timers bgp 10 30
 neighbor cc.cc.cc.cc remote-as 300
 neighbor cc.cc.cc.cc update-source Loopback0
 neighbor kk.0.0.2 remote-as 100
 no auto-summary
 !
 address-family ipv4
 neighbor cc.cc.cc.cc activate            ! IBGP+labels session with RR3
 neighbor cc.cc.cc.cc send-label
 neighbor kk.0.0.2 activate               ! EBGP+labels session with ASBR1
 neighbor kk.0.0.2 advertisement-interval 5
 neighbor kk.0.0.2 send-label
neighbor kk.0.0.2 route-map IN in 
neighbor kk.0.0.2 route-map OUT out 
no auto-summary
 no synchronization
 exit-address-family
!
ip classless 
! 
access-list 1 permit ee.ee.ee.ee log 
access-list 2 permit ff.ff.ff.ff log 
access-list 3 permit aa.aa.aa.aa log 
access-list 4 permit bb.bb.bb.bb log 
! 
route-map IN permit 10 
 match ip address 1 
  match mpls-label 
! 
route-map IN permit 11 
   match ip address 3 
! 
route-map OUT permit 12 
 match ip address 2 
  set mpls-label 
! 
route-map OUT permit 13 
   match ip address 4 
! 
ip default-gateway 3.3.0.1
ip classless
!
end

Route Reflector 3 Configuration Example (Non MPLS VPN Service Provider)

RR3 is a non MPLS VPN RR that reflects IPv4 routes with MPLS labels to ASBR3 and ASBR4.

ip subnet-zero
mpls label protocol tdp
mpls traffic-eng auto-bw timers
no tag-switching ip
!
interface Loopback0
 ip address cc.cc.cc.cc 255.255.255.255
 no ip directed-broadcast
!
interface POS0/2
 ip address pp.0.0.1 255.0.0.0
 no ip directed-broadcast
 no ip route-cache cef
 no ip route-cache
 no ip mroute-cache
 crc 16
 clock source internal
!
router ospf 30
 log-adjacency-changes
 network cc.cc.cc.cc 0.0.0.0 area 300
 network pp.0.0.0 0.255.255.255 area 300
!
router bgp 300
 bgp log-neighbor-changes
 neighbor zz.zz.zz.zz remote-as 300
 neighbor zz.zz.zz.zz update-source Loopback0
 neighbor yy.yy.yy.yy remote-as 300
 neighbor yy.yy.yy.yy update-source Loopback0
 no auto-summary
 !
address-family ipv4
 neighbor zz.zz.zz.zz activate
 neighbor zz.zz.zz.zz route-reflector-client   
 neighbor zz.zz.zz.zz send-label               ! IBGP+labels session with ASBR3 
 neighbor yy.yy.yy.yy activate                 
 neighbor yy.yy.yy.yy route-reflector-client
 neighbor yy.yy.yy.yy send-label               ! IBGP+labels session with ASBR4
 no auto-summary
 no synchronization
 exit-address-family
!
ip default-gateway 3.3.0.1
ip classless
!
end 

ASBR4 Configuration Example (Non MPLS VPN Service Provider)

ASBR4 belongs to a non MPLS VPN service provider. ASBR4 and ASBR3 exchange IPv4 routes and MPLS labels by means of RR3.


Note Do not redistribute EBGP routes learned into IBG if you are using IBGP to distribute the routes and labels. This is not a supported configuration.


ip subnet-zero
ip cef distributed
!
interface Loopback0
 ip address zz.zz.zz.zz 255.255.255.255
 no ip directed-broadcast
 no ip route-cache
 no ip mroute-cache
!
interface Ethernet0/2
 ip address qq.0.0.1 255.0.0.0
 no ip directed-broadcast
 no ip mroute-cache
!
interface POS1/1/0
 ip address pp.0.0.2 255.0.0.0
 no ip directed-broadcast
 ip route-cache distributed
 !
interface Hssi2/1/1
 ip address mm.0.0.2 255.0.0.0
 no ip directed-broadcast
 ip route-cache distributed
 no ip mroute-cache
 mpls label protocol tdp
 tag-switching ip
 hssi internal-clock
!
router ospf 30
 log-adjacency-changes
 auto-cost reference-bandwidth 1000
 redistribute connected subnets
passive-interface Ethernet0/2
 network zz.zz.zz.zz 0.0.0.0 area 300
 network pp.0.0.0 0.255.255.255 area 300
 network mm.0.0.0 0.255.255.255 area 300
 !
router bgp 300
 bgp log-neighbor-changes
 timers bgp 10 30
 neighbor cc.cc.cc.cc remote-as 300
 neighbor cc.cc.cc.cc update-source Loopback0
 neighbor qq.0.0.2 remote-as 200
 no auto-summary
 !
 address-family ipv4
 neighbor cc.cc.cc.cc activate
 neighbor cc.cc.cc.cc send-label
 neighbor qq.0.0.2 activate
 neighbor qq.0.0.2 advertisement-interval 5
 neighbor qq.0.0.2 send-label
 neighbor qq.0.0.2 route-map IN in 
 neighbor qq.0.0.2 route-map OUT out 
no auto-summary
 no synchronization
 exit-address-family
!
ip classless 
! 
access-list 1 permit ff.ff.ff.ff log 
access-list 2 permit ee.ee.ee.ee log 
access-list 3 permit bb.bb.bb.bb log 
access-list 4 permit aa.aa.aa.aa log 
! 
route-map IN permit 10 
 match ip address 1 
  match mpls-label 
! 
route-map IN permit 11 
   match ip address 3 
! 
route-map OUT permit 12 
 match ip address 2 
  set mpls-label 
! 
route-map OUT permit 13 
   match ip address 4 
!
ip default-gateway 3.3.0.1
ip classless
!
end

Additional References

For additional information related to the MPLS VPN—Inter-AS IPv4 BGP Label Distribution feature, refer to the following references:

Related Documents

Standards

MIBs

RFCs

Technical Assistance

Related Documents

Related Topic
Document Title

MPLS VPN Interautonomous systems configuration tasks

MPLS VPN—Interautonomous System Support

Virtual Private Network (VPN) configuration tasks

MPLS Virtual Private Networks (VPNs)

An explanation of how Border Gateway Protocol (BGP) works and how you can use it to participate in routing with other networks that run BGP

Using the Border Gateway Protocol for Interdomain Routing

Border Gateway Protocol (BGP) configuration tasks

"Configuring BGP" chapter in the Cisco IOS IP Configuration Guide, Release 12.2

An explanation of the purpose of the Border Gateway Protocol and the BGP route selection process, and how to use BGP attributes in route selection

"Border Gateway Protocol" chapter in the Internetworking Technology Overview

Multiprotocol Label Switching (MPLS) configuration tasks

"Configuring Multiprotocol Label Switching" chapter in the Cisco IOS Switching Services Configuration Guide, Release 12.2

Commands to configure and monitor BGP

"BGP Commands" chapter in the Cisco IOS IP Command Reference, Volume 2 of 3: Routing Protocols, Release 12.2


Standards

Standards
Title

No new or modified standards are supported by this feature.


MIBs

MIBs 1
MIBs Link

No new or modified MIBs are supported by this feature.

To obtain lists of supported MIBs by platform and Cisco IOS release, and to download MIB modules, go to the Cisco MIB website on Cisco.com at the following URL:

http://www.cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml

1 Not all supported MIBs are listed.


To locate and download MIBs for selected platforms, Cisco IOS releases, and feature sets, use Cisco MIB Locator found at the following URL:

http://tools.cisco.com/ITDIT/MIBS/servlet/index

If Cisco  MIB Locator does not support the MIB information that you need, you can also obtain a list of supported MIBs and download MIBs from the Cisco  MIBs page at the following URL:

http://www.cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml

To access Cisco MIB Locator, you must have an account on Cisco.com. If you have forgotten or lost your account information, send a blank e-mail to cco-locksmith@cisco.com. An automatic check will verify that your e-mail address is registered with Cisco.com. If the check is successful, account details with a new random password will be e-mailed to you. Qualified users can establish an account on Cisco.com by following the directions found at this URL:

http://www.cisco.com/register

RFCs

RFCs 1
Title

RFC 3107

Carrying Label Information in BGP-4

RFC 2858

Multiprotocol Extensions for BGP-4

RFC 1700

Assigned Numbers

RFC 2842

Capabilities Advertisement with BGP-4

RFC 1966

BGP Route Reflection: An Alternative to Full Mesh IBGP

1 Not all supported RFCs are listed.


Technical Assistance

Description
Link

Technical Assistance Center (TAC) home page, containing 30,000 pages of searchable technical content, including links to products, technologies, solutions, technical tips, tools, and lots more. Registered Cisco.com users can log in from this page to access even more content.

http://www.cisco.com/public/support/tac/home.shtml


Command Reference

This section documents new or modified commands. All other commands used with this feature are documented in the Cisco IOS Release 12.2 command reference publications.

New Commands

match mpls-label

neighbor send-label

set mpls-label

show ip bgp labels

Modified Commands

debug ip bgp

show ip bgp

show ip bgp neighbors

show ip bgp vpnv4

show route-map

debug ip bgp

To display information related to processing of the Border Gateway Protocol (BGP), use the debug ip bgp command in privileged EXEC mode. To disable the display of BGP information, use the no form of this command.

debug ip bgp [A.B.C.D. | dampening | events | in | keepalives | out | updates | vpnv4 | mpls]

no debug ip bgp [A.B.C.D. | dampening | events | in | keepalives | out | updates | vpnv4 | mpls]

Syntax Description

A.B.C.D.

(Optional) Displays the BGP neighbor IP address.

dampening

(Optional) Displays BGP dampening.

events

(Optional) Displays BGP events.

in

(Optional) Displays BGP inbound information.

keepalives

(Optional) Displays BGP keepalives.

out

(Optional) Displays BGP outbound information.

updates

(Optional) Displays BGP updates.

vpnv4

(Optional) Displays VPNv4 NLRI information.

mpls

(Optional) Displays the MPLS information.


Command Modes

Privileged EXEC

Command History

Release
Modification

12.0(5)T

This command was introduced.

12.0(21)ST

This command was integrated into Cisco IOS Release 12.0(21)ST. Support for the mpls keyword was added.

12.0(22)S

This command was integrated into Cisco IOS Release 12.0(22)S.

12.0(23)S

This command was integrated into Cisco IOS Release 12.0(23)S.

12.2(13)T

This command was integrated into Cisco IOS Release 12.2(13)T.

12.2(14)S

This command was integrated into Cisco IOS Release 12.2(14)S.


Examples

The following example displays the output from this command:

Router# debug ip bgp vpnv4 

03:47:14:vpn:bgp_vpnv4_bnetinit:100:2:58.0.0.0/8
03:47:14:vpn:bnettable add:100:2:58.0.0.0 / 8
03:47:14:vpn:bestpath_hook route_tag_change for vpn2:58.0.0.0/255.0.0.0(ok)
03:47:14:vpn:bgp_vpnv4_bnetinit:100:2:57.0.0.0/8
03:47:14:vpn:bnettable add:100:2:57.0.0.0 / 8
03:47:14:vpn:bestpath_hook route_tag_change for vpn2:57.0.0.0/255.0.0.0(ok)
03:47:14:vpn:bgp_vpnv4_bnetinit:100:2:14.0.0.0/8
03:47:14:vpn:bnettable add:100:2:14.0.0.0 / 8
03:47:14:vpn:bestpath_hook route_tag_chacle ip bgp *nge for vpn2:14.0.0.0/255.0.0.0(ok)

match mpls-label

To redistribute routes that include Multiprotocol Label Switching (MPLS) labels if the routes meet the conditions specified in the route map, use the match mpls-label command in route map configuration mode. To disable this function, use the no form of this command.

match mpls-label

no match mpls-label

Syntax Description

This command has no arguments or keywords.

Defaults

This command has no default behavior or values.

Command Modes

Route map configuration

Command History

Release
Modification

12.0(21)ST

This command was introduced.

12.0(22)S

This command was integrated into Cisco IOS Release 12.0(22)S.

12.0(23)S

This command was integrated into Cisco IOS Release 12.0(23)S.

12.2(13)T

This command was integrated into Cisco IOS Release 12.2(13)T.

12.2(14)S

This command was integrated into Cisco IOS Release 12.2(14)S.


Usage Guidelines

A route map that includes this command can be used in the following instances:

With the neighbor route-map in command to manage inbound route maps in BGP

With the redistribute bgp command to redistribute route maps in an IGP

Use the route-map global configuration command, and the match and set route map configuration commands, to define the conditions for redistributing routes from one routing protocol into another. Each route-map command has a list of match and set commands associated with it. The match commands specify the match criteria—the conditions under which redistribution is allowed for the current route-map command. The set commands specify the set actions—the particular redistribution actions to perform if the criteria enforced by the match commands are met. The no route-map command deletes the route map.

The match route-map configuration command has multiple formats. The match commands can be given in any order, and all match commands must "pass" to cause the route to be redistributed according to the set actions given with the set commands. The no forms of the match commands remove the specified match criteria.

When you are passing routes through a route map, a route map can have several parts. Any route that does not match at least one match clause relating to a route-map command will be ignored; that is, the route will not be advertised for outbound route maps and will not be accepted for inbound route maps. If you want to modify only some data, you must configure a second route map section with an explicit match specified.

Examples

The following example creates a route map that redistributes routes if the following conditions are met:

The IP address of the route matches an IP address in ACL 2.

The route includes an MPLS label.

Router(config-router)# route-map incoming permit 10

Router(config-route-map)# match ip address 2

Router(config-route-map)# match mpls-label

Related Commands

Command
Description

match ip address

Distributes any routes that have a destination network number address that is permitted by a standard or extended access list.

route-map (IP)

Defines the conditions for redistributing routes from one routing protocol into another, or enables policy routing.

set mpls-label

Enables a route to be distributed with an MPLS label if the route matches the conditions specified in the route map.


neighbor send-label

To enable a Border Gateway Protocol (BGP) router to send Multiprotocol Label Switching (MPLS) labels with BGP routes to a neighboring BGP router, use the neighbor send-label command in router configuration mode. To disable the BGP router from sending MPLS labels with BGP routes, use the no form of this command.

neighbor {ip-address} send-label

no neighbor {ip-address} send-label

Syntax Description

ip-address

IP address of the neighboring router.


Defaults

By default, BGP routers distribute only BGP routes.

Command Modes

Router configuration

Command History

Release
Modification

12.0(21)ST

This command was introduced.

12.0(22)S

This command was integrated into Cisco IOS Release 12.0(22)S.

12.0(23)S

This command was integrated into Cisco IOS Release 12.0(23)S.

12.2(13)T

This command was integrated into Cisco IOS Release 12.2(13)T.

12.2(14)S

This command was integrated into Cisco IOS Release 12.2(14)S.


Usage Guidelines

This command enables a router to use BGP to distribute MPLS labels along with the IPv4 routes to a peer router. You must issue this command on both the local router and the neighboring router.

This command has the following restrictions:

If a BGP session is running when you issue the neighbor send-label command, the command does not take effect until the BGP session is restarted.

You can use this command only with IPv4 addresses.

Examples

The following example enables a router called BGP 1 to send MPLS labels with BGP routes to the neighboring router, whose IP address is 192.168.0.0:

Router(config)# router bgp1

Router(config-router)# neighbor 192.168.0.0 send-label

Related Commands

Command
Description

neighbor activate

Enables the exchange of information with a neighboring router.


set mpls-label

To enable a route to be distributed with an Multiprotocol Label Switching (MPLS) label if the route matches the conditions specified in the route map, use the set mpls-label command in route map configuration mode. To disable this function, use the no form of this command.

set mpls-label

no set mpls-label

Syntax Description

This command has no arguments or keywords.

Defaults

This command has no default behavior or values.

Command Modes

Route map configuration

Command History

Release
Modification

12.0(21)ST

This command was introduced.

12.0(22)S

This command was integrated into Cisco IOS Release 12.0(22)S.

12.0(23)S

This command was integrated into Cisco IOS Release 12.0(23)S.

12.2(13)T

This command was integrated into Cisco IOS Release 12.2(13)T.

12.2(14)S

This command was integrated into Cisco IOS Release 12.2(14)S.


Usage Guidelines

This command can be used only with the neighbor route-map out command to manage outbound route maps for a Border Gateway Protocol (BGP) session.

Use the route-map global configuration command with match and set route-map configuration commands to define the conditions for redistributing routes from one routing protocol into another. Each route-map command has a list of match and set commands associated with it. The match commands specify the match criteria—the conditions under which redistribution is allowed for the current route-map command. The set commands specify the set actions—the particular redistribution actions to perform if the criteria enforced by the match commands are met. The no route-map command deletes the route map.

Examples

The following example creates a route map that enables the route to be distributed with a label if the IP address of the route matches an IP address in ACL 1.

Router(config-router)# route-map incoming permit 10

Router(config-route-map)# match ip address 1

Router(config-route-map)# set mpls-label

Related Commands

Command
Description

match ip address

Distributes any routes that have a destination network number address that is permitted by a standard or extended access list.

match mpls-label

Redistributes routes that contain MPLS labels and match the conditions specified in the route map.

route-map (IP)

Defines the conditions for redistributing routes from one routing protocol into another, or enables policy routing.


show ip bgp

To display entries in the Border Gateway Protocol (BGP) routing table, use the show ip bgp command in privileged EXEC mode.

show ip bgp [network] [network-mask] [longer-prefixes]

Syntax Description

network

(Optional) Network number, entered to display a particular network in the BGP routing table.

network-mask

(Optional) Displays all BGP routes matching the address and mask pair.

longer-prefixes

(Optional) Displays the route and more specific routes.


Command Modes

Privileged EXEC

Command History

Release
Modification

10.0

This command was introduced.

12.0

The display of prefix advertisement statistics was added.

12.0(6)T

This command was integrated into Cisco IOS Release 12.0(6)T. The display of a message indicating support for route refresh capability was added.

12.0(21)ST

This command was integrated into Cisco IOS Release 12.0(21)ST and updated to show the number of MPLS labels that arrive at and depart from the prefix.

12.0(22)S

This command was integrated into Cisco IOS Release 12.0(22)S.

12.0(23)S

This command was integrated into Cisco IOS Release 12.0(23)S.

12.2(13)T

This command was integrated into Cisco IOS Release 12.2(13)T.

12.2(14)S

This command was integrated into Cisco IOS Release 12.2(14)S.


Examples

The following is sample output from the show ip bgp command in privileged EXEC mode:

Router# show ip bgp

BGP table version is 5, local router ID is 10.0.33.34
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 1.0.0.0          0.0.0.0                  0         32768 ?
*  2.0.0.0          10.0.33.35              10             0 35 ?
*>                  0.0.0.0                  0         32768 ?
*  10.0.0.0         10.0.33.35              10             0 35 ?
*>                  0.0.0.0                  0         32768 ?
*> 192.168.0.0/16   10.0.33.35              10             0 35 ? 

Table 2 describes the significant fields shown in the display.

Table 2 show ip bgp Field Descriptions 

Field
Description

BGP table version

Internal version number of the table. This number increments when the table changes.

local router ID

IP address of the router.

Status codes

Status of the table entry. The status is displayed at the beginning of each line in the table. It can be one of the following values:

s—The table entry is suppressed.

d—The table entry is dampened and will not be advertised to BGP neighbors.

h—The table entry does not contain the best path based on historical information.

*—The table entry is valid.

>—The table entry is the best entry to use for that network.

i—The table entry was learned via an IBGP session.

Origin codes

Origin of the entry. The origin code is placed at the end of each line in the table. It can be one of the following values:

i—Entry originated from Interior Gateway Protocol (IGP) and was advertised with a network router configuration command.

e—Entry originated from Exterior Gateway Protocol (EGP).

?—Origin of the path is not clear. Usually, this is a router redistributed into BGP from an IGP.

Network

IP address of a network entity.

Next Hop

IP address of the next system that is used when forwarding a packet to the destination network. An entry of 0.0.0.0 indicates that the router has some non-BGP routes to this network.

Metric

If shown, the value of the inter-autonomous system metric.

LocPrf

Local preference value as set with the set local-preference route-map configuration command. The default value is 100.

Weight

Weight of the route as set via autonomous system filters.

Path

Autonomous system paths to the destination network. There can be one entry in this field for each autonomous system in the path.


The following is sample output from the show ip bgp command in privileged EXEC mode when you specify the longer-prefixes keyword:

Router# show ip bgp 198.92.0.0 255.255.0.0 longer-prefixes
BGP table version is 1738, local router ID is 198.92.72.24
Status codes: s suppressed, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop          Metric LocPrf Weight Path
*> 198.92.0.0       198.92.72.30        8896         32768 ?
*                   198.92.72.30                         0 109 108 ?
*> 198.92.1.0       198.92.72.30        8796         32768 ?
*                   198.92.72.30                         0 109 108 ?
*> 198.92.11.0      198.92.72.30       42482         32768 ?
*                   198.92.72.30                         0 109 108 ?
*> 198.92.14.0      198.92.72.30        8796         32768 ?
*                   198.92.72.30                         0 109 108 ?
*> 198.92.15.0      198.92.72.30        8696         32768 ?
*                   198.92.72.30                         0 109 108 ?
*> 198.92.16.0      198.92.72.30        1400         32768 ?
*                   198.92.72.30                         0 109 108 ?
*> 198.92.17.0      198.92.72.30        1400         32768 ?
*                   198.92.72.30                         0 109 108 ?
*> 198.92.18.0      198.92.72.30        8876         32768 ?
*                   198.92.72.30                         0 109 108 ?
*> 198.92.19.0      198.92.72.30        8876         32768 ?
*                   198.92.72.30                         0 109 108 ?

The following is sample output from the show ip bgp command in privileged EXEC mode, showing information for prefix 3.0.0.0. The last line of the output shows that MPLS labels are being sent and received.

Router# show ip bgp 3.0.0.0
BGP routing table entry for 3.0.0.0/8, version 628
Paths: (1 available, best #1)
Advertised to peer-groups:
 ebgp
Advertised to non peer-group peers:
 171.69.232.162
109 65000 297 701 80
 171.69.233.56 from 171.69.233.56 (172.19.185.32)
  Origin incomplete, localpref 100, valid, external, best, ref 2
MPLS labels in/out 24/22

Note If a prefix has not been advertised to any peer, the display shows "Not advertised to any peer."


Related Commands

Command
Description

clear ip bgp

Resets a BGP connection or session.

neighbor soft-reconfiguration

Configures the Cisco IOS software to start storing updates.


show ip bgp labels

To display information about Multiprotocol Label Switching (MPLS) labels from the External Border Gateway Protocol (EBGP) route table, use the show ip bgp labels command in privileged EXEC mode.

show ip bgp labels

Syntax Description

This command has no arguments or keywords.

Defaults

This command has no default behavior or values.

Command Modes

Privileged EXEC

Command History

Release
Modification

12.0(21)ST

This command was introduced.

12.0(22)S

This command was integrated into Cisco IOS Release 12.0(22)S.

12.0(23)S

This command was integrated into Cisco IOS Release 12.0(23)S.

12.2(13)T

This command was integrated into Cisco IOS Release 12.2(13)T.

12.2(14)S

This command was integrated into Cisco IOS Release 12.2(14)S.


Usage Guidelines

Use this command to display EBGP labels associated with an autonomous system boundary router (ASBR).

This command displays labels for BGP routes in the default table only. To display labels in the VRF tables, use the show ip bgp vpnv4 {all | vrf vrf-name} command with the optional labels keyword.

Examples

The following example shows output for an ASBR using BGP as a label distribution protocol:

Router# show ip bgp labels

Network          Next Hop         In Label/Out Label
3.3.0.0/16       0.0.0.0          imp-null/exp-null
15.15.15.15/32   15.15.15.15      18/exp-null
16.16.16.16/32   0.0.0.0          imp-null/exp-null
17.17.17.17/32   34.0.0.1         20/exp-null
18.18.18.18/32   43.0.0.1         24/31
18.18.18.18/32   38.0.0.1         24/33
19.19.19.19/32   43.0.0.1         25/32
19.19.19.19/32   38.0.0.1         25/34
20.20.20.20/32   43.0.0.1         21/30
20.20.20.20/32   38.0.0.1         21/32
33.0.0.0         15.15.15.15      19/exp-null
34.0.0.0         0.0.0.0          imp-null/exp-null
35.0.0.0         43.0.0.1         22/29
35.0.0.0         38.0.0.1         22/31
38.0.0.0         0.0.0.0          imp-null/exp-null
38.0.0.1/32      38.0.0.1         17/29
38.0.0.1/32      0.0.0.0          17/exp-null
40.0.0.0         38.0.0.1         26/35
40.0.0.0         43.0.0.1         26/34
42.0.0.0         43.0.0.1         23/28
42.0.0.0         38.0.0.1         23/30
43.0.0.0         0.0.0.0          imp-null/exp-null
43.0.0.1/32      0.0.0.0          16/exp-null

Table 3 describes the significant fields shown in the display.

Table 3 show ip bgp labels Field Descriptions

Field
Description

Network

Displays the network address from the EGBP table.

Next Hop

Specifies the EBGP next hop address.

In Label

Displays the label (if any) assigned by this router.

Out Label

Displays the label assigned by the BGP next hop router.


Related Commands

Command
Description

show ip bgp vpnv4

Displays VPN address information from the BGP table.


show ip bgp neighbors

To display information about the TCP/IP and Border Gateway Protocol (BGP) connections to neighbors, use the show ip bgp neighbors command in privileged EXEC mode.

show ip bgp neighbors [neighbor-address] [received-routes | routes | advertised-routes | {paths regexp} | dampened-routes]

Syntax Description

neighbor-address

(Optional) Address of the neighbor whose routes you have learned from. If you omit this argument, all neighbors are displayed.

received-routes

(Optional) Displays all received routes (both accepted and rejected) from the specified neighbor.

routes

(Optional) Displays all routes that are received and accepted. This is a subset of the output from the received-routes keyword.

advertised-routes

(Optional) Displays all the routes the router has advertised to the neighbor.

paths regexp

(Optional) Regular expression that is used to match the paths received.

dampened-routes

(Optional) Displays the dampened routes to the neighbor at the IP address specified.


Command Modes

Privileged EXEC

Command History

Release
Modification

10.0

This command was introduced.

11.2

The received-routes keyword was added.

12.0(21)ST

This command was integrated into Cisco IOS Release 12.0(21)ST and updated to display MPLS label information.

12.0(22)S

This command was integrated into Cisco IOS Release 12.0(22)S.

12.0(23)S

This command was integrated into Cisco IOS Release 12.0(23)S.

12.2(13)T

This command was integrated into Cisco IOS Release 12.2(13)T.

12.2(14)S

This command was integrated into Cisco IOS Release 12.2(14)S.


Examples

The following is sample output from the show ip bgp neighbors command in privileged EXEC mode. The lines of output in bold show that Multiprotocol Label Switching (MPLS) labels are being sent and received.

Router# show ip bgp neighbors 172.16.232.178

BGP neighbor is 172.16.232.178,  remote AS 35, external link
  BGP version 4, remote router ID 192.168.3.3
  BGP state = Established, up for 1w1d
  Last read 00:00:53, hold time is 180, keepalive interval is 60 seconds
  Neighbor capabilities:
MPLS Label capability:  advertised and received
Address family IPv4 Unicast: advertised and received
Address family IPv4 Multicast: advertised and received
  Received 12519 messages, 0 notifications, 0 in queue
  Sent 12523 messages, 0 notifications, 0 in queue
  Route refresh request: received 0, sent 0
  Minimum time between advertisement runs is 30 seconds
 For address family: IPv4 Unicast
  BGP table version 5, neighbor version 5
  Index 1, Offset 0, Mask 0x2
  Community attribute sent to this neighbor
Inbound path policy configured
  Outbound path policy configured
  Route map for incoming advertisements is uni-in
  Route map for outgoing advertisements is uni-out
  Sending Prefix & Label
  3 accepted prefixes consume 108 bytes
  Prefix advertised 6, suppressed 0, withdrawn 0 

 For address family: IPv4 Multicast
  BGP table version 5, neighbor version 5
  Index 1, Offset 0, Mask 0x2
  Inbound path policy configured
  Outbound path policy configured
  Route map for incoming advertisements is mul-in
  Route map for outgoing advertisements is mul-out
  3 accepted prefixes consume 108 bytes
  Prefix advertised 6, suppressed 0, withdrawn 0

  Connections established 2; dropped 1
  Last reset 1w1d, due to Peer closed the session     
Connection state is ESTAB, I/O status: 1, unread input bytes: 0
Local host: 172.16.232.178, Local port: 179
Foreign host: 172.16.232.179, Foreign port: 11002

Enqueued packets for retransmit: 0, input: 0  mis-ordered: 0 (0 bytes)

Event Timers (current time is 0x2CF49CF8):
Timer          Starts    Wakeups            Next
Retrans         12518          0             0x0
TimeWait            0          0             0x0
AckHold         12514      12281             0x0
SendWnd             0          0             0x0
KeepAlive           0          0             0x0
GiveUp              0          0             0x0
PmtuAger            0          0             0x0
DeadWait            0          0             0x0

iss:  273358651  snduna:  273596614  sndnxt:  273596614     sndwnd:  15434
irs:  190480283  rcvnxt:  190718186  rcvwnd:      15491  delrcvwnd:    893

SRTT: 300 ms, RTTO: 607 ms, RTV: 3 ms, KRTT: 0 ms
minRTT: 0 ms, maxRTT: 300 ms, ACK hold: 200 ms
Flags: passive open, nagle, gen tcbs         

Datagrams (max data segment is 1460 bytes):
Rcvd: 24889 (out of order: 0), with data: 12515, total data bytes: 237921
Sent: 24963 (retransmit: 0), with data: 12518, total data bytes: 237981      

Table 4 describes the significant fields shown in the display.

Table 4 show ip bgp neighbors Field Descriptions 

Field
Description

BGP neighbor

IP address of the BGP neighbor and its autonomous system number. If the neighbor is in the same autonomous system as the router, then the link between them is internal; otherwise, it is considered external.

remote AS

Autonomous system of the neighbor.

external link

Indicates that this peer is an EBGP peer.

BGP version

BGP version being used to communicate with the remote router; the router ID (an IP address) of the neighbor is also specified.

remote router ID

IP address of the neighbor.

BGP state

Internal state of this BGP connection.

up for

Amount of time that the underlying TCP connection has been in existence.

Last read

Time that BGP last read a message from this neighbor.

hold time

Maximum amount of time that can elapse between messages from the peer.

keepalive interval

Time period between sending keepalive packets, which help ensure that the TCP connection is up.

Neighbor capabilities

BGP capabilities advertised and received from this neighbor.

MPLS Label capability

Indicates that MPLS labels are both sent and received by the EBGP peer.

Address family IPv4 Unicast:

IP Version 4 unicast-specific properties of this neighbor.

Address family IPv4 Multicast:

IP Version 4 multicast-specific properties of this neighbor.

Received

Number of total BGP messages received from this peer, including keepalives.

notifications

Number of error messages received from the peer.

Sent

Total number of BGP messages that have been sent to this peer, including keepalives.

notifications

Number of error messages the router has sent to this peer.

Route refresh request:

Number of route refresh requests sent and received from this neighbor.

advertisement runs

Value of minimum advertisement interval.

For address family:

Address family to which the following fields refer.

BGP table version

Indicates that the neighbor has been updated with this version of the primary BGP routing table.

neighbor version

Number used by the software to track the prefixes that have been sent and those that must be sent to this neighbor.

Community attribute

Appears if the neighbor send-community command is configured for this neighbor.

Inbound path policy

Indicates if an inbound policy is configured.

Outbound path policy

Indicates if an outbound policy is configured.

uni-in

Name of inbound route map for the unicast address family.

uni-out

Name of outbound route map for the unicast address family.

mul-in

Name of inbound route map for the multicast address family.

mul-out

Name of outbound route map for the multicast address family.

Sending Prefix & Label

Indicates that the EBGP peer sends MPLS labels with its routes.

accepted prefixes

Number of prefixes accepted.

Prefix advertised

Number of prefixes advertised.

suppressed

Number of prefixes suppressed.

withdrawn

Number of prefixes withdrawn.

Connections established

Number of times the router has established a TCP connection and the two peers have agreed to speak BGP with each other.

dropped

Number of times that a good connection has failed or been taken down.

Last reset

Elapsed time since this peering session was last reset.

Connection state

State of BGP peer.

unread input bytes

Number of bytes of packets still to be processed.

Local host, Local port

Peering address of local router, plus port.

Foreign host, Foreign port

Peering address of the neighbor.

Event Timers

Table displays the number of starts and wakeups for each timer.

iss

Initial send sequence number.

snduna

Last send sequence number the local host sent but has not received an acknowledgment for.

sndnxt

Sequence number the local host will send next.

sndwnd

TCP window size of the remote host.

irs

Initial receive sequence number.

rcvnxt

Last receive sequence number the local host has acknowledged.

rcvwnd

TCP window size of the local host.

delrcvwnd

Delayed receive window—data the local host has read from the connection, but has not yet subtracted from the receive window the host has advertised to the remote host. The value in this field gradually increases until it is larger than a full-sized packet, at which point it is applied to the rcvwnd field.

SRTT

A calculated smoothed round-trip timeout.

RTTO

Round-trip timeout.

RTV

Variance of the round-trip time.

KRTT

New round-trip timeout (using the Karn algorithm). This field separately tracks the round-trip time of packets that have been re-sent.

minRTT

Smallest recorded round-trip timeout (hard wire value used for calculation).

maxRTT

Largest recorded round-trip timeout.

ACK hold

Time the local host will delay an acknowledgment in order to piggyback data on it.

Flags

IP precedence of the BGP packets.

Datagrams: Rcvd

Number of update packets received from a neighbor.

with data

Number of update packets received with data.

total data bytes

Total bytes of data.

Sent

Number of update packets sent.

with data

Number of update packets with data sent.

total data bytes

Total number of data bytes.


The following is sample output from the show ip bgp neighbors command with the advertised-routes keyword:

Router# show ip bgp neighbors 172.16.232.178 advertised-routes

BGP table version is 27, local router ID is 172.16.232.181
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop          Metric LocPrf Weight Path
*>i110.0.0.0        172.16.232.179         0    100      0 ?
*> 200.2.2.0        0.0.0.0                0         32768 i

The following is sample output from the show ip bgp neighbors command with the routes keyword:

Router# show ip bgp neighbors 172.16.232.178 routes

BGP table version is 27, local router ID is 172.16.232.181
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop          Metric LocPrf Weight Path
*> 10.0.0.0         172.16.232.178        40             0 10 ?
*> 20.0.0.0         172.16.232.178        40             0 10 ?

Table 5 describes the significant fields shown in the displays.

Table 5 show ip bgp neighbors advertised-routes and routes Field Descriptions 

Field
Description

BGP table version

Internal version number of the table. This number increments when the table changes.

local router ID

IP address of the router.

Status codes

Status of the table entry. The status is displayed at the beginning of each line in the table. It can be one of the following values:

s—The table entry is suppressed.

d—The table entry is dampened and will not be advertised to BGP neighbors.

h—The table entry does not contain the best path based on historical information.

*—The table entry is valid.

>—The table entry is the best entry to use for that network.

i—The table entry was learned via an Internal BGP (IBGP) session.

Origin codes

Origin of the entry. The origin code is placed at the end of each line in the table. It can be one of the following values:

i—Entry originated from Interior Gateway Protocol (IGP) and was advertised with a network router configuration command.

e—Entry originated from Exterior Gateway Protocol (EGP).

?—Origin of the path is not clear. Usually, this is a router that is redistributed into BGP from an IGP.

Network

IP address of a network entity.

Next Hop

IP address of the next system that is used when forwarding a packet to the destination network. An entry of 0.0.0.0 indicates that the router has some non-BGP routes to this network.

Metric

If shown, this is the value of the inter-autonomous system metric. This field is frequently not used.

LocPrf

Local preference value as set with the set local-preference route-map configuration command. The default value is 100.

Weight

Weight of the route as set via autonomous system filters.

Path

Autonomous system paths to the destination network. There can be one entry in this field for each autonomous system in the path.


The following is sample output from the show ip bgp neighbors command with the paths keyword:

Router# show ip bgp neighbors 171.69.232.178 paths ^10

Address    Refcount Metric Path
0x60E577B0        2     40 10 ?

Table 6 describes the significant fields shown in the display.

Table 6 show ip bgp neighbors paths Field Descriptions

Field
Description

Address

Internal address where the path is stored.

Refcount

Number of routes using that path.

Metric

The Multi Exit Discriminator (MED) metric for the path. (The name of this metric for BGP versions 2 and 3 is INTER_AS.)

Path

The autonomous system path for that route, followed by the origin code for that route.


show ip bgp vpnv4

To display Virtual Private Network (VPN) address information from the Border Gateway Protocol (BGP) table, use the show ip bgp vpnv4 command in EXEC mode.

show ip bgp vpnv4 {all | rd route-distinguisher | vrf vrf-name} [ip-prefix/length [longer-prefixes] [output-modifiers]] [network-address [mask] [longer-prefixes] [output-modifiers]] [cidr-only] [community] [community-list] [dampened-paths] [filter-list] [flap-statistics] [inconsistent-as] [neighbors] [paths [line]] [peer-group] [quote-regexp] [regexp] [summary] [labels]

Syntax Description

all

Displays the complete VPNv4 database.

rd route-distinguisher

Displays NLRIs that have a matching route distinguisher.

vrf vrf-name

Displays NLRIs associated with the named VRF.

ip-prefix/length

(Optional) The IP prefix address (in dotted decimal format) and the length of the mask (0 to 32).

longer-prefixes

(Optional) Displays the entry, if any, that exactly matches the specified prefix parameter and all entries that match the prefix in a "longest-match" sense. That is, prefixes for which the specified prefix is an initial substring.

output-modifiers

(Optional) For a list of associated keywords and arguments, use context-sensitive help.

network-address

(Optional) The IP address of a network in the BGP routing table.

mask

(Optional) The mask of the network address, in dotted decimal format.

cidr-only

(Optional) Displays only routes that have nonnatural net masks.

community

(Optional) Displays routes matching this community.

community-list

(Optional) Displays routes matching this community list.

dampened-paths

(Optional) Displays paths suppressed on account of dampening (BGP route from peer is up and down).

filter-list

(Optional) Displays routes conforming to the filter list.

flap-statistics

(Optional) Displays flap statistics of routes.

inconsistent-as

(Optional) Displays only routes that have inconsistent autonomous systems of origin.

neighbors

(Optional) Displays details about TCP and BGP neighbor connections.

paths

(Optional) Displays path information.

line

(Optional) A regular expression to match the BGP autonomous system paths.

peer-group

(Optional) Displays information about peer groups.

quote-regexp

(Optional) Displays routes matching the autonomous system path "regular expression."

regexp

(Optional) Displays routes matching the autonomous system path regular expression.

summary

(Optional) Displays BGP neighbor status.

labels

(Optional) Displays incoming and outgoing BGP labels for each NLRI.


Defaults

This command has no default behavior or values.

Command Modes

EXEC

Command History

Release
Modification

12.0(5)T

This command was introduced.

12.2(2)T

The output of the show ip bgp vpnv4 all ip-prefix command was enhanced to display attributes including multipaths and a best path to the specified network.

12.0(21)ST

This command was integrated into Cisco IOS Release 12.0(21)ST. The keyword tags was replaced with the keyword labels to conform to the MPLS IETF guidelines.

12.0(22)S

This command was integrated into Cisco IOS Release 12.0(22)S.

12.0(23)S

This command was integrated into Cisco IOS Release 12.0(23)S.

12.2(13)T

This command was integrated into Cisco IOS Release 12.2(13)T.

12.2(14)S

This command was integrated into Cisco IOS Release 12.2(14)S.


Usage Guidelines

Use this command to display VPNv4 information from the BGP database. The show ip bgp vpnv4 all command displays all available VPNv4 information. The show ip bgp vpnv4 summary command displays BGP neighbor status.

Examples

The following example shows output for all available VPNv4 information in a BGP routing table:

Router# show ip bgp vpnv4 all

BGP table version is 18, local router ID is 14.14.14.14
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP,? - incomplete

   Network          Next Hop 	Metric LocPrf 	Weight 	Path
Route Distinguisher: 100:1 (vrf1)
*> 11.0.0.0         50.0.0.1 		0 	0 	101 i
*>i12.0.0.0         13.13.13.13 		0    100 	0 	102 i
*> 50.0.0.0         50.0.0.1 	0 	0 	101 i
*>i51.0.0.0         13.13.13.13 	0    100 	0 	102 i

Table 7 describes the significant fields shown in the display.

Table 7 show ip bgp vpnv4 Field Descriptions 

Field
Description

Network

Displays the network address from the BGP table.

Next Hop

Displays the address of the BGP next hop.

Metric

Displays the BGP metric.

LocPrf

Displays the local preference.

Weight

Displays the BGP weight.

Path

Displays the BGP path per route.


The following example shows how to display a table of labels for NLRIs that have a route distinguisher value of 100:1:

Router# show ip bgp vpnv4 rd 100:1 labels

	Network			Next Hop      In label/Out label
Route Distinguisher: 100:1 (vrf1)
   2.0.0.0          10.20.0.60      34/nolabel
   10.0.0.0         10.20.0.60      35/nolabel
   12.0.0.0         10.20.0.60      26/nolabel
                    10.20.0.60      26/nolabel
   13.0.0.0         10.15.0.15      nolabel/26

Table 8 describes the significant fields shown in the display.

Table 8 show ip bgp vpnv4 rd labels Field Descriptions

Field
Description

Network

Displays the network address from the BGP table.

Next Hop

Specifies the BGP next hop address.

In

Displays the label (if any) assigned by this router.

Out

Displays the label assigned by the BGP next hop router.


The following example shows VPNv4 routing entries for the VRF named vrf1:

Router# show ip bgp vpnv4 vrf vrf1

BGP table version is 18, local router ID is 14.14.14.14
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP,? - incomplete
 
Network          Next Hop 	Metric LocPrf 	Weight 	Path
Route Distinguisher: 100:1 (vrf1)
*> 11.0.0.0         50.0.0.1 		0 	0 	101 i
*>i12.0.0.0         13.13.13.13 		0    100 	0 	102 i
*> 50.0.0.0         50.0.0.1 	0 	0 	101 i
*>i51.0.0.0         13.13.13.13 	0    100 	0 	102 i

Table 9 describes the significant fields shown in the display.

Table 9 show ip bgp vpnv4 vrf Field Descriptions 

Field
Description

Network

Displays the network address from the BGP table.

Next Hop

Displays the address of the BGP next hop.

Metric

Displays the BGP metric.

LocPrf

Displays the local preference.

Weight

Displays the BGP weight.

Path

Displays the BGP path per route.


The following example shows attributes for network 10.22.22.0 that includes multipaths and a best path:

Router# show ip bgp vpnv4 all 10.22.22.0

BGP routing table entry for 100:1:10.22.22.0/24, version 50
Paths:(6 available, best #1)
Multipath:iBGP
  Advertised to non peer-group peers:
  200.1.12.12 
  22
    1.22.7.8 (metric 11) from 1.11.3.4 (100.0.0.8)
      Origin IGP, metric 0, localpref 100, valid, internal, multipath, best
      Extended Community:RT:100:1
      Originator:100.0.0.8, Cluster list:100.1.1.44
  22
    1.22.1.9 (metric 11) from 1.11.1.2 (100.0.0.9)
      Origin IGP, metric 0, localpref 100, valid, internal, multipath
      Extended Community:RT:100:1
      Originator:100.0.0.9, Cluster list:100.1.1.22
  22
    1.22.6.10 (metric 11) from 1.11.6.7 (100.0.0.10)
      Origin IGP, metric 0, localpref 100, valid, internal, multipath
      Extended Community:RT:100:1
      Originator:100.0.0.10, Cluster list:100.0.0.7
  22
    1.22.4.10 (metric 11) from 1.11.4.5 (100.0.0.10)
      Origin IGP, metric 0, localpref 100, valid, internal, multipath
      Extended Community:RT:100:1
      Originator:100.0.0.10, Cluster list:100.0.0.5
  22
    1.22.5.10 (metric 11) from 1.11.5.6 (100.0.0.10)
      Origin IGP, metric 0, localpref 100, valid, internal, multipath
      Extended Community:RT:100:1
      Originator:100.0.0.10, Cluster list:100.0.0.6

Table 10 describes the significant fields shown in the display.

Table 10 show ip bgp vpn4 all 10.22.22.0 Field Descriptions 

Field
Description

BGP routing table ... version

Internal version number of the table. This number is incremented whenever the table changes.

Paths:

Number of autonomous system paths to the specified network. If multiple paths exist, one of the multipaths is designated the best path.

Multipath:

Indicates the maximum-paths configured (IBGP or EBGP).

Advertised to non peer-group peers:
200.1.12.12

22

IP address of the BGP peers that the specified route is advertised to.

1.22.7.8 (metric 11) from 1.11.3.4 (100.0.0.8)

Indicates the next hop address and the address of the gateway that sent the update.

Origin

Indicates the origin of the entry. It can be one of the following values:
IGP—Entry originated from Interior Gateway Protocol (IGP) and was advertised with a network router configuration command.
incomplete — Entry originated from other than an IGP or Exterior Gateway Protocol (EGP) and was advertised with the redistribute router configuration command.

EGP — Entry originated from an EGP.

metric

If shown, the value of the interautonomous system metric.

localpref

Local preference value as set with the set local-preference route-map configuration command. The default value is 100.

valid

Indicates that the route is usable and has a valid set of attributes.

internal/external

The field is internal if the path is learned via IBGP. The field is external if the path is learned via EBGP.

multipath

One of multiple paths to the specified network.

best

If multiple paths exist, one of the multipaths is designated the best path and advertised the neighbors.

Extended Community:RT:100:1

Route Target value associated with the specified route.

Originator:

The router ID of the route originating router when route reflector is used.

Cluster list:

The router ID of all the route reflectors that the specified route has passed through.


Related Commands

Command
Description

show ip vrf

Displays the set of defined VRFs and associated interfaces.


show route-map

To display all route maps configured or only the one specified, use the show route-map command in EXEC mode.

show route-map [map-name]

Syntax Description

map-name

(Optional) Name of a specific route map.


Command Modes

EXEC

Command History

Release
Modification

10.0

This command was introduced.

12.0(21)ST

This command was updated to display information about MPLS labels.

12.0(22)S

This command was integrated into Cisco IOS Release 12.0(22)S.

12.0(23)S

This command was integrated into Cisco IOS Release 12.0(23)S.

12.2(13)T

This command was integrated into Cisco IOS Release 12.2(13)T.

12.2(14)S

This command was integrated into Cisco IOS Release 12.2(14)S.


Examples

The following is sample output from the show route-map command:

Router# show route-map

route-map sid, permit, sequence 10
Match clauses:
    tag 1 2
Set clauses:
    metric 5
route-map sid, permit, sequence 20
Match clauses:
    tag 3 4
Set clauses:
    metric 6

The following example shows MPLS-related route map information:

Router# show route-map

route-map OUT, permit, sequence 10
Match clauses:
  ip address (access-lists): 1 
Set clauses:
  mpls label
Policy routing matches: 0 packets, 0 bytes
       
route-map IN, permit, sequence 10
Match clauses:
  ip address (access-lists): 2 
  mpls label
Set clauses:
Policy routing matches: 0 packets, 0 bytes

Table 11 describes the fields shown in the display.

.

Table 11 show route-map Field Descriptions

Field
Description

route-map

Name of the route map.

permit

Indicates that the route is redistributed as controlled by the set actions.

sequence

The position a route map takes in the list of route maps already configured with the same name.

Match clauses:

Match criteria—conditions under which redistribution is allowed for the current route map.

Set clauses:

Set actions—the particular redistribution actions to perform if the criteria enforced by the match commands are met.


Related Commands

Command
Description

redistribute (IP)

Redistributes routes from one routing domain into another routing domain.

route-map (IP)

Defines the conditions for redistributing routes from one routing protocol into another, or enables policy routing.


Glossary

AS—autonomous system. A collection of networks that share the same routing protocol and that are under the same system administration.

ASBR—autonomous system border router. A router that connects and exchanges information between two or more autonomous systems.

BGP—Border Gateway Protocol. The exterior border gateway protocol used to exchange routing information between routers in separate autonomous systems. BGP uses Transmission Control Protocol (TCP). Because TCP is a reliable protocol, BGP does not experience problems with dropped or fragmented data packets.

CE router—customer edge router. The customer router that connects to the provider edge (PE) router.

EBGP—External Border Gateway Protocol. A BGP session between routers in different autonomous systems (ASs). When a pair of routers in different ASs are more than one IP hop away from each other, an EBGP session between those two routers is called multihop EBGP.

IBGP—Internal Border Gateway Protocol. A BGP session between routers within the same autonomous system.

IGP—Interior Gateway Protocol. Internet protocol used to exchange routing information within an autonomous system. Examples of common Internet IGPs include Interior Gateway Protocol (IGRP), Open Shortest Path First (OSPF), and Routing Information Protocol (RIP).

LDP—Label Distribution Protocol. A standard protocol between MPLS-enabled routers to negotiate the labels (addresses) used to forward packets. This protocol is not supported in Cisco IOS Release 12.0. The Cisco proprietary version of this protocol is the Tag Distribution Protocol (TDP).

LER—label edge router. The edge router that performs label imposition and disposition.

LSR—label switch router. The role of an LSR is to forward packets in an MPLS network by looking only at the fixed-length label.

NLRI—Network Layer Reachability Information. BGP sends routing update messages containing NLRI, which describes the route. In this context, an NLRI is a prefix. A BGP update message carries one or more NLRI prefixes and the attributes of a route for the NLRI prefixes. The route attributes include a BGP next hop gateway address, community values, and other information.

P router—provider router. The core router in the service provider network that connects to provider edge (PE) routers. In a packet-switched star topology, a router that is part of the backbone and that serves as the single pipe through which all traffic from peripheral networks must pass on its way to other peripheral networks.

PE router—provider edge router. The label edge router (LER) in the service provider network that connects to the customer edge (CE) router.

RR—route reflector. A router that advertises, or reflects, IBGP learned routes to other IBGP peers without requiring a full network mesh.

VPN—Virtual Private Network. A group of sites that, as a result of a set of administrative policies, can communicate with each other over a shared backbone.

VPNv4 addresses—When multiple VPNs use the same address space, the VPN addresses are made unique by adding a route distinguisher to the front of the address.


Note Refer to the Internetworking Terms and Acronyms for terms not included in this glossary.