This documentation has been moved
Implementing Multiprotocol BGP for IPv6
Downloads: This chapterpdf (PDF - 316.0KB) | Feedback

Implementing Multiprotocol BGP for IPv6

Table Of Contents

Implementing Multiprotocol BGP for IPv6

Finding Feature Information

Contents

Information About Implementing Multiprotocol BGP for IPv6

Multiprotocol BGP Extensions for IPv6

Multiprotocol BGP for the IPv6 Multicast Address Family

Nonstop Forwarding and Graceful Restart for MP-BGP IPv6 Address Family

How to Implement Multiprotocol BGP for IPv6

Configuring an IPv6 BGP Routing Process and BGP Router ID

Configuring IPv6 Multiprotocol BGP Between Two IPv6 Peers

Restrictions

Configuring IPv6 Multiprotocol BGP Between Two Peers Using Link-Local Addresses

Restrictions

Troubleshooting Tips

Configuring an IPv6 Multiprotocol BGP Peer Group

Advertising IPv4 Routes Between IPv6 BGP Peers

Assigning BGP Administrative Distance for Multicast BGP Routes

Generating IPv6 Multicast BGP Updates

Configuring the IPv6 BGP Graceful Restart Capability

Resetting IPv6 BGP Sessions

Clearing External BGP Peers

Clearing IPv6 BGP Route Dampening Information

Clearing IPv6 BGP Flap Statistics

Verifying IPv6 Multiprotocol BGP Configuration and Operation

Examples

Sample Output from the show bgp ipv6 Command

Sample Output from the show bgp ipv6 summary Command

Sample Output from the show bgp ipv6 dampened-paths Command

Sample Output from the debug bgp ipv6 dampening Command

Sample Output from the debug bgp ipv6 updates Command

Configuration Examples for Multiprotocol BGP for IPv6

Example: Configuring a BGP Process, BGP Router ID, and IPv6 Multiprotocol BGP Peer

Example: Configuring an IPv6 Multiprotocol BGP Peer Using a Link-Local Address

Example: Configuring an IPv6 Multiprotocol BGP Peer Group

Example: Advertising IPv4 Routes Between IPv6 Peers

Where to Go Next

Additional References

Related Documents

Standards

MIBs

RFCs

Technical Assistance

Feature Information for Implementing Multiprotocol BGP
for IPv6


Implementing Multiprotocol BGP for IPv6


First Published: May 5, 2008
Last Updated: July 30, 2010

This module describes how to configure multiprotocol Border Gateway Protocol (BGP) for IPv6. BGP is an Exterior Gateway Protocol (EGP) used mainly to connect separate routing domains that contain independent routing policies (autonomous systems). Connecting to a service provider for access to the Internet is a common use for BGP. BGP can also be used within an autonomous system and this variation is referred to as internal BGP (iBGP). Multiprotocol BGP is an enhanced BGP that carries routing information for multiple network layer protocol address families, for example, IPv6 address family and for IP multicast routes. All BGP commands and routing policy capabilities can be used with multiprotocol BGP.

Finding Feature Information

Your software release may not support all the features documented in this module. For the latest feature information and caveats, see the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the "Feature Information for Implementing Multiprotocol BGP for IPv6" section.

Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to http://www.cisco.com/go/cfn. An account on Cisco.com is not required.

Contents

Information About Implementing Multiprotocol BGP for IPv6

How to Implement Multiprotocol BGP for IPv6

Configuration Examples for Multiprotocol BGP for IPv6

Where to Go Next

Additional References

Feature Information for Implementing Multiprotocol BGP for IPv6

Information About Implementing Multiprotocol BGP for IPv6

Multiprotocol BGP Extensions for IPv6

Multiprotocol BGP for the IPv6 Multicast Address Family

Multiprotocol BGP Extensions for IPv6

Multiprotocol BGP is the supported EGP for IPv6. Multiprotocol BGP extensions for IPv6 supports the same features and functionality as IPv4 BGP. IPv6 enhancements to multiprotocol BGP include support for an IPv6 address family and network layer reachability information (NLRI) and next hop (the next router in the path to the destination) attributes that use IPv6 addresses.

Multiprotocol BGP for the IPv6 Multicast Address Family

The multiprotocol BGP for the IPv6 multicast address family feature provides multicast BGP extensions for IPv6 and supports the same features and functionality as IPv4 BGP. IPv6 enhancements to multicast BGP include support for an IPv6 multicast address family and network layer reachability information (NLRI) and next hop (the next router in the path to the destination) attributes that use IPv6 addresses.

Multicast BGP is an enhanced BGP that allows the deployment of interdomain IPv6 multicast. Multiprotocol BGP carries routing information for multiple network layer protocol address families; for example, IPv6 address family and for IPv6 multicast routes. The IPv6 multicast address family contains routes used for RPF lookup by the IPv6 PIM protocol, and multicast BGP IPV6 provides for inter- domain transport of the same. Users must use multiprotocol BGP for IPv6 multicast when using IPv6 multicast with BGP because the unicast BGP learned routes will not be used for IPv6 multicast.

Multicast BGP functionality is provided through a separate address family context. A subsequent address family identifier (SAFI) provides information about the type of the network layer reachability information that is carried in the attribute. Multiprotocol BGP unicast uses SAFI 1 messages, and multiprotocol BGP multicast uses SAFI 2 messages. SAFI 1 messages indicate that the routes are only usable for IP unicast, but not IP multicast. Because of this functionality, BGP routes in the IPv6 unicast RIB must be ignored in the IPv6 multicast RPF lookup.

A separate BGP routing table is maintained to configure incongruent policies and topologies (for example, IPv6 unicast and multicast) by using IPv6 multicast RPF lookup. Multicast RPF lookup is very similar to the IP unicast route lookup.

