PBR Support for Multiple Tracking Options

Last Updated: July 20, 2011

The PBR Support for Multiple Tracking Options feature extends the capabilities of object tracking using Cisco Discovery Protocol (CDP) to allow the policy-based routing (PBR) process to verify object availability by using additional methods. The verification method can be an Internet Control Message Protocol (ICMP) ping, a User Datagram Protocol (UDP) ping, or an HTTP GET request.

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 Table at the end of this document.

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 PBR Support for Multiple Tracking Options

Object Tracking

Object tracking is an independent process that monitors objects such as the following:

  • State of the line protocol of an interface
  • Existence of an entry in the routing table
  • Results of a Service Assurance Agent (SAA) operation, such as a ping

Clients such as Hot Standby Router Protocol (HSRP), Virtual Router Redundancy Protocol (VRRP), Gateway Load Balancing Protocol (GLBP), and (with this feature) PBR can register their interest in specific, tracked objects and then take action when the state of the objects changes.

PBR Support for Multiple Tracking Options Feature Design

The PBR Support for Multiple Tracking Options feature gives PBR access to all the objects that are available through the tracking process. The tracking process provides the ability to track individual objects--such as ICMP ping reachability, routing adjacency, an application running on a remote device, a route in the Routing Information Base (RIB)--or to track the state of an interface line protocol.

Object tracking functions in the following manner. PBR will inform the tracking process that a certain object should be tracked. The tracking process will in turn notify PBR when the state of that object changes.

How to Configure PBR Support for Multiple Tracking Options

The tasks in this section are divided according to the Cisco IOS release that you are running because Cisco IOS Release 12.3(14)T introduced new syntax for IP Service Level Agreements (SLAs). To use this feature, you must be running Cisco IOS Release 12.3(4)T, 12.2(25)S, or a later release. This section contains the following tasks:

Cisco IOS Release 12.3(11)T 12.2(25)S and Earlier

Perform this task to configure PBR support for multiple tracking options. In this task, a route map is created and configured to verify the reachability of the tracked object.

Before You Begin

This task requires the networking device to be running Cisco IOS Release 12.3(11)T, 12.2(25)S, or prior releases.


SUMMARY STEPS

1.    enable

2.    configure terminal

3.    rtr operation-number

4.    type echo protocol protocol-type target [source-ipaddr ip-address]

5.    exit

6.    rtr schedule operation-number [life {forever | seconds}] [start-time {hh : mm[: ss] [month day | day month] | pending | now | after hh : mm : ss}] [ageout seconds]

7.    track object-number rtr entry-number [reachability]

8.    delay {up seconds [down seconds] | [up seconds] down seconds}

9.    exit

10.    interface type number

11.    ip address ip-address mask [secondary]

12.    ip policy route-map map-tag

13.    exit

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

15.    set ip next-hop verify-availability [next-hop-address sequence track object]

16.    end


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
rtr operation-number


Example:

Router(config)# rtr 1

 

Enters SAA RTR configuration mode and configures an SAA operation.

 
Step 4
type echo protocol protocol-type target [source-ipaddr ip-address]


Example:

Router(config-rtr)# type echo protocol ipicmpecho 10.1.1.10

 

Configures an SAA end-to-end echo response time probe operation.

 
Step 5
exit


Example:

Router(config-rtr)# exit

 

Exits SAA RTR configuration mode and returns the router to global configuration mode.

 
Step 6
rtr schedule operation-number [life {forever | seconds}] [start-time {hh : mm[: ss] [month day | day month] | pending | now | after hh : mm : ss}] [ageout seconds]


Example:

Router(config)# rtr schedule 1 life forever start-time now

 

Configures the time parameters for the SAA operation.

 
Step 7
track object-number rtr entry-number [reachability]


Example:

Router(config)# track 123 rtr 1 reachability

 

Tracks the reachability of a Response Time Reporter (RTR) object and enters tracking configuration mode.

 
Step 8
delay {up seconds [down seconds] | [up seconds] down seconds}


Example:

Router(config-track)# delay up 60 down 30

 

(Optional) Specifies a period of time (in seconds) to delay communicating state changes of a tracked object.

 
Step 9
exit


Example:

Router(config-track)# exit

 

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

 
Step 10
interface type number


Example:

