- Cisco BGP Overview
- BGP 4
- BGP NSF Awareness
- BGP Neighbor Policy
- BGP Route-Map Continue
- BGP Route-Map Continue Support for Outbound Policy
- IPv6 Routing: Multiprotocol BGP Extensions for IPv6
- IPv6 Routing: Multiprotocol BGP Link-Local Address Peering
- BGP Restart Neighbor Session After Max-Prefix Limit Reached
- BGP 4 Soft Configuration
- BGP Soft Reset
- BGP Named Community Lists
- BGP 4 Prefix Filter and Inbound Route Maps
- BGP Prefix-Based Outbound Route Filtering
- Finding Feature Information
- Information About IPv6 Routing: Multiprotocol BGP Extensions for IPv6
- How to Implement Multiprotocol BGP for IPv6
- Configuring an IPv6 BGP Routing Process and BGP Router ID
- Configuring IPv6 Multiprotocol BGP Between Two Peers
- Advertising Routes into IPv6 Multiprotocol BGP
- Configuring a Route Map for IPv6 Multiprotocol BGP Prefixes
- Redistributing Prefixes into IPv6 Multiprotocol BGP
- Clearing External BGP Peers
- Advertising IPv4 Routes Between IPv6 BGP Peers
- 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 Group
- Example: Advertising Routes into IPv6 Multiprotocol BGP
- Example: Configuring a Route Map for IPv6 Multiprotocol BGP Prefixes
- Example: Redistributing Prefixes into IPv6 Multiprotocol BGP
- Example: Advertising IPv4 Routes Between IPv6 Peers
- Additional References
- Feature Information for IPv6 Routing: Multiprotocol BGP Extensions for IPv6
IPv6 Routing: Multiprotocol BGP Extensions for IPv6
Finding Feature Information
Your software release may not support all the features documented in this module. For the latest caveats and feature information, see Bug Search Tool and 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 table at the end of this module.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Information About IPv6 Routing: Multiprotocol BGP Extensions for IPv6
Multiprotocol BGP Extensions for IPv6
Multiprotocol BGP is the supported Exterior Gateway Protocol (EGP) for IPv6. Multiprotocol BGP extensions for IPv6 supports many of 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 device in the path to the destination) attributes that use IPv6 addresses.
How to Implement Multiprotocol BGP for IPv6
Configuring an IPv6 BGP Routing Process and BGP Router ID
Perform this task to configure an IPv6 BGP routing process and an optional BGP router ID for a BGP-speaking device.
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 router ID is set to the IPv4 address of a loopback interface on the device. If no loopback interface is configured on the device, then the software chooses the highest IPv4 address configured to a physical interface on the device to represent the BGP router ID.
When configuring BGP on a device that is enabled only for IPv6 (that is, the device does not have an IPv4 address), you must manually configure the BGP router ID for the device. 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 device.
1.
enable
2.
configure
terminal
3.
router
bgp
as-number
4.
no
bgp
default
ipv4-unicast
5.
bgp
router-id
ip-address
DETAILED STEPS
Configuring IPv6 Multiprotocol BGP Between Two Peers
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.
1.
enable
2.
configure
terminal
3.
router
bgp
as-number
4.
neighbor
{ip-address |
ipv6-address [%] |
peer-group-name}
remote-as
autonomous-system-number [alternate-as
autonomous-system-number ...]
5.
address-family
ipv6
[unicast |
multicast]
6.
neighbor
{ip-address |
peer-group-name |
ipv6-address
%}
activate
DETAILED STEPS
Command or Action | Purpose | |
---|---|---|
Step 1 |
enable
Example: Device> enable |
Enables privileged EXEC mode. |
Step 2 |
configure
terminal
Example: Device# configure terminal |
Enters global configuration mode. |
Step 3 |
router
bgp
as-number
Example: Device(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
autonomous-system-number [alternate-as
autonomous-system-number ...]
Example: Device(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 device. |
Step 5 |
address-family
ipv6
[unicast |
multicast]
Example: Device(config-router)# address-family ipv6 |
Specifies the IPv6 address family and enters address family configuration mode. |
Step 6 |
neighbor
{ip-address |
peer-group-name |
ipv6-address
%}
activate
Example: Device(config-router-af)# neighbor 2001:DB8:0:CC00::1 activate |
Enables the neighbor to exchange prefixes for the IPv6 address family with the local device. |
Advertising Routes into IPv6 Multiprotocol BGP
By default, networks that are defined in router configuration mode using the network command are injected into the IPv4 unicast database. To inject a network into another database, such as the IPv6 BGP database, you must define the network using the network command in address family configuration mode for the other database, as shown for the IPv6 BGP database.
1.
enable
2.
configure
terminal
3.
router
bgp
as-number
4.
address-family
ipv6
[vrf
vrf-name] [unicast |
multicast |
vpnv6]
5.
network
{network-number [mask
network-mask] |
nsap-prefix} [route-map
map-tag]
6.
exit
DETAILED STEPS
Command or Action | Purpose | |
---|---|---|
Step 1 |
enable
Example: Device> enable |
Enables privileged EXEC mode. |
Step 2 |
configure
terminal
Example: Device# configure terminal |
Enters global configuration mode. |
Step 3 |
router
bgp
as-number
Example: Device(config)# router bgp 65000 |
Enters router configuration mode for the specified BGP routing process. |
Step 4 |
address-family
ipv6
[vrf
vrf-name] [unicast |
multicast |
vpnv6]
Example: Device(config-router)# address-family ipv6 unicast |
Specifies the IPv6 address family, and enters address family configuration mode. |
Step 5 |
network
{network-number [mask
network-mask] |
nsap-prefix} [route-map
map-tag]
Example: Device(config-router-af)# network 2001:DB8::/24 |
Advertises (injects) the specified prefix into the IPv6 BGP database (the routes must first be found in the IPv6 unicast routing table).
|
Step 6 |
exit
Example: Device(config-router-af)# exit |
Exits address family configuration mode, and returns the device to router configuration mode. |
Configuring a Route Map for IPv6 Multiprotocol BGP Prefixes
- 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.
1.
enable
2.
configure
terminal
3.
router
bgp
as-number
4.
neighbor
{ip-address |
ipv6-address[%] |
peer-group-name}
remote-as
autonomous-system-number [alternate-as
autonomous-system-number ...]
5.
address-family
ipv6
[vrf
vrf-name] [unicast |
multicast |
vpnv6]
6.
neighbor
{ip-address |
peer-group-name |
ipv6-address
%}
activate
7.
neighbor
{ip-address |
peer-group-name |
ipv6-address [%]}
route-map
map-name {in |
out}
8.
exit
9.
exit
10.
route-map
map-tag
[permit |
deny] [sequence-number]
11.
match
ipv6
address
{prefix-list
prefix-list-name |
access-list-name}
DETAILED STEPS
Command or Action | Purpose | |
---|---|---|
Step 1 |
enable
Example: Device> enable |
Enables privileged EXEC mode. |
Step 2 |
configure
terminal
Example: Device# configure terminal |
Enters global configuration mode. |
Step 3 |
router
bgp
as-number
Example: Device(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
autonomous-system-number [alternate-as
autonomous-system-number ...]
Example: Device(config-router)# neighbor 2001:DB8:0:cc00::1 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 device. |
Step 5 |
address-family
ipv6
[vrf
vrf-name] [unicast |
multicast |
vpnv6]
Example: Device(config-router)# address-family ipv6 |
Specifies the IPv6 address family, and enters address family configuration mode. |
Step 6 |
neighbor
{ip-address |
peer-group-name |
ipv6-address
%}
activate
Example: Device(config-router-af)# neighbor 2001:DB8:0:cc00::1 activate |
Enables the neighbor to exchange prefixes for the IPv6 address family with the local device using the specified link-local addresses. |
Step 7 |
neighbor
{ip-address |
peer-group-name |
ipv6-address [%]}
route-map
map-name {in |
out}
Example: Device(config-router-af)# neighbor 2001:DB8:0:cc00::1 route-map rtp in |
Applies a route map to incoming or outgoing routes. |
Step 8 |
exit
Example: Device(config-router-af)# exit |
Exits address family configuration mode, and returns the device to router configuration mode. |
Step 9 |
exit
Example: Device(config-router)# exit |
Exits router configuration mode, and returns the device to global configuration mode. |
Step 10 |
route-map
map-tag
[permit |
deny] [sequence-number]
Example: Device(config)# route-map rtp permit 10 |
Defines a route map and enters route-map configuration mode. |
Step 11 |
match
ipv6
address
{prefix-list
prefix-list-name |
access-list-name}
Example: Device(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. |
Redistributing Prefixes into IPv6 Multiprotocol BGP
Redistribution is the process of redistributing, or injecting, prefixes from one routing protocol into another routing protocol. This task explains how to inject prefixes from a routing protocol into IPv6 multiprotocol BGP. Specifically, prefixes that are redistributed into IPv6 multiprotocol BGP using the redistribute router configuration command are injected into the IPv6 unicast database.
1.
enable
2.
configure
terminal
3.
router
bgp
as-number
4.
address-family
ipv6
[vrf
vrf-name]
[unicast |
multicast |
vpnv6]
5.
redistribute
bgp
[process-id]
[metric
metric-value]
[route-map
map-name]
[source-protocol-options]
6.
exit
DETAILED STEPS
Command or Action | Purpose | |
---|---|---|
Step 1 |
enable
Example: Device> enable |
Enables privileged EXEC mode. |
Step 2 |
configure
terminal
Example: Device# configure terminal |
Enters global configuration mode. |
Step 3 |
router
bgp
as-number
Example: Device(config)# router bgp 65000 |
Enters router configuration mode for the specified BGP routing process. |
Step 4 |
address-family
ipv6
[vrf
vrf-name]
[unicast |
multicast |
vpnv6]
Example: Device(config-router)# address-family ipv6 |
Specifies the IPv6 address family, and enters address family configuration mode. |
Step 5 |
redistribute
bgp
[process-id]
[metric
metric-value]
[route-map
map-name]
[source-protocol-options]
Example: Device(config-router-af)# redistribute bgp 64500 metric 5 |
Redistributes IPv6 routes from one routing domain into another routing domain. |
Step 6 |
exit
Example: Device(config-router-af)# exit |
Exits address family configuration mode, and returns the device to router configuration mode. |
Clearing External BGP Peers
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: Device> enable |
Enables privileged EXEC mode. |
Step 2 |
clear
bgp
ipv6
{unicast |
multicast}
external [soft] [in |
out]
Example: Device# clear bgp ipv6 unicast external soft in |
Clears external IPv6 BGP peers. |
Step 3 |
clear
bgp
ipv6
{unicast |
multicast}
peer-group
name
Example: Device# clear bgp ipv6 unicast peer-group marketing |
Clears all members of an IPv6 BGP peer group. |
Advertising IPv4 Routes Between IPv6 BGP Peers
If an IPv6 network is connecting two separate IPv4 networks, IPv6 can be used 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.
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
autonomous-system-number [alternate-as
autonomous-system-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.
exit
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: Device> enable |
Enables privileged EXEC mode. |
Step 2 |
configure
terminal
Example: Device# configure terminal |
Enters global configuration mode. |
Step 3 |
router
bgp
as-number
Example: Device(config)# router bgp 65000 |
Enters router configuration mode for the specified routing process. |
Step 4 |
neighbor
peer-group-name
peer-group
Example: Device(config-router)# neighbor 6peers peer-group |
Creates a multiprotocol BGP peer group. |
Step 5 |
neighbor
{ip-address |
ipv6-address[%] |
peer-group-name}
remote-as
autonomous-system-number [alternate-as
autonomous-system-number ...]
Example: Device(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 device. |
Step 6 |
address-family
ipv4
[mdt |
multicast |
tunnel |
unicast [vrf
vrf-name] |
vrf
vrf-name]
Example: Device(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: Device(config-router-af)# neighbor 2001:DB8:1234::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: Device(config-router-af)# neighbor 6peers route-map rmap out |
Applies a route map to incoming or outgoing routes. |
Step 9 |
exit
Example: Device(config-router-af)# exit |
Exits address family configuration mode, and returns the device to router configuration mode. |
Step 10 |
exit
Example: Device(config-router)# exit |
Exits router configuration mode, and returns the device to global configuration mode. |
Step 11 |
route-map
map-tag
[permit |
deny] [sequence-number]
Example: Device(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: Device(config-route-map)# set ip next-hop 10.21.8.10 |
Overrides the next hop advertised to the peer for IPv4 packets. |
Configuration Examples for Multiprotocol BGP for IPv6
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::1 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 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 Routes into IPv6 Multiprotocol BGP
The following example injects the IPv6 network 2001:DB8::/24 into the IPv6 unicast database of the local device. (BGP checks that a route for the network exists in the IPv6 unicast database of the local device before advertising the network.)
router bgp 65000 no bgp default ipv4-unicast address-family ipv6 unicast network 2001:DB8::/24
Example: Configuring a Route Map for IPv6 Multiprotocol BGP Prefixes
The following example configures the route map named rtp to permit IPv6 unicast routes from network 2001:DB8::/24 if they match the prefix list named cisco:
router bgp 64900 no bgp default ipv4-unicast neighbor 2001:DB8:0:CC00::1 remote-as 64700 address-family ipv6 unicast neighbor 2001:DB8:0:CC00::1 activate neighbor 2001:DB8:0:CC00::1 route-map rtp in ipv6 prefix-list cisco seq 10 permit 2001:DB8::/24 route-map rtp permit 10 match ipv6 address prefix-list cisco
Example: Redistributing Prefixes into IPv6 Multiprotocol BGP
The following example redistributes RIP routes into the IPv6 unicast database of the local device:
router bgp 64900 no bgp default ipv4-unicast address-family ipv6 unicast redistribute rip
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:1234::2 remote-as 65002 address-family ipv4 neighbor 6peers activate neighbor 6peers soft-reconfiguration inbound neighbor 2001:DB8:1234::2 peer-group 6peers neighbor 2001:DB8:1234::2 route-map rmap in ! route-map rmap permit 10 set ip next-hop 10.21.8.10
Additional References
Related Documents
Related Topic |
Document Title |
---|---|
IPv6 addressing and connectivity |
IPv6 Configuration Guide |
Cisco IOS commands |
|
IPv6 commands |
|
Cisco IOS IPv6 features |
Standards and RFCs
Standard/RFC |
Title |
---|---|
RFCs for IPv6 |
MIBs
MIB |
MIBs Link |
---|---|
— |
To locate and download MIBs for selected platforms, Cisco IOS releases, and feature sets, use Cisco MIB Locator found at the following URL: |
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. |
Feature Information for IPv6 Routing: Multiprotocol BGP Extensions for IPv6
The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Feature Name |
Releases |
Feature Information |
---|---|---|
IPv6 Routing: Multiprotocol BGP Extensions for IPv6 |
Cisco IOS XE Release 3.3SE |
Multiprotocol BGP Extensions for IPv6 supports the same features and functionality as IPv4 BGP. In Cisco IOS XE Release 3.3SE, support was added for the Cisco Catalyst 3650 Series Switches and Cisco Catalyst 3850 Series Switches. |