No MRIB is associated with the IPv6 multicast BGP table. However, IPv6 multicast BGP operates on the unicast IPv6 RIB when needed. Multicast BGP does not insert or update routes into the IPv6 unicast RIB.

Nonstop Forwarding and Graceful Restart for MP-BGP IPv6 Address Family

The graceful restart capability is supported for IPv6 BGP unicast, multicast, and VPNv6 address families, enabling Cisco nonstop forwarding (NSF) functionality for BGP IPv6. The BGP graceful restart capability allows the BGP routing table to be recovered from peers without keeping the TCP state.

NSF continues forwarding packets while routing protocols converge, therefore avoiding a route flap on switchover. Forwarding is maintained by synchronizing the FIB between the active and standby RP. On switchover, forwarding is maintained using the FIB. The RIB is not kept synchronized; therefore, the RIB is empty on switchover. The RIB is repopulated by the routing protocols and subsequently informs FIB about RIB convergence by using the NSF_RIB_CONVERGED registry call. The FIB tables are updated from the RIB, removing any stale entries. The RIB starts a failsafe timer during RP switchover, in case the routing protocols fail to notify the RIB of convergence.

The Cisco BGP address family identifier (AFI) model is designed to be modular and scalable, and to support multiple AFI and subsequent address family identifier (SAFI) configurations.

How to Implement Multiprotocol BGP for IPv6

When configuring multiprotocol BGP extensions for IPv6, you must create the BGP routing process, configure peering relationships, and customize BGP for your particular network.


Note The following sections describe the configuration tasks for creating an IPv6 multiprotocol BGP routing process and associating peers, peer groups, and networks to the routing process. The following sections do not provide in-depth information on customizing multiprotocol BGP because the protocol functions the same in IPv6 as it does in IPv4. See the "Related Documents" section for further information on BGP and multiprotocol BGP configuration and command reference information.


Configuring an IPv6 BGP Routing Process and BGP Router ID (required)

Configuring IPv6 Multiprotocol BGP Between Two IPv6 Peers (required)

Configuring IPv6 Multiprotocol BGP Between Two Peers Using Link-Local Addresses (optional)

Configuring an IPv6 Multiprotocol BGP Peer Group (optional)

Advertising IPv4 Routes Between IPv6 BGP Peers (optional)

Assigning BGP Administrative Distance for Multicast BGP Routes (optional)

Generating IPv6 Multicast BGP Updates (optional)

Configuring the IPv6 BGP Graceful Restart Capability (optional)

Resetting IPv6 BGP Sessions (optional)

Clearing External BGP Peers (optional)

Clearing IPv6 BGP Route Dampening Information (optional)

Clearing IPv6 BGP Flap Statistics (optional)

Verifying IPv6 Multiprotocol BGP Configuration and Operation (optional)

Configuring an IPv6 BGP Routing Process and BGP Router ID

BGP uses a router ID to identify BGP-speaking peers. The BGP router ID is 32-bit value that is often represented by an IPv4 address. By default, the Cisco IOS XE software sets the router ID to the IPv4 address of a loopback interface on the router. If no loopback interface is configured on the router, then the software chooses the highest IPv4 address configured to a physical interface on the router to represent the BGP router ID. When configuring BGP on a router that is enabled only for IPv6 (the router does not have an IPv4 address), you must manually configure the BGP router ID for the router. The BGP router ID, which is represented as a 32-bit value using an IPv4 address syntax, must be unique to the BGP peers of the router.

SUMMARY STEPS

1. enable

2. configure terminal

3. router bgp as-number

4. no bgp default ipv4-unicast

5. bgp router-id ip-address

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

router bgp as-number

Example:

Router(config)# router bgp 65000

Configures a BGP routing process, and enters router configuration mode for the specified routing process.

Step 4 

no bgp default ipv4-unicast

Example:

Router(config-router)# no bgp default ipv4-unicast

Disables the IPv4 unicast address family for the BGP routing process specified in the previous step.

Note Routing information for the IPv4 unicast address family is advertised by default for each BGP routing session configured with the neighbor remote-as command unless you configure the no bgp default ipv4-unicast command before configuring the neighbor remote-as command.

Step 5 

bgp router-id ip-address

Example:

Router(config-router)# bgp router-id 192.168.99.70

(Optional) Configures a fixed 32-bit router ID as the identifier of the local router running BGP.

Note Configuring a router ID using the bgp router-id command resets all active BGP peering sessions.


Configuring IPv6 Multiprotocol BGP Between Two IPv6 Peers

Restrictions

By default, neighbors that are defined using the neighbor remote-as command in router configuration mode exchange only IPv4 unicast address prefixes. To exchange other address prefix types, such as IPv6 prefixes, neighbors must also be activated using the neighbor activate command in address family configuration mode for the other prefix types, as shown for IPv6 prefixes.

SUMMARY STEPS

1. enable

2. configure terminal

3. router bgp as-number

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

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

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

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

router bgp as-number

Example:

Router(config)# router bgp 65000

Enters router configuration mode for the specified routing process.

Step 4 

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

Example:

Router(config-router)# neighbor 2001:DB8:0:CC00::1 remote-as 64600

Adds the IPv6 address of the neighbor in the specified autonomous system to the IPv6 multiprotocol BGP neighbor table of the local router.

The ipv6-address argument in the neighbor remote-as command must be in the form documented in RFC 2373 where the address is specified in hexadecimal using 16-bit values between colons.

Step 5 

address-family ipv6 [unicast | multicast]

Example:

Router(config-router)# address-family ipv6

Specifies the IPv6 address family and enters address family configuration mode.