Router(config)# interface ethernet 0

 

Specifies an interface type and number and enters interface configuration mode.

 
Step 11
ip address ip-address mask [secondary]


Example:

Router(config-if)# ip address 10.1.1.11 255.0.0.0

 

Specifies a primary or secondary IP address for an interface.

  • See the "Configuring IPv4 Addresses" chapter of the Cisco IOS IP Addressing Services Configuration Guide for information on configuring IPv4 addresses.
 
Step 12
ip policy route-map map-tag


Example:

Router(config-if)# ip policy route-map alpha

 

Enables policy routing and identifies a route map to be used for policy routing.

 
Step 13
exit


Example:

Router(config-if)# exit

 

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

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


Example:

Router(config)# route-map alpha

 

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

 
Step 15
set ip next-hop verify-availability [next-hop-address sequence track object]


Example:

Router(config-route-map)# set ip next-hop verify-availability 10.1.1.1 10 track 123

 

Configures the route map to verify the reachability of the tracked object.

 
Step 16
end


Example:

Router(config-route-map)# end

 

Exits route-map configuration mode and returns the router to privileged EXEC mode.

 

Cisco IOS Release 12.3(14)T 12.2(33)SXH and Later

Perform this task to configure PBR support for multiple tracking options. In this task, a route map is created and configured to verify the reachability of the tracked object.

Before You Begin

This task requires the networking device to be running Cisco IOS Release 12.3(14)T, 12.2(33)SXH, or a later release.


SUMMARY STEPS

1.    enable

2.    configure terminal

3.    ip sla monitor operation-number

4.    type echo protocol ipIcmpEcho {destination-ip-address| destination-hostname}[source-ipaddr {ip-address| hostname} | source-interface interface-name]

5.    exit

6.    ip sla monitor schedule operation-number [life {forever | seconds}] [start-time {hh : mm[: ss] [month day | day month] | pending | now | after hh : mm : ss}] [ageout seconds] [recurring]

7.    track object-number rtr entry-number [reachability| state]

8.    delay {up seconds [down seconds] | [up seconds] down seconds}

9.    exit

10.    interface type number

11.    ip address ip-address mask [secondary]

12.    ip policy route-map map-tag

13.    exit

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

15.    set ip next-hop verify-availability [next-hop-address sequence track object]

16.    end

17.    show track object-number

18.    show route-map [map-name| all| dynamic]


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
ip sla monitor operation-number


Example:

Router(config)# ip sla monitor 1

 

Starts a Cisco IOS IP Service Level Agreement (SLA) operation configuration and enters IP SLA monitor configuration mode.

 
Step 4
type echo protocol ipIcmpEcho {destination-ip-address| destination-hostname}[source-ipaddr {ip-address| hostname} | source-interface interface-name]


Example:

Router(config-sla-monitor)# type echo protocol ipIcmpEcho 10.1.1.1

 

Configures an IP SLA Internet Control Message Protocol (ICMP) echo probe operation.

 
Step 5
exit


Example:

Router(config-sla-monitor)# exit

 

Exits IP SLA monitor configuration mode and returns the router to global configuration mode.

 
Step 6
ip sla monitor schedule operation-number [life {forever | seconds}] [start-time {hh : mm[: ss] [month day | day month] | pending | now | after hh : mm : ss}] [ageout seconds] [recurring]


Example:

Router(config)# ip sla monitor schedule 1 life forever start-time now

 

Configures the scheduling parameters for a single Cisco IOS IP SLA operation.

  • In this example, the time parameters for the IP SLA operation are configured.
 
Step 7
track object-number rtr entry-number [reachability| state]


Example:

Router(config)# track 123 rtr 1 reachability

 

Tracks the reachability of a Response Time Reporter (RTR) object and enters tracking configuration mode.

 
Step 8
delay {up seconds [down seconds] | [up seconds] down seconds}


Example:

Router(config-track)# delay up 60 down 30

 

(Optional) Specifies a period of time, in seconds, to delay communicating state changes of a tracked object.

 
Step 9
exit


Example:

Router(config-track)# exit

 

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

 
Step 10
interface type number


Example:

Router(config)# interface serial 2/0

 

Specifies an interface type and number and enters interface configuration mode.

 
Step 11
ip address ip-address mask [secondary]


Example:

