CCNP ROUTE: Implementing IP Routing 300-101
Josh Lowe
October 2015
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
2014 Cisco and/or its affiliates. All rights reserved.
Cisco Confidential
Focus of this chapter is on how to control the path that traffic takes through a
network.
In some cases, there might be only one way for traffic to go.
However, most modern network include redundant paths and network administrators may want
to control which way certain traffic flows.
The choice of routing protocol(s) used in a network is one factor in defining how
paths are selected;
For example, different administrative distances, metrics, and convergence times may result in
different paths being selected.
As well, recall that when multiple routing protocols are implemented, inefficient routing may
result.
There are other considerations.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
Resiliency:
The ability to maintain an acceptable level of service when faults occur.
Having redundancy does not guarantee resiliency.
Availability:
The time required for a routing protocol to learn about a backup path when a primary link fails is the
convergence time.
If the convergence time is relatively long, some applications may time out.
Use a fast-converging routing protocol.
Adaptability:
The networks ability to adapt to changing conditions such as link congestion.
Performance:
Routers should be tuned to load share across multiple links to make efficient use of the bandwidth.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
Support for network and application services:
More advanced path control solutions involve adjusting routing for specific services, such as security,
optimization, and quality of service (QoS).
Predictability:
The path control solution implemented should derive from an overall strategy, so that the results are
deterministic and predictable.
Asymmetric traffic:
Is traffic that flows on one path in one direction and on a different path in the opposite direction, occurs in
many networks that have redundant paths.
It is often a desirable network trait, because it can be configured to use the available bandwidth
effectively.
BGP includes a good set of tools to control traffic in both directions on an Internet connection.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
Focus of this Chapter
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
2014 Cisco and/or its affiliates. All rights reserved.
Cisco Confidential
In Chapter 4, Policy Based Routing (PBR) was briefly examined in the context
of redistribution.
In this chapter, PBR will be used to define a routing policy other than basic destination-based
routing using the routing table.
Routers normally forward packets to destination addresses based on information
in their routing tables.
PBR can be used to implement policies that selectively cause packets to take different paths
based on source address, protocol types, or application types and override the routers normal
routing behavior.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
Sample implementation plan:
1. Define and name the route map with the route-map command.
Define the conditions to match (the match statements).
Define the action to be taken when there is a match (the set statements).
2. Optionally, enable fast-switched PBR or Cisco Express Forwarding (CEF)-
switched PBR.
CEF switching is enabled by default in recent IOS versions.
3. Define which interface the route map will be attached to using the ip policy
route-map interface configuration command.
PBR is applied to incoming packets.
4. Verify path control results.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
10
Incoming packet
Is there a
route map
applied the
incoming
interface?
No
Yes
Is there a
match with a
deny
statement?
Yes
Forward the
packet
through the
normal routing
channel.
No
Is there a
match with a
permit
statement?
INFR 2411U Advanced Networking I: CCNP ROUTE
R1
Yes
Apply set
commands.
Josh Lowe, 2015
11
Router(config)#
route-map map-tag [permit | deny] [sequence-number]
Defines the route map conditions.
Router(config-route-map)#
match {conditions}
Defines the conditions to match.
Router(config-route-map)#
set {actions}
Defines the action to be taken on a match.
Router(config-if)#
ip policy route-map map-tag
Apply the route-map to the incoming interface.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
12
Specify criteria to be matched.
Router(config-route-map)#
match condition
The match condition route map configuration commands are used to
define the conditions to be checked.
Some of these conditions are used for BGP policy, some for PBR, and some for
redistribution filtering.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
13
Command
Description
match community
Matches a BGP community
match interface
Matches any routes that have the next hop out of one of the interfaces specified
match ip address
Matches any routes that have a destination network number address that is permitted by a
standard or extended ACL
match ip next-hop
Matches any routes that have a next-hop router address that is passed by one of the ACLs
specified
match ip route-source
Matches routes that have been advertised by routers and access servers at the address that is
specified by the ACLs
match length
Matches based on the layer 3 length of a packet
match metric
Matches routes with the metric specified
match route-type
match tag
INFR 2411U Advanced Networking I: CCNP ROUTE
Matches routes of the specified type
Matches tag of a route
Josh Lowe, 2015
14
Command
Description
match community
Matches a BGP community
match interface
Matches any routes that have the next hop out of one of the interfaces specified
match ip address
Matches any routes that have a destination network number address that is permitted by a
standard or extended ACL
match ip next-hop
Matches any routes that have a next-hop router address that is passed by one of the ACLs
specified
match ip route-source
Matches routes that have been advertised by routers and access servers at the address that is
specified by the ACLs
match length
Matches based on the layer 3 length of a packet
match metric
Matches routes with the metric specified
match route-type
match tag
INFR 2411U Advanced Networking I: CCNP ROUTE
Matches routes of the specified type
Matches tag of a route
Josh Lowe, 2015
15
Modify matching conditions.
Router(config-route-map)#
set action
The command modifies parameters in routes.
The specific action changes or adds characteristics, such as metrics, to any
routes that have met a match condition.
Josh says: This is how you actually control the path the
packets follow, by using the set command.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
16
Command
Description
set as-path
set automatic-tag
set community
Modifies an AS path for BGP routes
Computes automatically the tag value
Sets the BGP communities attribute
set ip next-hop
Indicates where to output packets that pass a match clause of a route map for policy routing
set interface
Indicates where to output packets that pass a match clause of a route map for policy routing
set ip default next-hop
Indicates where to output packets that pass a match clause of a route map for policy routing and
for which the Cisco IOS software has no explicit route to a destination
set default interface
Indicates where to output packets that pass a match clause of a route map for policy routing and
have no explicit route to the destination
set ip tos
set ip precedence
set tag
set weight
Used to set some of the bits in the IP ToS field in the IP packet.
Set the 3 IP precedence bits in the IP packet header.
Sets tag value for destination routing protocol
Specifies the BGP weight value
* Partial list
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
17
Command
Description
set as-path
set automatic-tag
set community
Modifies an AS path for BGP routes
Computes automatically the tag value
Sets the BGP communities attribute
set ip next-hop
Indicates where to output packets that pass a match clause of a route map for policy routing
set interface
Indicates where to output packets that pass a match clause of a route map for policy routing
set ip default next-hop
Indicates where to output packets that pass a match clause of a route map for policy routing and
for which the Cisco IOS software has no explicit route to a destination
set default interface
Indicates where to output packets that pass a match clause of a route map for policy routing and
have no explicit route to the destination
set ip tos
set ip precedence
set tag
set weight
INFR 2411U Advanced Networking I: CCNP ROUTE
Used to set some of the bits in the IP ToS field in the IP packet.
Set the 3 IP precedence bits in the IP packet header.
Sets tag value for destination routing protocol
Specifies the BGP weight value
Josh Lowe, 2015
18
Specify the next hop IP address for matching packets.
Router(config-route-map)#
set ip next-hop ip-address [...ip-address]
The command provides a list of IP addresses used to specify the adjacent nexthop router in the path toward the destination to which the packets should be
forwarded.
If more than one IP address is specified, the first IP address associated with a
currently up connected interface is used to route the packets.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
19
Specify interfaces through which packets can be routed.
Router(config-route-map)#
set interface type number [... type number]
If more than one interface is specified, the first interface that is found to be up is
used to forward the packets.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
20
Identify a route map to use for policy routing on an interface.
Router(config-if)#
ip policy route-map map-tag
The map-tag parameter is the name of the route map to use for policy
routing.
It must match a map tag specified by a route-map command.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
21
Command
show ip policy
Description
Display the route maps used for policy routing.
show route-map [map-name] Display configured route maps.
debug ip policy
INFR 2411U Advanced Networking I: CCNP ROUTE
Display the policy routing details about whether a packet
matches the criteria and, if so, the resulting routing
information for the packet.
Josh Lowe, 2015
22
ISP 1
Customer
A
[Link]
.6
Fa0/0
[Link] /24
R2
Internet
Fa1/0
[Link] /24
ISP 2
R1
Fa0/1
[Link]
INFR 2411U Advanced Networking I: CCNP ROUTE
.7
R3
Josh Lowe, 2015
23
Using PBR When Multihoming Example
ISP 1
Customer
A
[Link]
.6
Fa0/0
[Link] /24
R2
Internet
Fa1/0
[Link] /24
ISP 2
R1
Fa0/1
[Link]
.7
R3
R1(config)# access-list 1 permit [Link] [Link]
R1(config)# access-list 2 permit [Link] [Link]
R1(config)# route-map EQUAL-ACCESS permit 10
R1(config-route-map) # match ip address 1
R1(config-route-map)# set ip default next-hop [Link]
R1(config-route-map)# route-map EQUAL-ACCESS permit 20
R1(config-route-map)# match ip address 2
R1(config-route-map)# set ip default next-hop [Link]
R1(config-route-map)# exit
R1(config)# interface fa1/0
R1(config-if)# ip policy route-map EQUAL-ACCESS
R1(config-if)# exit
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
24
2014 Cisco and/or its affiliates. All rights reserved.
Cisco Confidential
25
ISP 1
Branch Site
R2
[Link]
.1
Internet
R1
[Link]
ISP 2
.1
R3
Object tracking:
Track the reachability of specified objects (e.g., DNS server).
Cisco IOS IP SLAs probes:
Cisco IOS IP SLAs can send different types of probes toward the desired objects.
Associate the tracked results to the routing process:
PBR (route maps) can be used to define specific traffic classes, such as voice, or specific applications.
Static routes with tracking options provide a simpler alternative to PBR.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
28
Cisco IOS IP Service Level Agreements (SLAs) uses active traffic monitoring
for measuring network performance.
Cisco IOS IP SLAs send simulated data across the network and measure
performance between network locations.
The IP SLAs feature allows performance measurements to be taken to provide
data about service levels for IP applications and services between:
Two Cisco devices
Cisco device and a host
The IP SLAs feature can be configured either by the CLI or through an SNMP
tool that supports IP SLAs operation.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
29
The information collected can measure:
Network resource availability
Response time
One-way latency
Jitter (interpacket delay variance)
Packet loss
Voice-quality scoring
Application performance
Server response time
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
30
The IP SLAs source sends probe packets to the target.
All the IP SLAs measurement probe operations are configured on the IP SLAs source (Cisco
IOS Router).
The source uses the IP SLAs control protocol to communicate with the responder before
sending test packets (Cisco device).
IP SLAs control messages support Message Digest 5 (MD5) authentication.
An IP SLAs responder, embedded in a Cisco IOS device, allows it to anticipate
and respond to IP SLAs request packets.
An IP SLAs operation is a measurement that includes protocol, frequency,
traps, and thresholds.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
31
There are two types of IP SLAs
operations:
Those in which the target device is not
running the IP SLAs responder
component (such as a web server or IP
host).
Mostly ICMP generated traffic.
Those in which the target device is
running the IP SLAs responder
component (such as a Cisco router).
Measurement accuracy is improved when
the target is a responder.
Additional statistics can be gathered.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
32
1. Define one or more IP SLAs operations (or probes).
2. Define one or more tracking objects, to track the state of IOS IP SLAs
operations.
3. Define the action associated with the tracking object.
Note:
Effective with Cisco IOS Release 12.4(4)T, 12.2(33)SB, and 12.2(33)SXI, the ip sla
monitor command is replaced by the ip sla command.
We use the ip sla command in lab because we run 15.4.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
33
Define an IP SLA object and enter IP SLA configuration mode.
Router(config)#
ip sla operation-number
The operation-number is the identification number of the IP
SLAs operation you want to configure.
Once entered, the router prompt changes to IP SLA configuration
mode.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
34
Although many command options exist, the focus of this section will be on
configuring Source to Non-responder target (not a Cisco router).
For this reason the icmp-echo command will be explored.
R1(config)# ip sla 1
R1(config-ip-sla)# ?
IP SLAs entry configuration commands:
dhcp
DHCP Operation
dns
DNS Query Operation
exit
Exit Operation Configuration
frame-relay Frame-relay Operation
ftp
FTP Operation
http
HTTP Operation
icmp-echo
ICMP Echo Operation
icmp-jitter ICMP Jitter Operation
path-echo
Path Discovered ICMP Echo Operation
path-jitter Path Discovered ICMP Jitter Operation
slm
SLM Operation
tcp-connect TCP Connect Operation
udp-echo
UDP Echo Operation
udp-jitter
UDP Jitter Operation
voip
Voice Over IP Operation
R1(config-ip-sla)#
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
35
Define an ICMP echo operation from source to non-responder target.
Router(config-ip-sla)#
icmp-echo {destination-ip-address | destination-hostname} [sourceip {ip-address | hostname} | source-interface interface-name]
Parameter
Description
destination-ip-address |
destination-hostname
Destination IPv4 or IPv6 address or hostname.
source-ip {ip-address |
hostname}
source-interface
interface-name
(Optional) Specifies the source IPv4 or IPv6 address or
hostname.
When a source IP address or hostname is not specified, IP
SLAs chooses the IP address nearest to the destination.
(Optional) Specifies the source interface for the operation.
Note:
Effective with Cisco IOS Release 12.4(4)T, 12.2(33)SB, and 12.2(33)SXI, the
type echo protocol ipIcmpEcho command is replaced by the icmpecho command.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
36
R1(config-ip-sla)# icmp-echo [Link]
R1(config-ip-sla-echo)# ?
IP SLAs echo Configuration Commands:
default
Set a command to its defaults
exit
Exit operation configuration
frequency
Frequency of an operation
history
History and Distribution Data
no
Negate a command or set its defaults
owner
Owner of Entry
request-data-size Request data size
tag
User defined tag
threshold
Operation threshold in milliseconds
timeout
Timeout of an operation
tos
Type Of Service
verify-data
Verify data
vrf
Configure IP SLAs for a VPN Routing/Forwarding in-stance
R1(config-ip-sla-echo)#
Although many command options exist, the focus of this section will be on
frequency and timeout commands.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
37
Router(config-ip-sla-echo)#
frequency seconds
Set the rate at which a specified IP SLAs operation repeats.
The seconds parameter is the number of seconds between the IP
SLAs operations with the default being 60 seconds.
Router(config-ip-sla-echo)#
timeout milliseconds
Set the amount of time a Cisco IOS IP SLAs operation waits for a
response from its request packet.
The milliseconds parameter is the number of milliseconds (ms) the
operation waits to receive a response from its request packet.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
38
Schedule an IP SLA operation.
Router(config)#
ip sla schedule operation-number [life {forever | seconds}]
[start-time {hh:mm[:ss] [month day | day month] | pending |
now | after hh:mm:ss}] [ageout seconds] [recurring]]
Note:
Effective with Cisco IOS Release 12.4(4)T, 12.2(33)SB, and 12.2(33)SXI,
the ip sla monitor schedule command is replaced by the ip
sla schedule command.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
39
Parameter
Description
operation-number
Number of the IP SLAs operation to schedule.
life forever
(Optional) Schedules the operation to run indefinitely.
life seconds
(Optional) Number of seconds the operation actively collects information.
The default is 3600 seconds (one hour).
start-time
(Optional) Time when the operation starts.
hh:mm[:ss]
Specifies an absolute start time using hour, minute, and (optionally) second.
Use the 24-hour clock notation.
month
day
(Optional) Name of the month to start the operation in.
If month is not specified, the current month is used.
(Optional) Number of the day (in the range 1 to 31) to start the operation on.
If a day is not specified, the current day is used.
pending
(Optional) No information is collected. This is the default value.
now
(Optional) Indicates that the operation should start immediately.
after hh:mm:ss
(Optional) Indicates that the operation should start this amount of time after this command was entered.
ageout seconds
(Optional) Number of seconds to keep the operation in memory when it is not actively collecting information (default is 0 seconds
which means it never ages out).
recurring
INFR 2411U Advanced Networking I: CCNP ROUTE
(Optional) Indicates that the operation will start automatically at the specified time and for the specified duration every day.
Josh Lowe, 2015
40
Define tracking objects, to track the state of IP SLAs operations.
Router(config)#
track object-number ip sla operation-number {state |
reachability}
Parameter
Description
object-number
operation-number
state
reachability
Object number representing the object to be tracked.
The range is from 1 to 500.
Number used for the identification of the IP SLAs operation you
are tracking.
Tracks the operation return code.
Tracks whether the route is reachable.
Note:
Effective with Cisco IOS Release 12.4(20)T, 12.2(33)SXI1, 12.2(33)SRE
and Cisco IOS XE Release 2.4, the track rtr command is replaced
by the track ip sla command.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
41
R1(config)# track 1 ip sla 1 reachability
R1(config-track)# ?
Tracking instance configuration commands:
default Set a command to its defaults
delay
Tracking delay
exit
Exit from tracking configuration mode
no
Negate a command or set its defaults
R1(config-track)#
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
42
Specify a period of time to delay communicating state changes of a
tracked object.
Router(config-track)#
delay {up seconds [down seconds] | [up seconds] down seconds}
Parameter
up
down
seconds
Description
Time to delay the notification of an up event.
Time to delay the notification of a down event.
Delay value, in seconds.
The range is from 0 to 180 with the default being 0.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
43
Configure a static route for IP SLAs tracking.
Router(config)#
ip route prefix mask address interface dhcp distance name next-hop-name permanent
track number tag tag
Parameter
Description
prefix mask
The IP network and subnet mask for the remote network to be entered into the IP routing table.
address
The IP address of the next hop that can be used to reach the destination network.
interface
The local router outbound interface to be used to reach the destination network.
dhcp
(Optional) Enables a DHCP server to assign a static route to a default gateway.
distance
name next-hop-name
permanent
track number
tag tag
INFR 2411U Advanced Networking I: CCNP ROUTE
(Optional) The administrative distance to be assigned to this route.
(Optional) Applies a name to the specified route.
(Optional) Specifies that the route will not be removed from the routing table even if the interface associated with the
route goes down.
(Optional) Associates a track object with this route.
Valid values for the number argument range from 1 to 500.
(Optional) A value that can be used as a match value in route maps.
Josh Lowe, 2015
44
Command
show ip sla
configuration
[operation]
show ip sla statistics
[operation-number |
details]
INFR 2411U Advanced Networking I: CCNP ROUTE
Description
Display configuration values including all defaults for all
Cisco IOS IP SLAs operations, or for a specified operation.
The operation parameter is the number of the IP SLAs
operation for which the details will be displayed.
Display the current operational status and statistics of all
Cisco IOS IP SLAs operations, or of a specified operation.
Josh Lowe, 2015
45
R1# show ip sla configuration 1
IP SLAs, Infrastructure Engine-II.
Entry number: 1
Owner:
Tag:
Type of operation to perform: icmp-echo
Target address/Source address: [Link]/[Link]
Type Of Service parameter: 0x0
Request size (ARR data portion): 28
Operation timeout (milliseconds): 5000
Verify data: No
Vrf Name:
Schedule:
Operation frequency (seconds): 10 (not considered if randomly scheduled)
Next Scheduled Start Time: Start Time already passed
Group Scheduled : FALSE
Randomly Scheduled : FALSE
Life (seconds): Forever
<output omitted>
Note:
Effective with Cisco IOS Release 12.4(20)T, 12.2(33)SXI1, 12.2(33)SRE and Cisco IOS
XE Release 2.4, the show ip sla monitor configuration command is
replaced by the show ip sla configuration command.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
46
R1# show ip sla statistics
IPSLAs Latest Operation Statistics
IPSLA operation id: 1
Latest operation start time: *[Link].707 UTC Fri Apr 2 2010
Latest operation return code: OK
Number of successes: 5
Number of failures: 0
Operation time to live: Forever
<output omitted>
Note:
Effective with Cisco IOS Release 12.4(20)T, 12.2(33)SXI1, 12.2(33)SRE and Cisco IOS
XE Release 2.4, the show ip sla monitor statisitcs command is replaced
by the show ip sla statistics command.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
47
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
48
Tracking Reachability to Two ISPs Example
R1(config)# ip sla 11
R1(config-ip-sla)# icmp-echo [Link]
R1(config-ip-sla-echo)# frequency 10
R1(config-ip-sla-echo)# exit
R1(config)# ip sla schedule 11 life forever start-time now
R1(config)# track 1 ip sla 11 reachability
R1(config-track)# delay down 10 up 1
R1(config-track)# exit
R1(config)# ip route [Link] [Link] [Link] 2 track 1
R1(config)# ip sla 22
R1(config-ip-sla)# icmp-echo [Link]
R1(config-ip-sla-echo)# frequency 10
R1(config-ip-sla-echo)# exit
R1(config)# ip sla schedule 22 life forever start-time now
R1(config)# track 2 ip sla 22 reachability
R1(config-track)# delay down 10 up 1
R1(config-track)# exit
R1(config)# ip route [Link] [Link] [Link] 3 track 2
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
49
There are many possibilities available with object tracking and Cisco IOS IP SLAs.
A probe can be based on reachability, changing routing operations, and path control based on the
ability to reach an object.
Cisco IOS IP SLAs also allow paths to be changed based on network conditions such as delay,
load, and other factors.
The benefits of running IP SLAs should be carefully evaluated.
Before deploying a Cisco IOS IP SLA solution, the impact of the additional probe traffic being
generated should be considered, including how that traffic affects bandwidth utilization, and
congestion levels.
The IP SLA is an additional task that must be performed by the routers CPU.
A large number of intensive SLAs could be a significant burden on the CPU, possibly interfering with
other router functions and having detrimental impact on the overall router performance.
The CPU load should be monitored after the SLAs are deployed to verify that they do not cause
excessive utilization of the router CPU.
INFR 2411U Advanced Networking I: CCNP ROUTE
Josh Lowe, 2015
50
Thank you.