The unicast keyword specifies the IPv6 unicast address family. By default, the router is placed in configuration mode for the IPv6 unicast address family if the unicast keyword is not specified with the address-family ipv6 command.

The multicast keyword specifies IPv6 multicast address prefixes.

Step 6 

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

Example:

Router(config-router-af)# neighbor 2001:DB8:0:CC00::1 activate

Enables the neighbor to exchange prefixes for the IPv6 address family with the local router.


Configuring IPv6 Multiprotocol BGP Between Two Peers Using Link-Local Addresses

Configuring IPv6 multiprotocol BGP between two IPv6 routers (peers) using link-local addresses requires that the interface for the neighbor be identified by using the update-source command and that a route map be configured to set an IPv6 global next hop.

Restrictions

By default, neighbors that are defined using the neighbor remote-as command in router configuration mode exchange only IPv4 unicast address prefixes. To exchange other address prefix types, such as IPv6 prefixes, neighbors must also be activated using the neighbor activate command in address family configuration mode for the other prefix types, as shown for IPv6 prefixes.

By default, route maps that are applied in router configuration mode using the neighbor route-map command are applied to only IPv4 unicast address prefixes. Route maps for other address families must be applied in address family configuration mode using the neighbor route-map command, as shown for the IPv6 address family. The route maps are applied either as the inbound or outbound routing policy for neighbors under the specified address family. Configuring separate route maps under each address family type simplifies managing complicated or different policies for each address family.

SUMMARY STEPS

1. enable

2. configure terminal

3. router bgp autonomous-system-number

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

5. neighbor {ip-address | ipv6-address | peer-group-name} update-source interface-type interface-number

6. address-family ipv6 [vrf vrf-name] [unicast | multicast | vpnv6]

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

8. neighbor {ip-address | peer-group-name | ipv6-address} route-map map-name {in | out}

9. exit

10. Repeat Step 9.

11. route-map map-tag [permit | deny] [sequence-number]

12. match ipv6 address {prefix-list prefix-list-name | access-list-name}

13. set ipv6 next-hop ipv6-address [link-local-address] [peer-address]

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

router bgp autonomous-system-number

Example:

Router(config)# router bgp 65000

Enters router configuration mode for the specified routing process.

Step 4 

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

Example:

Router(config-router)# neighbor FE80::XXXX:BFF:FE0E:A471 remote-as 64600

Adds the link-local IPv6 address of the neighbor in the specified remote autonomous system to the IPv6 multiprotocol BGP neighbor table of the local router.

The ipv6-address argument in the neighbor remote-as command must be a link-local IPv6 address in the form documented in RFC 2373 where the address is specified in hexadecimal using 16-bit values between colons.

Step 5 

neighbor {ip-address | ipv6-address | peer-group-name} update-source interface-type interface-number

Example:

Router(config-router)# neighbor FE80::XXXX:BFF:FE0E:A471 update-source gigabitethernet0/0/0

Specifies the link-local address over which the peering is to occur.

If there are multiple connections to the neighbor and you do not specify the neighbor interface by using the interface-type and interface-number arguments in the neighbor update-source command, a TCP connection cannot be established with the neighbor using link-local addresses.

Step 6 

address-family ipv6 [vrf vrf-name] [unicast | multicast | vpnv6]

Example:

Router(config-router)# address-family ipv6

Specifies the IPv6 address family, and enters address family configuration mode.

The unicast keyword specifies the IPv6 unicast address family. By default, the router is placed in configuration mode for the IPv6 unicast address family if the unicast keyword is not specified with the address-family ipv6 command.

The multicast keyword specifies IPv6 multicast address prefixes.

Step 7 

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

Example:

Router(config-router-af)# neighbor FE80::XXXX:BFF:FE0E:A471 activate

Enables the neighbor to exchange prefixes for the IPv6 address family with the local router using the specified link-local addresses.

Step 8 

neighbor {ip-address | peer-group-name | ipv6-address} route-map map-name {in | out}

Example:

Router(config-router-af)# neighbor FE80::XXXX:BFF:FE0E:A471 route-map nh6 out

Applies a route map to incoming or outgoing routes.

Step 9 

exit

Example:

Router(config-router-af)# exit

Exits address family configuration mode, and returns the router to router configuration mode.

Step 10 

Repeat Step 9.

Example:

Router(config-router)# exit

Exits router configuration mode, and returns the router to global configuration mode.

Step 11 

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

Example:

Router(config)# route-map nh6 permit 10

Defines a route map and enters route-map configuration mode.

Step 12 

match ipv6 address {prefix-list prefix-list-name | access-list-name}

Example:

Router(config-route-map)# match ipv6 address prefix-list cisco

Distributes any routes that have a destination IPv6 network number address permitted by a prefix list, or performs policy routing on packets.

Step 13 

set ipv6 next-hop ipv6-address [link-local-address] [peer-address]

Example:

Router(config-route-map)# set ipv6 next-hop 2001:DB8::1

Overrides the next hop advertised to the peer for IPv6 packets that pass a match clause of a route map for policy routing.

The ipv6-address argument specifies the IPv6 global address of the next hop. It need not be an adjacent router.

The link-local-address argument specifies the IPv6 link-local address of the next hop. It must be an adjacent router.

Note The route map sets the IPv6 next-hop addresses (global and link-local) in BGP updates. If the route map is not configured, the next-hop address in the BGP updates defaults to the unspecified IPv6 address (::), which is rejected by the peer.