Router(config-if)# ip address 192.168.1.1 255.255.255.0

 

Specifies a primary or secondary IP address for an interface.

  • See the "Configuring IPv4 Addresses" chapter of the Cisco IOS IP Addressing Services Configuration Guide for information on configuring IPv4 addresses.
  • In this example, the IP address of the incoming interface is specified. This is the interface on which policy routing is to be enabled.
 
Step 12
ip policy route-map map-tag


Example:

Router(config-if)# ip policy route-map alpha

 

Enables policy routing and identifies a route map to be used for policy routing.

 
Step 13
exit


Example:

Router(config-if)# exit

 

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

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


Example:

Router(config)# route-map alpha

 

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

 
Step 15
set ip next-hop verify-availability [next-hop-address sequence track object]


Example:

Router(config-route-map)# set ip next-hop verify-availability 10.1.1.1 10 track 123

 

Configures the route map to verify the reachability of the tracked object.

  • In this example, the policy is configured to forward packets received on serial interface 2/0 to 10.1.1.1 if that device is reachable.
 
Step 16
end


Example:

Router(config-route-map)# end

 

Exits route-map configuration mode and returns the router to privileged EXEC mode.

 
Step 17
show track object-number


Example:

Router# show track 123

 

(Optional) Displays tracking information.

  • Use this command to verify the configuration. See the display output in the "Examples" section of this task.
 
Step 18
show route-map [map-name| all| dynamic]


Example:

Router# show route-map alpha

 

(Optional) Displays route map information.

  • In this example, information about the route map named alpha is displayed. See the display output in the "Examples" section of this task.
 

Examples

The following output from the show track command shows that the tracked object 123 is reachable.

Router# show track 123
Track 123
  Response Time Reporter 1 reachability
  Reachability is Up
    2 changes, last change 00:00:33
  Delay up 60 secs, down 30 secs
  Latest operation return code: OK
  Latest RTT (millisecs) 20
  Tracked by:
    ROUTE-MAP 0

The following output from the show route-map command shows information about the route map named alpha that was configured in the task.

Router# show route-map alpha
route-map alpha, permit, sequence 10
  Match clauses:
  Set clauses:
    ip next-hop verify-availability 10.1.1.1 10 track 123  [up]
  Policy routing matches: 0 packets, 0 bytes

Configuration Examples for PBR Support for Multiple Tracking Options

Cisco IOS Release 12.3(11)T 12.2(25)S and Earlier

In the following example, object tracking is configured for PBR on routers that are running Cisco IOS Release 12.3(11)T, 12.2(25)S, or earlier releases.

The configured policy is that packets received on Ethernet interface 0, should be forwarded to 10.1.1.1 only if that device is reachable (responding to pings). If 10.1.1.1 is not up, then the packets should be forwarded to 10.2.2.2. If 10.2.2.2 is also not reachable, then the policy routing fails and the packets are routed according to the routing table.

Two Response Time Reporters (RTRs) are configured to ping the remote devices. The RTRs are then tracked. Policy routing will monitor the state of the tracked RTRs and make forwarding decisions based on their state.

! Define and start the RTRs.
rtr 1
 type echo protocol ipicmpecho 10.1.1.1
rtr schedule 1 start-time now life forever
!
rtr 2
 type echo protocol ipicmpecho 10.2.2.2
rtr schedule 2 start-time now life forever
!
! Track the RTRs.
track 123 rtr 1 reachability
track 124 rtr 2 reachability
!
! Enable policy routing on the incoming interface.
interface ethernet 0
 ip address 10.4.4.4 255.255.255.0
 ip policy route-map beta
!
! 10.1.1.1 is via this interface.
interface ethernet 1
 ip address 10.1.1.254 255.255.255.0
!
! 10.2.2.2 is via this interface.
interface ethernet 2
 ip address 10.2.2.254 255.255.255.0
!
! Define a route map to set the next-hop depending on the state of the tracked RTRs.
route-map beta
 set ip next-hop verify-availability 10.1.1.1 10 track 123
 set ip next-hop verify-availability 10.2.2.2 20 track 124

Cisco IOS Release 12.3(14)T 12.2(33)SXH and Later

In the following example, object tracking is configured for PBR on routers running Cisco IOS Release 12.3(14)T, 12.2(33)SXH, and later releases.

