The BGP Support for Next-Hop Address Tracking feature is enabled by default when a supporting Cisco software image is installed. BGP next-hop address tracking is event driven. BGP prefixes are automatically tracked as peering sessions are established. Next-hop changes are rapidly reported to the BGP routing process as they are updated in the RIB. This optimization improves overall BGP convergence by reducing the response time to next-hop changes for routes installed in the RIB. When a bestpath calculation is run in between BGP scanner cycles, only next-hop changes are tracked and processed.
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 BGP Support for Next-Hop Address Tracking
BGP Next-Hop Address Tracking
The BGP next-hop address tracking feature is enabled by default when a supporting Cisco software image is installed. BGP next-hop address tracking is event driven. BGP prefixes are automatically tracked as peering sessions are established. Next-hop changes are rapidly reported to the BGP routing process as they are updated in the RIB. This optimization improves overall BGP convergence by reducing the response time to next-hop changes for routes installed in the RIB. When a best-path calculation is run in between BGP scanner cycles, only next-hop changes are tracked and processed.
Default BGP Scanner Behavior
BGP monitors the next hop of installed routes to verify next-hop reachability and to select, install, and validate the BGP best path. By default, the BGP scanner is used to poll the RIB for this information every 60 seconds. During the 60 second time period between scan cycles, Interior Gateway Protocol (IGP) instability or other network failures can cause black holes and routing loops to temporarily form.
BGP Next_Hop Attribute
The Next_Hop attribute identifies the next-hop IP address to be used as the BGP next hop to the destination. The router makes a recursive lookup to find the BGP next hop in the routing table. In external BGP (eBGP), the next hop is the IP address of the peer that sent the update. Internal BGP (iBGP) sets the next-hop address to the IP address of the peer that advertised the prefix for routes that originate internally. When any routes to iBGP that are learned from eBGP are advertised, the Next_Hop attribute is unchanged.
A BGP next-hop IP address must be reachable in order for the router to use a BGP route. Reachability information is usually provided by the IGP, and changes in the IGP can influence the forwarding of the next-hop address over a network backbone.
Selective BGP Next-Hop Route Filtering
BGP selective next-hop route filtering was implemented as part of the BGP Selective Address Tracking feature to support BGP next-hop address tracking. Selective next-hop route filtering uses a route map to selectively define routes to help resolve the BGP next hop.
The ability to use a route map with the
bgpnexthopcommand allows the configuration of the length of a prefix that applies to the BGP Next_Hop attribute. The route map is used during the BGP bestpath calculation and is applied to the route in the routing table that covers the next-hop attribute for BGP prefixes. If the next-hop route fails the route map evaluation, the next-hop route is marked as unreachable. This command is per address family, so different route maps can be applied for next-hop routes in different address families.
Note
Only
matchipaddress and
matchsource-protocol commands are supported in the route map. No
set commands or other
match commands are supported.
By default, the BGP hold timer is set to run every 180 seconds in Cisco software. This timer value is set as the default to protect the BGP routing process from instability that can be caused by peering sessions with other routing protocols. BGP routers typically carry large routing tables, so frequent session resets are not desirable.
BGP Fast Peering Session Deactivation
BGP fast peering session deactivation improves BGP convergence and response time to adjacency changes with BGP neighbors. This feature is event driven and configured on a per-neighbor basis. When this feature is enabled, BGP will monitor the peering session with the specified neighbor. Adjacency changes are detected and terminated peering sessions are deactivated in between the default or configured BGP scanning interval.
Selective Address Tracking for BGP Fast Session Deactivation
In Cisco IOS XE Release 2.1 and later releases, the BGP Selective Address Tracking feature introduced the use of a route map with BGP fast session deactivation. The route-map keyword and map-name argument are used with the neighborfall-over BGP neighbor session command to determine if a peering session with a BGP neighbor should be reset when a route to the BGP peer changes. The route map is evaluated against the new route, and if a deny statement is returned, the peer session is reset. The route map is not used for session establishment.
Note
Only matchipaddress and matchsource-protocol commands are supported in the route map. No set commands or other match commands are supported.
How to Configure BGP Support for Next-Hop Address Tracking
Configuring BGP Next-Hop Address Tracking
The tasks in this section show how configure BGP next-hop address tracking. BGP next-hop address tracking significantly improves the response time of BGP to next-hop changes in the RIB. However, unstable Interior Gateway Protocol (IGP) peers can introduce instability to BGP neighbor sessions. We recommend that you aggressively dampen unstable IGP peering sessions to reduce the possible impact to BGP. For more details about configuring route dampening, see “Configuring BGP Route Dampening.”
Perform this task to configure selective next-hop route filtering using a route map to filter potential next-hop routes. This task uses prefix lists and route maps to match IP addresses or source protocols and can be used to avoid aggregate addresses and BGP prefixes being considered as next-hop routes. Only
matchipaddress and
matchsource-protocol commands are supported in the route map. No
set commands or other
match commands are supported.
For more examples of how to use the
bgpnexthop command, see the “Examples: Configuring BGP Selective Next-Hop Route Filtering” section in this module.
Specifies the IPv4 address family and enters address family configuration mode.
The
unicast keyword specifies the IPv4 unicast address family. By default, the router is placed in address family configuration mode for the IPv4 unicast address family if the
unicast keyword is not specified with the
address-familyipv4 command.
The
multicast keyword specifies IPv4 multicast address prefixes.
The
vrf keyword and
vrf-name argument specify the name of the VRF instance to associate with subsequent IPv4 address family configuration mode commands.
Device(config)# ip prefix-list FILTER25 seq 5 permit 0.0.0.0/0 le 25
Creates a prefix list for BGP next-hop route filtering.
Selective next-hop route filtering supports prefix length matching or source protocol matching on a per address-family basis.
The example creates a prefix list named FILTER25 that permits routes only if the mask length is more than 25; this will avoid aggregate routes being considered as the next-hop route.
Configures a route map and enters route map configuration mode.
In this example, a route map named CHECK-NEXTHOP is created. If there is an IP address match in the following
match command, the IP address will be denied.
Configures a route map and enters route map configuration mode.
In this example, all other IP addresses are permitted by route map CHECK-NEXTHOP.
Step 13
end
Example:
Device(config-route-map)# end
Exits route map configuration mode and enters privileged EXEC mode.
Step 14
showipbgp [network] [network-mask]
Example:
Device# show ip bgp
Displays the entries in the BGP routing table.
Enter this command to view the next-hop addresses for each route.
Note
Only the syntax applicable to this task is used in this example. For more details, see the
Cisco IOS IP Routing: BGP Command Reference.
Example
The following example from the
showipbgp command shows the next-hop addresses for each route:
BGP table version is 7, local router ID is 172.17.1.99
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
* 10.1.1.0/24 192.168.1.2 0 0 40000 i
* 10.2.2.0/24 192.168.3.2 0 0 50000 i
*> 172.16.1.0/24 0.0.0.0 0 32768 i
*> 172.17.1.0/24 0.0.0.0 0 32768
Adjusting the Delay Interval for BGP Next-Hop Address Tracking
Perform this task to adjust the delay interval between routing table walks for BGP next-hop address tracking.
You can increase the performance of this feature by tuning the delay interval between full routing table walks to match the tuning parameters for the Interior Gateway protocol (IGP). The default delay interval is 5 seconds. This value is optimal for a fast-tuned IGP. In the case of an IGP that converges more slowly, you can change the delay interval to 20 seconds or more, depending on the IGP convergence time.
BGP next-hop address tracking significantly improves the response time of BGP to next-hop changes in the RIB. However, unstable Interior Gateway Protocol (IGP) peers can introduce instability to BGP neighbor sessions. We recommend that you aggressively dampen unstable IGP peering sessions to reduce the possible impact to BGP.
Configures the delay interval between routing table walks for next-hop address tracking.
The time period determines how long BGP will wait before starting a full routing table walk after notification is received.
The value for the
delay-timer argument is a number from 1 to 100 seconds. The default value is 5 seconds.
The example configures a delay interval of 20 seconds.
Step 6
end
Example:
Router(config-router-af)# end
Exits address-family configuration mode, and enters privileged EXEC mode.
Disabling BGP Next-Hop Address Tracking
Perform this task to disable BGP next-hop address tracking. BGP next-hop address tracking is enabled by default under the IPv4 and VPNv4 address families. Beginning with Cisco IOS Release 12.2(33)SB6, BGP next-hop address tracking is also enabled by default under the VPNv6 address family whenever the next hop is an IPv4 address mapped to an IPv6 next-hop address.
Disabling next hop address tracking may be useful if you the network has unstable IGP peers and route dampening is not resolving the stability issues. To reenable BGP next-hop address tracking, use thebgpnexthopcommand with the triggerandenablekeywords.
Enter address family configuration mode to configure BGP peers to accept address family-specific configurations.
The example creates an IPv4 unicast address family session.
Step 5
nobgpnexthoptriggerenable
Example:
Router(config-router-af)# no bgp nexthop trigger enable
Disables BGP next-hop address tracking.
Next-hop address tracking is enabled by default for IPv4 and VPNv4 address family sessions.
The example disables next-hop address tracking.
Step 6
end
Example:
Router(config-router-af)# end
Exits address-family configuration mode, and enters Privileged EXEC mode.
Configuring Fast Session Deactivation
The tasks in this section show how to configure BGP next-hop address tracking. BGP next-hop address tracking significantly improves the response time of BGP to next-hop changes in the RIB. However, unstable Interior Gateway Protocol (IGP) peers can introduce instability to BGP neighbor sessions. We recommend that you aggressively dampen unstable IGP peering sessions to reduce the possible impact to BGP. For more details about route dampening, see the "Configuring Internal BGP Features" module.
Configuring Fast Session Deactivation for a BGP Neighbor
Perform this task to establish a peering session with a BGP neighbor and then configure the peering session for fast session deactivation to improve the network convergence time if the peering session is deactivated.
Enabling fast session deactivation for a BGP neighbor can significantly improve BGP convergence time. However, unstable IGP peers can still introduce instability to BGP neighbor sessions. We recommend that you aggressively dampen unstable IGP peering sessions to reduce the possible impact to BGP.
Configures the BGP peering to use fast session deactivation.
BGP will remove all routes learned through this peer if the session is deactivated.
Step 7
end
Example:
Router(config-router-af)# end
Exits configuration mode and returns to privileged EXEC mode.
Configuring Selective Address Tracking for Fast Session Deactivation
Perform this task to configure selective address tracking for fast session deactivation. The optional
route-map keyword and
map-name argument of the
neighborfall-over command are used to determine if a peering session with a BGP neighbor should be deactivated (reset) when a route to the BGP peer changes. The route map is evaluated against the new route, and if a deny statement is returned, the peer session is reset.
Note
Only
matchipaddress and
matchsource-protocol commands are supported in the route map. No
set commands or other
match commands are supported.
Adds the IP address or peer group name of the neighbor in the specified autonomous system to the IPv4 multiprotocol BGP neighbor table of the local router.
Router(config)# ip prefix-list FILTER28 seq 5 permit 0.0.0.0/0 ge 28
Creates a prefix list for BGP next-hop route filtering.
Selective next-hop route filtering supports prefix length matching or source protocol matching on a per-address-family basis.
The example creates a prefix list named FILTER28 that permits routes only if the mask length is greater than or equal to 28.
Step 8
route-mapmap-name[permit|deny][sequence-number]
Example:
Router(config)# route-map CHECK-NBR permit 10
Configures a route map and enters route-map configuration mode.
In this example, a route map named CHECK-NBR is created. If there is an IP address match in the following
match command, the IP address will be permitted.
The following example shows how to configure BGP selective next-hop route filtering to avoid using a BGP prefix as the next-hop route. If the most specific route that covers the next hop is a BGP route, then the BGP route will be marked as unreachable. The next hop must be an IGP or static route.
The following example shows how to configure BGP selective next-hop route filtering to avoid using a BGP prefix as the next-hop route and to ensure that the prefix is more specific than /25.
router bgp 45000
address-family ipv4 unicast
bgp nexthop route-map CHECK-BGP25
exit
exit
ip prefix-list FILTER25 seq 5 permit 0.0.0.0/0 le 25
route-map CHECK-BGP25 deny 10
match ip address prefix-list FILTER25
exit
route-map CHECK-BGP25 deny 20
match source-protocol bgp 1
exit
route-map CHECK-BGP25 permit 30
end
Example: Configuring Fast Session Deactivation for a BGP Neighbor
In the following example, the BGP routing process is configured on Router A and Router B to monitor and use fast peering session deactivation for the neighbor session between the two routers. Although fast peering session deactivation is not required at both routers in the neighbor session, it will help the BGP networks in both autonomous systems to converge faster if the neighbor session is deactivated.
Example: Configuring Selective Address Tracking for Fast Session Deactivation
The following example shows how to configure the BGP peering session to be reset if a route with a prefix of /28 or a more specific route to a peer destination is no longer available:
router bgp 45000
neighbor 192.168.1.2 remote-as 40000
neighbor 192.168.1.2 fall-over route-map CHECK-NBR
exit
ip prefix-list FILTER28 seq 5 permit 0.0.0.0/0 ge 28
route-map CHECK-NBR permit 10
match ip address prefix-list FILTER28
end
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 BGP Support for Next-Hop Address Tracking
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.
Table 1 Feature Information for BGP Support for Next-Hop Address Tracking
Feature Name
Releases
Feature Information
BGP Support for Next-Hop Address Tracking
12.0(29)S
12.3(14)T
12.2(33)SXH
15.0(1)S
15.1(1)SG
Cisco IOS XE Release 2.1
Cisco IOS XE Release 3.3SG
The BGP Support for Next-Hop Address Tracking feature is enabled by default when a supporting Cisco IOS software image is installed. BGP next-hop address tracking is event driven. BGP prefixes are automatically tracked as peering sessions are established. Next-hop changes are rapidly reported to the BGP routing process as they are updated in the RIB. This optimization improves overall BGP convergence by reducing the response time to next-hop changes for routes installed in the RIB. When a bestpath calculation is run in between BGP scanner cycles, only next-hop changes are tracked and processed.
This feature was introduced on the Cisco ASR 1000 Series Routers.
The following command was introduced in this feature:
bgp nexthop.
BGP Selective Address Tracking
12.2(31)SB
12.2(33)SRB
12.4(4)T
Cisco IOS XE Release 2.1
The BGP Selective Address Tracking feature introduces the use of a route map for next-hop route filtering and fast session deactivation. Selective next-hop filtering uses a route map to selectively define routes to help resolve the BGP next hop, or a route map can be used to determine if a peering session with a BGP neighbor should be reset when a route to the BGP peer changes.
This feature was introduced on the Cisco ASR 1000 Series Routers.
The following commands were modified by this feature:
bgpnexthop,
neighborfall-over.
BGP Support for Fast Peering Session Deactivation
12.0(29)S
12.3(14)T
12.2(33)SRA
12.2(31)SB
12.2(33)SXH
15.0(1)S
Cisco IOS XE Release 2.1
The BGP Support for Fast Peering Session Deactivation feature introduced an event-driven notification system that allows a Border Gateway Protocol (BGP) process to monitor BGP peering sessions on a per-neighbor basis. This feature improves the response time of BGP to adjacency changes by allowing BGP to detect an adjacency change and deactivate the terminated session in between standard BGP scanning intervals. Enabling this feature improves overall BGP convergence.
This feature was introduced on the Cisco ASR 1000 Series Routers.
The following command was modified by this feature:
neighborfall-over.