If you specify only the global IPv6 next-hop address (the ipv6-address argument) with the set ipv6 next-hop command after specifying the neighbor interface (the interface-type argument) with the neighbor update-source command in Step 5, the link-local address of the interface specified with the interface-type argument is included as the next-hop in the BGP updates. Therefore, only one route map that sets the global IPv6 next-hop address in BGP updates is required for multiple BGP peers that use link-local addresses.


Troubleshooting Tips

If peering is not established by this task, it may be because of a missing route map set ipv6 next-hop command. Use the debug bgp ipv6 update command to display debugging information on the updates to help determine the state of the peering.

Configuring an IPv6 Multiprotocol BGP Peer Group

By default, neighbors that are defined using the neighbor remote-as command in router configuration mode exchange only IPv4 unicast address prefixes. To exchange other address prefix types, such as IPv6 prefixes, neighbors must also be activated using the neighbor activate command in address family configuration mode for the other prefix types, as shown for IPv6 prefixes.

By default, peer groups that are defined in router configuration mode using the neighbor peer-group command exchange only IPv4 unicast address prefixes. To exchange other address prefix types, such as IPv6 prefixes, you must activate peer groups using the neighbor activate command in address family configuration mode for the other prefix types, as shown for IPv6 prefixes.

Members of a peer group automatically inherit the address prefix configuration of the peer group.

IPv4 active neighbors cannot exist in the same peer group as active IPv6 neighbors. Create separate peer groups for IPv4 peers and IPv6 peers.

SUMMARY STEPS

1. enable

2. configure terminal

3. router bgp as-number

4. neighbor peer-group-name peer-group

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

6. address-family ipv6 [vrf vrf-name] [unicast | multicast | vpnv6]

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

8. neighbor {ip-address | ipv6-address} send-label

9. neighbor {ip-address | ipv6-address} peer-group peer-group-name

10. exit

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

router bgp as-number

Example:

Router(config)# router bgp 65000

Enters router configuration mode for the specified BGP routing process.

Step 4 

neighbor peer-group-name peer-group

Example:

Router(config-router)# neighbor group1 peer-group

Creates a multiprotocol BGP peer group.

Step 5 

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

Example:

Router(config-router)# neighbor 2001:DB8:0:CC00::1 remote-as 64600

Adds the IPv6 address of the neighbor in the specified autonomous system to the IPv6 multiprotocol BGP neighbor table of the local router.

The ipv6-address argument in the neighbor remote-as command must be in the form documented in RFC 2373 where the address is specified in hexadecimal using 16-bit values between colons.

Step 6 

address-family ipv6 [vrf vrf-name] [unicast | multicast | vpnv6]

Example:

Router(config-router)# address-family ipv6 unicast

Specifies the IPv6 address family, and enters address family configuration mode.

The unicast keyword specifies the IPv6 unicast address family. By default, the router is placed in configuration mode for the IPv6 unicast address family if the unicast keyword is not specified with the address-family ipv6 command.

The multicast keyword specifies IPv6 multicast address prefixes.

Step 7 

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

Example:

Router(config-router-af)# neighbor 2001:DB8:0:CC00::1 activate

Enables the neighbor to exchange prefixes for the specified family type with the neighbor and the local router.

To avoid extra configuration steps for each neighbor, use the neighbor activate command with the peer-group-name argument as an alternative in this step.

Step 8 

neighbor {ip-address | ipv6-address} send-label

Example:

Router(config-router-af)# neighbor 192.168.99.70 send-label

Advertises the capability of the router to send MPLS labels with BGP routes.

In IPv6 address family configuration mode, this command enables binding and advertisement of aggregate labels when advertising IPv6 prefixes in BGP.

Step 9 

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

Example:

Router(config-router-af)# neighbor 2001:DB8:0:CC00::1 peer-group group1

Assigns the IPv6 address of a BGP neighbor to a peer group.

Step 10 

exit

Example:

Router(config-router-af)# exit

Exits address family configuration mode, and returns the router to router configuration mode.

Repeat this step to exit router configuration mode and return the router to global configuration mode.


Advertising IPv4 Routes Between IPv6 BGP Peers

If an IPv6 network is connecting two separate IPv4 networks, it is possible to use IPv6 to advertise the IPv4 routes. Configure the peering using the IPv6 addresses within the IPv4 address family. Set the next hop with a static route or with an inbound route map because the advertised next hop will usually be unreachable. Advertising IPv6 routes between two IPv4 peers is also possible using the same model.

SUMMARY STEPS

1. enable

2. configure terminal

3. router bgp as-number

4. neighbor peer-group-name peer-group

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

6. address-family ipv4 [mdt | multicast | tunnel | unicast [vrf vrf-name] | vrf vrf-name]

7. neighbor ipv6-address peer-group peer-group-name

8. neighbor {ip-address | peer-group-name | ipv6-address} route-map map-name {in | out}

9. exit

10. Repeat Step 11.

11. route-map map-tag [permit | deny] [sequence-number]

12. set ip next-hop ip-address [... ip-address] [peer-address]

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

router bgp as-number

Example:

Router(config)# router bgp 65000

Enters router configuration mode for the specified routing process.

Step 4 

neighbor peer-group-name peer-group

Example:

Router(config-router)# neighbor 6peers peer-group

Creates a multiprotocol BGP peer group.

Step 5 

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

Example:

Router(config-router)# neighbor 6peers remote-as 65002

Adds the IPv6 address of the neighbor in the specified autonomous system to the IPv6 multiprotocol BGP neighbor table of the local router.

The ipv6-address argument in the neighbor remote-as command must be in the form documented in RFC 2373 where the address is specified in hexadecimal using 16-bit values between colons.

Step 6 

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

Example:

Router(config-router)# address-family ipv4

Enters address family configuration mode to configure a routing session using standard IPv4 address prefixes.

Step 7 