The configured policy is that packets received on Ethernet interface 0, should be forwarded to 10.1.1.1 only if that device is reachable (responding to pings). If 10.1.1.1 is not up, then the packets should be forwarded to 10.2.2.2. If 10.2.2.2 is also not reachable, then the policy routing fails and the packets are routed according to the routing table.

Two RTRs are configured to ping the remote devices. The RTRs are then tracked. Policy routing will monitor the state of the tracked RTRs and make forwarding decisions based on their state.

! Define and start the RTRs.
ip sla monitor 1
 type echo protocol ipicmpecho 10.1.1.1
ip sla monitor schedule 1 start-time now life forever
!
ip sla monitor 2
 type echo protocol ipicmpecho 10.2.2.2
ip sla monitor schedule 2 start-time now life forever
!
! Track the RTRs.
track 123 rtr 1 reachability
track 124 rtr 2 reachability
!
! Enable policy routing on the incoming interface.
interface ethernet 0
 ip address 10.4.4.4 255.255.255.0
 ip policy route-map beta
!
! 10.1.1.1 is via this interface.
interface ethernet 1
 ip address 10.1.1.254 255.255.255.0
!
! 10.2.2.2 is via this interface.
interface ethernet 2
 ip address 10.2.2.254 255.255.255.0
!
! Define a route map to set the next-hop depending on the state of the tracked RTRs.
route-map beta
 set ip next-hop verify-availability 10.1.1.1 10 track 123
 set ip next-hop verify-availability 10.2.2.2 20 track 124

Additional References

The following sections provide references related to the PBR Support for Multiple Tracking Options feature.

Related Documents

Related Topic

Document Title

Object tracking within Cisco IOS software

Configuring Enhanced Object Tracking" chapter of the Cisco IOS IP Application Services Configuration Guide

Configuring IP addresses

"Configuring IPv4 Addresses" chapter of the Cisco IOS IP Addressing Services Configuration Guide

Standards

Standard

Title

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

--

MIBs

MIB

MIBs Link

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

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

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

RFCs

RFC

Title

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

--

Technical Assistance

Description

Link

The Cisco Support website provides extensive online resources, including documentation and tools for troubleshooting and resolving technical issues with Cisco products and technologies.

To receive security and technical information about your products, you can subscribe to various services, such as the Product Alert Tool (accessed from Field Notices), the Cisco Technical Services Newsletter, and Really Simple Syndication (RSS) Feeds.

Access to most tools on the Cisco Support website requires a Cisco.com user ID and password.

http://www.cisco.com/techsupport

Command Reference

The following commands are introduced or modified in the feature or features documented in this module. For information about these commands, see the Cisco IOS IP Routing: Protocol-Independent Command Reference. For information about all Cisco IOS commands, use the Command Lookup Tool at http://tools.cisco.com/Support/CLILookup or the Cisco IOS Master Command List, All Releases , at http://www.cisco.com/en/US/docs/ios/mcl/allreleasemcl/all_book.html.

  • set ip next-hop verify-availability

Feature Information for PBR Support for Multiple Tracking Options

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 PBR Support for Multiple Tracking Options

Feature Name

Releases

Feature Information

PBR Support for Multiple Tracking Options

12.3(4)T 12.2(25)S 12.2(33)SXH

The PBR Support for Multiple Tracking Options feature extends the capabilities of object tracking using Cisco Discovery Protocol (CDP) to allow the policy-based routing (PBR) process to verify object availability by using additional methods. The verification method can be an Internet Control Message Protocol (ICMP) ping, a User Datagram Protocol (UDP) ping, or an HTTP GET request.

Due to syntax changes for IP SLAs, a new task and configuration example were introduced in the Cisco IOS Release 12.2(33)SXH.

The following commands were introduced or modified by this feature: set ip next-hop verify-availability.

Cisco and the Cisco Logo are trademarks of Cisco Systems, Inc. and/or its affiliates in the U.S. and other countries. A listing of Cisco's trademarks can be found at www.cisco.com/go/trademarks. Third party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. (1005R)

Any Internet Protocol (IP) addresses and phone numbers used in this document are not intended to be actual addresses and phone numbers. Any examples, command display output, network topology diagrams, and other figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses or phone numbers in illustrative content is unintentional and coincidental.