neighbor ipv6-address peer-group peer-group-name

Example:

Router(config-router-af)# neighbor 2001:DB8:yyyy::2 peer-group 6peers

Assigns the IPv6 address of a BGP neighbor to a peer group.

Step 8 

neighbor {ip-address | peer-group-name | ipv6-address} route-map map-name {in | out}

Example:

Router(config-router-af)# neighbor 6peers route-map rmap out

Applies a route map to incoming or outgoing routes.

Changes to the route map will not take effect for existing peers until the peering is reset or a soft reset is performed. Using the clear bgp ipv6 command with the soft and in keywords will perform a soft reset.

Step 9 

exit

Example:

Router(config-router-af)# exit

Exits address family configuration mode, and returns the router to router configuration mode.

Step 10 

Repeat Step 11.

Example:

Router(config-router)# exit

Exits router configuration mode, and returns the router to global configuration mode.

Step 11 

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

Example:

Router(config)# route-map rmap permit 10

Defines a route map and enters route-map configuration mode.

Step 12 

set ip next-hop ip-address [... ip-address] [peer-address]

Example:

Router(config-route-map)# set ip next-hop 10.21.8.10

Overrides the next hop advertised to the peer for IPv4 packets.


Assigning BGP Administrative Distance for Multicast BGP Routes

Perform this task to specify an administrative distance for multicast BGP routes to be used in RPF lookups for comparison with unicast routes.


Caution Changing the administrative distance of BGP internal routes is not recommended. One problem that can occur is the accumulation of routing table inconsistencies, which can break routing.

SUMMARY STEPS

1. enable

2. configure terminal

3. router bgp as-number

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

5. distance bgp external-distance internal-distance local-distance

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

router bgp as-number

Example:

Router(config)# router bgp 65000

Enters router configuration mode for the specified routing process.

Step 4 

address-family ipv6 [vrf vrf-name] [unicast | multicast | vpnv6]

Example:

Router(config-router)# address-family ipv6

Specifies the IPv6 address family, and enters address family configuration mode.

The unicast keyword specifies the IPv6 unicast address family. By default, the router is placed in configuration mode for the IPv6 unicast address family if the unicast keyword is not specified with the address-family ipv6 command.

The multicast keyword specifies IPv6 multicast address prefixes.

Step 5 

distance bgp external-distance internal-distance local-distance

Example:
Router(config-router-af)# distance bgp 10 50 
100 

Configures the administrative distance for BGP routes.


Generating IPv6 Multicast BGP Updates

Perform this task to generate IPv6 multicast BGP updates that correspond to unicast IPv6 updates received from a peer.

The MBGP translate-update feature generally is used in an MBGP-capable router that peers with a customer site that has only a BGP-capable router; the customer site has not or cannot upgrade its router to an MBGP-capable image. Because the customer site cannot originate MBGP advertisements, the router with which it peers will translate the BGP prefixes into MBGP prefixes, which are used for multicast-source Reverse Path Forwarding (RPF) lookup.

SUMMARY STEPS

1. enable

2. configure terminal

3. router bgp as-number

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

5. neighbor ipv6-address translate-update ipv6 multicast [unicast]

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

router bgp as-number

Example:

Router(config)# router bgp 65000

Enters router configuration mode for the specified routing process.

Step 4 

address-family ipv6 [vrf vrf-name] [unicast | multicast | vpnv6]

Example:

Router(config-router)# address-family ipv6

Specifies the IPv6 address family, and enters address family configuration mode.

The unicast keyword specifies the IPv6 unicast address family. By default, the router is placed in configuration mode for the IPv6 unicast address family if the unicast keyword is not specified with the address-family ipv6 command.

The multicast keyword specifies IPv6 multicast address prefixes.

Step 5 

neighbor ipv6-address translate-update ipv6 
multicast [unicast]
Example:
Router(config-router-af)# neighbor 7000::2 
translate-update ipv6 multicast

Generates multiprotocol IPv6 BGP updates that correspond to unicast IPv6 updates received from a peer.


Configuring the IPv6 BGP Graceful Restart Capability

SUMMARY STEPS

1. enable

2. configure terminal

3. router bgp as-number

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

5. bgp graceful-restart [restart-time seconds | stalepath-time seconds] [all]

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

configure terminal

Example:

Router# configure terminal

Enters global configuration mode.

Step 3 

router bgp as-number

Example:

Router(config)# router bgp 65000

Enters router configuration mode for the specified routing process.

Step 4 

address-family ipv6 [vrf vrf-name] [unicast | multicast | vpnv6]

Example:

Router(config-router)# address-family ipv6

Specifies the IPv6 address family.

Step 5 

bgp graceful-restart [restart-time seconds | stalepath-time seconds] [all]

Example:

Router(config-router)# bgp graceful-restart

Enables the BGP graceful restart capability.


Resetting IPv6 BGP Sessions

SUMMARY STEPS

1. enable

2. clear bgp ipv6 {unicast | multicast} {* | autonomous-system-number | ip-address | ipv6-address | peer-group-name} [soft] [in | out]

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

clear bgp ipv6 {unicast | multicast} {* | autonomous-system-number | ip-address | ipv6-address | peer-group-name} [soft] [in | out]

Example:

Router# clear bgp ipv6 unicast peer-group marketing soft out

Resets IPv6 BGP sessions.

Clearing External BGP Peers

SUMMARY STEPS

1. enable

2. clear bgp ipv6 {unicast | multicast} external [soft] [in | out]

3. clear bgp ipv6 {unicast | multicast} peer-group [name]

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

clear bgp ipv6 {unicast | multicast} external [soft] [in | out]

Example:

Router# clear bgp ipv6 unicast external soft in

Clears external IPv6 BGP peers.

Step 3 

clear bgp ipv6 {unicast | multicast} peer-group [name]

Example:

Router# clear bgp ipv6 unicast peer-group

Clears all members of an IPv6 BGP peer group.

Clearing IPv6 BGP Route Dampening Information

SUMMARY STEPS

1. enable

2. clear bgp ipv6 {unicast | multicast} dampening [ipv6-prefix/prefix-length]

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

clear bgp ipv6 {unicast | multicast} dampening [ipv6-prefix/prefix-length]

Example:
Router# clear bgp ipv6 unicast dampening 
2001:DB8::/64

Clears IPv6 BGP route dampening information and unsuppress the suppressed routes.

Clearing IPv6 BGP Flap Statistics

SUMMARY STEPS

1. enable

2. clear bgp ipv6 {unicast | multicast} flap-statistics [ipv6-prefix/prefix-length | regexp regexp | filter-list list]

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

clear bgp ipv6 {unicast | multicast} flap-statistics [ipv6-prefix/prefix-length | regexp regexp | filter-list list]

Example:
Router# clear bgp ipv6 unicast flap-statistics 
filter-list 3

Clears IPv6 BGP flap statistics.

Verifying IPv6 Multiprotocol BGP Configuration and Operation

SUMMARY STEPS

1. show bgp ipv6 {unicast | multicast} [ipv6-prefix/prefix-length] [longer-prefixes] [labels]

2. show bgp ipv6 {unicast | multicast} summary

3. show bgp ipv6 {unicast | multicast} dampening dampened-paths

4. enable

5. debug bgp ipv6 {unicast | multicast} dampening [prefix-list prefix-list-name]

6. debug bgp ipv6 {unicast | multicast} updates [ipv6-address] [prefix-list prefix-list-name] [in | out]

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

show bgp ipv6 {unicast | multicast} [ipv6-prefix/prefix-length] [longer-prefixes] [labels]

Example:

Router> show bgp ipv6 unicast

(Optional) Displays entries in the IPv6 BGP routing table.

Step 2 

show bgp ipv6 {unicast | multicast} summary

Example:

Router> show bgp ipv6 unicast summary

(Optional) Displays the status of all IPv6 BGP connections.

Step 3 

show bgp ipv6 {unicast | multicast} dampening dampened-paths

Example:

Router> show bgp ipv6 unicast dampening dampened-paths

(Optional) Displays IPv6 BGP dampened routes.

Step 4 

enable

Example:

Router> enable

Enables higher privilege levels, such as privileged EXEC mode.

Enter your password if prompted.

Step 5 

debug bgp ipv6 {unicast | multicast} dampening [prefix-list prefix-list-name]

Example:

Router# debug bgp ipv6 unicast dampening

(Optional) Displays debugging messages for IPv6 BGP dampening packets.

If no prefix list is specified, debugging messages for all IPv6 BGP dampening packets are displayed.

Step 6 

debug bgp ipv6 {unicast | multicast} updates [ipv6-address] [prefix-list prefix-list-name] [in | out]

Example:

Router# debug bgp ipv6 unicast updates

(Optional) Displays debugging messages for IPv6 BGP update packets.

If an ipv6-address argument is specified, debugging messages for IPv6 BGP updates to the specified neighbor are displayed.

Use the in keyword to display debugging messages for inbound updates only.

Use the out keyword to display debugging messages for outbound updates only.

Examples

Sample Output from the show bgp ipv6 Command

Sample Output from the show bgp ipv6 summary Command

Sample Output from the show bgp ipv6 dampened-paths Command

Sample Output from the debug bgp ipv6 dampening Command

Sample Output from the debug bgp ipv6 updates Command

Sample Output from the show bgp ipv6 Command

In the following example, entries in the IPv6 BGP routing table are displayed using the show bgp ipv6 command:

Router> show bgp ipv6 unicast

BGP table version is 12612, local router ID is 192.168.99.70
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
*>                  2001:DB8:E:C::2                        0 3748 4697 1752 i
*                   2001:DB8:0:CC00::1
                                                            0 1849 1273 1752 i
*  2001:618:3::/48  2001:DB8:E:4::2          1             0 4554 1849 65002 i
*>                  2001:DB8:0:CC00::1
                                                            0 1849 65002 i
*> 2001:620::/35    2001:DB8:0:F004::1
                                                            0 3320 1275 559 i
*                   2001:DB8:E:9::2                        0 1251 1930 559 i
*                   2001:DB8::A                            0 3462 10566 1930 559 i
*                   2001:DB8:20:1::11
                                                            0 293 1275 559 i
*                   2001:DB8:E:4::2          1             0 4554 1849 1273 559 i
*                   2001:DB8:E:B::2                        0 237 3748 1275 559 i
*                   2001:DB8:E:C::2                        0 3748 1275 559 i

Sample Output from the show bgp ipv6 summary Command

In the following example, the status of all IPv6 BGP connections is displayed using the show bgp ipv6 summary command with the unicast keyword:

Router# show bgp ipv6 unicast summary

BGP router identifier 172.30.4.4, local AS number 200
BGP table version is 1, main routing table version 1

Neighbor           V    AS  MsgRcvd  MsgSent   TblVer  InQ  OutQ  Up/Down   State/PfxRcd
2001:DB8:101::2   4    200    6869     6882        0    0     0  06:25:24  Active

Sample Output from the show bgp ipv6 dampened-paths Command

In the following example, IPv6 BGP dampened routes are displayed using the show bgp ipv6 dampened-paths command with the unicast keyword:

Router# show bgp ipv6 unicast dampening dampened-paths

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

   Network          From             Reuse    Path
*d 3FFE:1000::/24   3FFE:C00:E:B::2  00:00:10 237 2839 5609 i
*d 2001:228::/35    3FFE:C00:E:B::2  00:23:30 237 2839 5609 2713 i

Sample Output from the debug bgp ipv6 dampening Command

In the following example, debugging messages for IPv6 BGP dampening packets are displayed using the debug bgp ipv6 dampening command with the unicast keyword:

Router# debug bgp ipv6 unicast dampening

00:13:28:BGP(1):charge penalty for 2001:DB8:0:1::/64 path 2 1 with halflife-time 15 
reuse/suppress 750/2000
00:13:28:BGP(1):flapped 1 times since 00:00:00. New penalty is 1000
00:13:28:BGP(1):charge penalty for 2001:DB8:0:1:1::/80 path 2 1 with halflife-time 15 
reuse/suppress 750/2000
00:13:28:BGP(1):flapped 1 times since 00:00:00. New penalty is 1000
00:13:28:BGP(1):charge penalty for 2001:DB8:0:5::/64 path 2 1 with halflife-time 15 
reuse/suppress 750/2000
00:13:28:BGP(1):flapped 1 times since 00:00:00. New penalty is 1000
00:16:03:BGP(1):charge penalty for 2001:DB8:0:1::/64 path 2 1 with halflife-time 15 
reuse/suppress 750/2000
00:16:03:BGP(1):flapped 2 times since 00:02:35. New penalty is 1892
00:18:28:BGP(1):suppress 2001:DB8:0:1:1::/80 path 2 1 for 00:27:30 (penalty 2671)
00:18:28:halflife-time 15, reuse/suppress 750/2000
00:18:28:BGP(1):suppress 2001:DB8:0:1::/64 path 2 1 for 00:27:20 (penalty 2664)
00:18:28:halflife-time 15, reuse/suppress 750/2000

Sample Output from the debug bgp ipv6 updates Command

In the following example, debugging messages for IPv6 BGP update packets are displayed using the debug bgp ipv6 updates command with the unicast keyword:

Router# debug bgp ipv6 unicast updates

14:04:17:BGP(1):2001:DB8:0:2::2 computing updates, afi 1, neighbor version 0, table 
version 1, starting at ::
14:04:17:BGP(1):2001:DB8:0:2::2 update run completed, afi 1, ran for 0ms, neighbor version 
0, start version 1, throttled to 1
14:04:19:BGP(1):sourced route for 2001:DB8:0:2::1/64 path #0 changed (weight 32768)
14:04:19:BGP(1):2001:DB8:0:2::1/64 route sourced locally
14:04:19:BGP(1):2001:DB8:0:2:1::/80 route sourced locally
14:04:19:BGP(1):2001:DB8:0:3::2/64 route sourced locally
14:04:19:BGP(1):2001:DB8:0:4::2/64 route sourced locally
14:04:22:BGP(1):2001:DB8:0:2::2 computing updates, afi 1, neighbor version 1, table 
version 6, starting at ::
14:04:22:BGP(1):2001:DB8:0:2::2 send UPDATE (format) 2001:DB8:0:2::1/64, next 
2001:DB8:0:2::1, metric 0, path 
14:04:22:BGP(1):2001:DB8:0:2::2 send UPDATE (format) 2001:DB8:0:2:1::/80, next 
2001:DB8:0:2::1, metric 0, path 
14:04:22:BGP(1):2001:DB8:0:2::2 send UPDATE (prepend, chgflags:0x208) 2001:DB8:0:3::2/64, 
next 2001:DB8:0:2::1, metric 0, path 
14:04:22:BGP(1):2001:DB8:0:2::2 send UPDATE (prepend, chgflags:0x208) 2001:DB8:0:4::2/64, 
next 2001:DB8:0:2::1, metric 0, path 

Configuration Examples for Multiprotocol BGP for IPv6

Example: Configuring a BGP Process, BGP Router ID, and IPv6 Multiprotocol BGP Peer

Example: Configuring an IPv6 Multiprotocol BGP Peer Using a Link-Local Address

Example: Configuring an IPv6 Multiprotocol BGP Peer Group

Example: Advertising IPv4 Routes Between IPv6 Peers

Example: Configuring a BGP Process, BGP Router ID, and IPv6 Multiprotocol BGP Peer

The following example enables IPv6 globally, configures a BGP process, and establishes a BGP router ID. Also, the IPv6 multiprotocol BGP peer 2001:DB8:0:CC00:: is configured and activated.

ipv6 unicast-routing
!
router bgp 65000
no bgp default ipv4-unicast
bgp router-id 192.168.99.70
neighbor 2001:DB8:0:CC00::1 remote-as 64600

address-family ipv6 unicast
  neighbor 2001:DB8:0:CC00::1 activate

Example: Configuring an IPv6 Multiprotocol BGP Peer Using a Link-Local Address

The following example configures the IPv6 multiprotocol BGP peer FE80::XXXX:BFF:FE0E:A471 over Gigabit Ethernet interface 0/0/0 and sets the route map named nh6 to include the IPv6 next-hop global address of Gigabit Ethernet interface 0/0/0 in BGP updates. The IPv6 next-hop link-local address can be set by the nh6 route map (not shown in the following example) or from the interface specified by the neighbor update-source command (as shown in the following example).

router bgp 65000
 neighbor FE80::XXXX:BFF:FE0E:A471 remote-as 64600
 neighbor FE80::XXXX:BFF:FE0E:A471 update-source gigabitethernet0/0/0

address-family ipv6
 neighbor FE80::XXXX:BFF:FE0E:A471 activate
 neighbor FE80::XXXX:BFF:FE0E:A471 route-map nh6 out

route-map nh6 permit 10
 match ipv6 address prefix-list cisco
 set ipv6 next-hop 2001:DB8:5y6::1

ipv6 prefix-list cisco permit 2001:DB8:2Fy2::/48 le 128
ipv6 prefix-list cisco deny ::/0

Note If you specify only the global IPv6 next-hop address (the ipv6-address argument) with the set ipv6 next-hop command after specifying the neighbor interface (the interface-type argument) with the neighbor update-source command, the link-local address of the interface specified with the interface-type argument is included as the next hop in the BGP updates. Therefore, only one route map that sets the global IPv6 next-hop address in BGP updates is required for multiple BGP peers that use link-local addresses.


Example: Configuring an IPv6 Multiprotocol BGP Peer Group

The following example configures the IPv6 multiprotocol BGP peer group named group1:

router bgp 65000
no bgp default ipv4-unicast
neighbor group1 peer-group
neighbor 2001:DB8:0:CC00::1 remote-as 64600

address-family ipv6 unicast
 neighbor group1 activate
 neighbor 2001:DB8:0:CC00::1 peer-group group1

Example: Advertising IPv4 Routes Between IPv6 Peers

The following example advertises IPv4 routes between IPv6 peers when the IPv6 network is connecting two separate IPv4 networks. Peering is configured using IPv6 addresses in the IPv4 address family configuration mode. The inbound route map named rmap sets the next hop because the advertised next hop is likely to be unreachable.

router bgp 65000
!
 neighbor 6peers peer-group
 neighbor 2001:DB8:yyyy::2 remote-as 65002
 address-family ipv4
 neighbor 6peers activate
 neighbor 6peers soft-reconfiguration inbound
 neighbor 2001:DB8:yyyy::2 peer-group 6peers
 neighbor 2001:DB8:yyyy::2 route-map rmap in
!   
route-map rmap permit 10
 set ip next-hop 10.21.8.10

Where to Go Next

If you want to implement more IPv6 routing protocols, refer to the Implementing RIP for IPv6 or the Implementing IS-IS for IPv6 module.

Additional References

Related Documents

Related Topic
Document Title

BGP and multiprotocol BGP commands: complete command syntax, command mode, defaults, usage guidelines, and examples

"BGP Commands," Cisco IOS IP Routing Protocols Command Reference

Cisco Nonstop Forwarding

"Cisco Nonstop Forwarding," Cisco IOS XE High Availability Configuration Guide

IPv6 supported feature list

"Start Here: Cisco IOS XE Software Release Specifics for IPv6 Features," Cisco IOS XE IPv6 Configuration Guide

IPv6 commands: complete command syntax, command mode, defaults, usage guidelines, and examples

Cisco IOS IPv6 Command Reference

Cisco IOS master command list, all  releases

Cisco IOS Master Command List, All Releases


Standards

Standards
Title

No new or modified standards are supported by this feature, and support for existing standards has not been modified by this feature.


MIBs

MIBs
MIBs Link

None

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

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


RFCs

RFCs
Title

RFC 2545

Use of BGP-4 Multiprotocol Extensions for IPv6 Inter-Domain Routing

RFC 2858

Multiprotocol Extensions for BGP-4

RFC 4007

IPv6 Scoped Address Architecture

RFC 4364

BGP MPLS/IP Virtual Private Networks (VPNs)

RFC 4382

MPLS/BGP Layer 3 Virtual Private Network (VPN) Management Information Base

RFC 4659

BGP-MPLS IP Virtual Private Network (VPN) Extension for IPv6 VPN

RFC 4724

Graceful Restart Mechanism for BGP


Technical Assistance

Description
Link

The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password.

http://www.cisco.com/cisco/web/support/index.html


Feature Information for Implementing Multiprotocol BGP
for IPv6

Table 6 lists the features in this module and provides links to specific configuration information.

Use Cisco Feature Navigator to find information about platform support and software image support. Cisco Feature Navigator enables you to determine which software images support a specific software release, feature set, or platform. To access Cisco Feature Navigator, go to http://www.cisco.com/go/cfn. An account on Cisco.com is not required.


Note Table 6 lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.


Table 6 Feature Information for Implementing Multiprotocol BGP for IPv6 

Feature Name
Releases
Feature Information

IPv6—NSF and Graceful Restart for MP-BGP IPv6 Address Family

Cisco IOS XE Release 3.1S

IPv6 BGP supports Cisco Nonstop Forwarding and graceful restart.

The following sections provide information about this feature:

Multiprotocol BGP for the IPv6 Multicast Address Family

Configuring the IPv6 BGP Graceful Restart Capability

IPv6 Multicast Address Family Support for Multiprotocol BGP

Cisco IOS XE Release 2.1

The multiprotocol BGP for the IPv6 multicast address family feature provides multicast BGP extensions for IPv6 and supports the same features and functionality as IPv4 BGP.

The following sections provide information about this feature:

Multiprotocol BGP for the IPv6 Multicast Address Family

How to Implement Multiprotocol BGP for IPv6

IPv6 Routing—Multiprotocol BGP Extensions for IPv6

Cisco IOS XE Release 2.1

Multiprotocol BGP extensions for IPv6 supports the same features and functionality as IPv4 BGP.

The following sections provide information about this feature:

Multiprotocol BGP Extensions for IPv6

How to Implement Multiprotocol BGP for IPv6

IPv6 Routing—Multiprotocol BGP Link-Local Address Peering

Cisco IOS XE Release 2.1

IPv6 supports multiprotocol BGP link-local address peering.

The following sections provide information about this feature:

Configuring IPv6 Multiprotocol BGP Between Two Peers Using Link-Local Addresses