To control the invalidation rate of the IP route cache, use the ipcache-invalidate-delay command in global configuration mode. To allow the IP route cache to be immediately invalidated, use the noform of this command.
(Optional) Minimum time (in seconds) between invalidation request and actual invalidation. The default is 2 seconds.
maximum
(Optional) Maximum time (in seconds) between invalidation request and actual invalidation. The default is 5 seconds.
quiet
(Optional) Length of quiet period (in seconds) before invalidation. The default is 3 seconds with no more than zero invalidation requests.
threshold
(Optional) Maximum number of invalidation requests considered to be quiet.
Command Default
The invalidation rate of the IP route cache is not controlled.
Command Modes
Global configuration (config)
Command History
Release
Modification
10.0
This command was introduced.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.2SX
This command is supported in the Cisco IOS Release 12.2SX train. Support in a specific 12.2SX release of this train depends on your feature set, platform, and platform hardware.
Usage Guidelines
After you enter the ipcache-invalidate-delaycommandall cache invalidation requests are honored immediately.
Caution
This command should only be used under the guidance of technical support personnel. Incorrect settings can seriously degrade network performance. The command-line-interface (CLI) will not allow you to enter the ipcache-invalidate-delay command until you configure the serviceinternal command in global configuration mode.
The IP fast-switching and autonomous-switching features maintain a cache of IP routes for rapid access. When a packet is to be forwarded and the corresponding route is not present in the cache, the packet is process switched and a new cache entry is built. However, when routing table changes occur (such as when a link or an interface goes down), the route cache must be flushed so that it can be rebuilt with up-to-date routing information.
This command controls how the route cache is flushed. The intent is to delay invalidation of the cache until after routing has settled down. Because route table changes tend to be clustered in a short period of time, and the cache may be flushed repeatedly, a high CPU load might be placed on the router.
When this feature is enabled, and the system requests that the route cache be flushed, the request is held for at least minimum seconds. Then the system determines whether the cache has been "quiet" (that is, less than threshold invalidation requests in the last quiet seconds). If the cache has been quiet, the cache is then flushed. If the cache does not become quiet within maximum seconds after the first request, it is flushed unconditionally.
Manipulation of these parameters trades off CPU utilization versus route convergence time. Timing of the routing protocols is not affected, but removal of stale cache entries is affected.
Examples
The following example shows how to set a minimum delay of 5 seconds, a maximum delay of 30 seconds, and a quiet threshold of no more than 5 invalidation requests in the previous 10 seconds:
Router(config)# service internal
Router(config)# ip cache-invalidate-delay 5 30 10 5
Related Commands
Command
Description
iproute-cache
Configures the high-speed switching caches for IP routing.
ip cef
To enable Cisco Express Forwarding on the route processor card, use the ipcef command in global configuration mode. To disable Cisco Express Forwarding, use the no form of this command.
Cisco IAD2420 Series Routers, Cisco 2600 Series Routers, Cisco 3600 Series Routers, Cisco 3700 Series Routers, Cisco 7200 Series Routers
ipcef [distributed]
noipcef [distributed]
Cisco ASR 1000 Series Aggregation Services Routers
ipcefdistributed
noipcefdistributed
Syntax Description
distributed
(Optional) Enables distributed Cisco Express Forwarding operation. Distributes Cisco Express Forwarding information to line cards. Line cards perform express forwarding.
Command Default
Cisco Express Forwarding is enabled by default on most platforms. To find out if Cisco Express Forwarding is enabled by default on your platform, enter theshowipcef command.
Command Modes
Global configuration (config)
Command History
Release
Modification
11.1CC
This command was introduced.
12.2
The default for Cisco 7200 series routers was changed from disabled to enabled.
12.2(11)T
This command was integrated into Cisco IOS Release 12.2(11)T and implemented on the following platforms: Cisco IAD2420 series, Cisco 2600 series, Cisco 3620 routers, Cisco 3640 routers, Cisco 3660 routers, Cisco 3700 series routers, and Cisco MC3810 multiservice access concentrators.
12.2(28)SB
This command was integrated into Cisco IOS Release 12.2(28)SB.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.2SX
This command is supported in the Cisco IOS Release 12.2SX train. Support in a specific 12.2SX release of this train depends on your feature set, platform, and platform hardware.
12.4(20T
This command was integrated into Cisco IOS Release 12.4(20)T.
15.2(2)SNI
This command was implemented on the Cisco ASR 901 Series Aggregation Services Routers.
Usage Guidelines
The ipcefcommand is not available on the Cisco 12000 series because that router series operates only in distributed Cisco Express Forwarding mode. Distributed Cisco Express Forwarding is enabled also on the Cisco 6500 series router.
Cisco Express Forwarding is advanced Layer 3 IP switching technology. Cisco Express Forwarding optimizes network performance and scalability for networks with dynamic, topologically dispersed traffic patterns, such as those associated with web-based applications and interactive sessions.
If you enable Cisco Express Forwarding and then create an access list that uses the log keyword, the packets that match the access list are not Cisco Express Forwarding switched. They are fast switched. Logging disables Cisco Express Forwarding.
The following example shows how to enable standard Cisco Express Forwarding operation:
Router(config)# ip cef
The following example shows how to enable distributed Cisco Express Forwarding operation:
Router(config)# ip cefdistributed
Related Commands
Command
Description
iproute-cache
Controls the use of high-speed switching caches for IP routing.
Enables Cisco Express Forwarding table consistency checker types and parameters.
showipcef
Displays entries or a summary of the FIB table.
ip cef accounting
To enable Cisco Express Forwarding network accounting, use the ipcefaccountingcommand in global configuration mode or interface configuration mode. To disable network accounting of Cisco Express Forwarding, use the noform of this command.
ipcefaccountingaccounting-types
noipcefaccountingaccounting-types
Specific Cisco Express Forwarding Accounting Information Through Interface Configuration Mode
The accounting-types argument must be replaced with at least one of the following keywords. Optionally, you can follow this keyword by any or all of the other keywords, but you can use each keyword only once.
non-recursive--Enables accounting through nonrecursive prefixes.
per-prefix--Enables express forwarding of the collection of the number of packets and bytes to a destination (or prefix).
prefix-length--Enables accounting through prefix length.
non-recursive
Enables accounting through nonrecursive prefixes.
This keyword is optional when used in global configuration mode after another keyword is entered. See theaccounting-types argument.
external
Counts input traffic in the nonrecursive external bin.
internal
Counts input traffic in the nonrecursive internal bin.
Command Default
Accounting is disabled by default.
Command Modes
Global configuration (config)
Interface configuration (config-if)
Command History
Release
Modification
11.2GS
This command was introduced.
11.1CC
Multiple platform support was added and the prefix-length keyword was added.
12.2(2)T
Theipcefaccountingnon-recursive command in interface configuration mode was added.
12.2(25)S
The load-balance-hash keyword was added.
12.2(28)SB
This command was integrated into Cisco IOS Release 12.2(28)SB.
12.2(25)SG
This command was integrated into Cisco IOS Release 12.2(25)SG.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.2(33)SXH
This command was integrated into Cisco IOS Release 12.2(33)SXH.
12.4(20)T
This command was integrated into Cisco IOS Release 12.4(20)T.
Usage Guidelines
Collecting statistics can help you better understand Cisco Express Forwarding patterns in your network.
When you enable network accounting for Cisco Express Forwarding from global configuration mode, accounting information is collected at the Route Processor (RP) when Cisco Express Forwarding mode is enabled and at the line cards when distributed Cisco Express Forwarding mode is enabled. You can then display the collected accounting information using the showipcef privileged EXEC command.
For prefixes with directly connected next hops, the non-recursive keyword enables express forwarding of the collection of packets and bytes through a prefix. This keyword is optional when this command is used in global configuration mode.
This command in interface configuration mode must be used in conjunction with the global configuration command. The interface configuration command allows a user to specify two different bins (internal or external) for the accumulation of statistics. The internal bin is used by default. The statistics are displayed through the showipcefdetail command.
Per-destination load balancing uses a series of 16 hash buckets into which the set of available paths are distributed. A hash function operating on certain properties of the packet is applied to select a bucket that contains a path to use. The source and destination IP addresses are the properties used to select the bucket for per-destination load balancing. Use the load-balance-hash keyword with the ipcefaccounting command to enable per-hash-bucket counters. Enter theshowipcefprefixinternal command to display the per-hash-bucket counters.
Examples
The following example shows how to enable the collection of Cisco Express Forwarding accounting information for prefixes directly connected to the next hops:
Router(config)# ip cef accounting non-recursive
Related Commands
Command
Description
ipv6cefaccounting
Enables Cisco Express Forwarding for IPv6 (CEFv6) and distributed CEFv6 (dCEFv6) network accounting.
showcef
Displays information about packets forwardedbyCiscoExpressForwarding.
showipcef
Displays entries or a summary of the FIB table.
ip cef linecard ipc memory
To configure the line card memory pool for the Cisco Express Forwarding queuing messages, use the ipceflinecardipcmemory command in global configuration mode. To return to the default Inter-process Communications (IPC) memory allocation, use the no form of this command.
ipceflinecardipcmemorykbps
noipceflinecardipcmemorykbps
Syntax Description
kbps
Kilobytes of line card memory allocated. Range is 0 to 12800. The default IPC memory allocation is 25 messages. However, this value depends on the switching platform.
Command Default
If you do not configure a line card memory pool for the Cisco Express Forwarding queuing messages, the default is the IPC memory allocation for the switching platform.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(2)T
This command was introduced.
Usage Guidelines
This command is available only on distributed switching platforms.
If you are expecting large routing updates to the Route Processor (RP), use this command to allocate a larger memory pool on the line cards for queuing Cisco Express Forwarding routing update messages. The memory pool reduces the transient memory requirements on the RP.
To display and monitor the current size of the Cisco Express Forwarding message queues, use the showceflinecardcommand. Also, the peak size is recorded and displayed when you use the detail keyword.
Examples
The following example shows how to configure the Cisco Express Forwarding line card memory queue to 128000 kilobytes per second:
Router(config)# ip cef linecard ipc memory 128000
Related Commands
Command
Description
showceflinecard
Displays detailed Cisco Express Forwarding information for the specified line card.
ip cef load-sharing algorithm
To select a Cisco Express Forwarding load-balancing algorithm, use theipcefload-sharingalgorithm command in global configuration mode. To return to the default universal load-balancing algorithm, use the no form of this command.
Sets the load-balancing algorithm to the original algorithm based on a source and destination hash.
tunnel
Sets the load-balancing algorithm for use in tunnel environments or in environments where there are only a few IP source and destination address pairs.
id
(Optional) Fixed identifier.
universal
Sets the load-balancing algorithm to the universal algorithm that uses a source and destination and an ID hash.
include-portssource
Sets the load-balancing algorithm to the include-ports algorithm that uses a Layer 4 source port.
include-portsdestination
Sets the load-balancing algorithm to the include-ports algorithm that uses a Layer 4 destination port.
include-portssourcedestination
Sets the load-balancing algorithm to the include-ports algorithm that uses Layer 4 source and destination ports.
include-portssourcedestinationgtp
Sets the load-balancing algorithm based on the GPRS Tunneling Protocol Tunnel Endpoint Identifier (GTP TEID) for the GTP-U packets.
Sets the load-balancing algorithm based on the Layer 4 source and destination ports for the non-GTP-U packets.
Command Default
The universal load-balancing algorithm is selected. If you do not configure the fixed identifier for a load-balancing algorithm, the router automatically generates a unique ID.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.0(12)S
This command was introduced.
12.1(5)T
This command was integrated into Cisco IOS Release 12.1(5)T.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.4(11)T
This command was modified. Theinclude-portssource, include-portsdestination, and the include-portssourcedestination keywords were added.
12.2SX
This command was integrated into Cisco IOS Release 12.2SX train. Support in a specific 12.2SX release of this train depends on your feature set, platform, and platform hardware.
3.10S
This command is supported in Cisco IOS XE Release 3.10S. The gtp keyword was added to the command.
Usage Guidelines
The original Cisco Express Forwarding load-balancing algorithm produced distortions in load sharing across multiple routers because of the use of the same algorithm on every router. When the load-balancing algorithm is set to universal mode, each router on the network can make a different load sharing decision for each source-destination address pair, and that resolves load-balancing distortions.
The tunnel algorithm is designed to share the load more fairly when only a few source-destination pairs are involved.
The include-ports algorithm allows you to use the Layer 4 source and destination ports as part of the load-balancing decision. This method benefits traffic streams running over equal-cost paths that are not loadshared because the majority of the traffic is between peer addresses that use different port numbers, such as Real-Time Protocol (RTP) streams. The include-ports algorithm is available in Cisco IOS Release 12.4(11)T and later releases.
Examples
The following example shows how to enable the Cisco Express Forwarding load-balancing algorithm for tunnel environments:
configure terminal
!
ip cef load-sharing algorithm tunnel
exit
Examples
The following example shows how to enable the IP CEF load-sharing algorithm based on GTP TEID:
Records Cisco Express Forwarding load-balancing hash algorithm events
ipload-sharing
Enables load balancing for Cisco Express Forwarding.
ip cef optimize neighbor resolution
To configure address resolution optimization from Cisco Express Forwarding for IPv4 for directly connected neighbors, use theipcefoptimizeneighborresolutioncommand in global configuration mode. To disable address resolution optimization from Cisco Express Forwarding for directly connected neighbors, use the no form of this command.
ipcefoptimizeneighborresolution
noipcefoptimizeneighborresolution
Syntax Description
This command has no arguments or keywords.
Command Default
If this command is not configured, Cisco Express Forwarding does not optimize the address resolution of directly connected neighbors for IPv4.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(25)S
This command was introduced.
12.2(28)SB
This command was integrated into Cisco IOS Release 12.2(28)SB.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.2(33)SXH
This command was integrated into Cisco IOS Release 12.2(33)SXH.
12.4(20)T
This command was integrated into Cisco IOS Release 12.4(20)T.
Usage Guidelines
Theipcefoptimizeneighborresolution command is very similar to the ipv6cefoptimizeneighborresolution command, except that it is IPv4-specific.
Use this command to trigger Layer 2 address resolution of neighbors directly from Cisco Express Forwarding for IPv4.
Examples
The following example shows how to optimize address resolution from Cisco Express Forwarding for directly connected neighbors:
Router(config)# ip cef optimize neighbor resolution
Related Commands
Command
Description
ipv6cefoptimizeneighborresolution
Configures address resolution optimization from Cisco Express Forwarding for IPv6 for directly connected neighbors.
ip cef table adjacency-prefix
To modify how Cisco Express Forwarding adjacency prefixes are managed, use theipceftableadjacency-prefixcommand in global configuration mode. To disable Cisco Express Forwarding adjacency prefix management, use the
no form of this command.
(Optional) Enables the periodic validation of Cisco Express Forwarding adjacency prefixes.
Command Default
All Cisco Express Forwarding adjacency prefix management is disabled by default.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.0(16)S
This command was introduced.
12.2(2)T
This command was integrated into Cisco IOS Release 12.2(2)T.
12.1(13)E07
12.1(19.02)E
12.3(04)XG
12.3(04)XK
12.3(06.01)PI03
The
validatekeyword was added.
The default behavior for
ip cef table adjacency-prefix override was changed to disabled.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.2SX
This command is supported in the Cisco IOS Release 12.2SX train. Support in a specific 12.2SX release of this train depends on your feature set, platform, and platform hardware.
Usage Guidelines
When Cisco Express Forwarding is configured, the forwarding information base (FIB) table may conflict with static host routes that are specified in terms of an output interface or created by a Layer 2 address resolution protocols such as Address Resolution Protocol (ARP), map lists, and so on.
The Layer 2 address resolution protocol adds adjacencies to Cisco Express Forwarding , which in turn creates a corresponding host route entry in the FIB table. This entry is called an adjacency prefix.
override
If the Cisco Express Forwarding adjacency prefix entries are also configured by a static host route, a conflict occurs.
This command ensures that adjacency prefixes can override static host glean routes, and correctly restore routes when the adjacency prefix is deleted.
validate
When you add a /31 netmask route, the new netmask does not overwrite an existing /32 Cisco Express Forwarding entry. This problem is resolved by configuring the
validate keyword to periodically validate prefixes derived from adjacencies in the FIB against prefixes originating from the RIB.
Examples
Examples
The following example shows how to enable Cisco Express Forwarding table adjacency prefix override:
Router(config)# ip cef table adjacency-prefix override
Examples
The following example shows how to enable Cisco Express Forwarding table adjacency prefix validation:
Router(config)# ip cef table adjacency-prefix validate
ip cef table consistency-check
Note
Effective with Cisco IOS Release 12.4(20)T, theipceftableconsistency-check command is not available in Cisco IOS software.
To enable consistency checker types and parameters for Cisco Express Forwarding tables, use the
ipceftableconsistency-checkcommand in global configuration mode. To disable consistency checkers, use the
no form of this command.
(Optional) Specifies the type of consistency check to configure.
lc-detect
(Optional) Specifies that the line card or the module detects a missing prefix. On the line card, a missing prefix is confirmed by Route Processor (RP).
scan-lc
(Optional) Specifies a passive scan check of tables on the line card or module.
scan-rib
(Optional) Specifies a passive scan check of tables on the RP against the Routing Information Base (RIB). For the Cisco 7600 series router, the
scan-rib keyword specifies a passive scan check of tables on the rendezvous point against the RIB.
scan-rp
(Optional) Specifies a passive scan check of tables on the RP or on the rendezvous point for the Cisco 7600 series router.
countcount-number
(Optional) Specifies the maximum number of prefixes to check per scan. Valid values are from 1 to 225.
periodseconds
(Optional) Specifies the period of time between scans. Valid values are from 30 to 3600 seconds.
settle-timeseconds
(Optional) Specifies the amount of time that elapsed during which updates for a candidate prefix are ignored as inconsistencies. Valid values are from 1 to 3600 seconds. This keyword is used during route updates.
Command Default
All consistency checkers are disabled by default.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.0(15)S
This command was introduced.
12.2(2)T
This command was integrated into Cisco IOS Release 12.2(2)T.
12.2(14)SX
Support for this command was implemented on the Supervisor Engine 720.
12.2(17d)SXB
Support for this command on the Supervisor Engine 2 was integrated into Release 12.2(17d)SXB.
12.2(25)S
This command was replaced by theceftableconsistency-check command.
12.2(28)SB
This command was replaced by theceftableconsistency-check command.
12.2(33)SRA
This command was replaced by theceftableconsistency-check command.
12.2(33)SXH
This command was replaced by theceftableconsistency-check command.
12.4(20)T
This command was removed.
Usage Guidelines
This command configures Cisco Express Forwarding table consistency checkers and parameters for the detection mechanism types that are listed in the table below.
Table 1 CEF Detection Mechanism Types
Detection Mechanism
Where Operates
Description
lc-detect
Line Card or Module
Operates on the line card or module detecting and retrieving IP prefixes that are missing from its FIB table. If IP prefixes are missing, the line card or module cannot forward packets for these addresses. The lc-detect mechanism sends IP prefixes to the RP or rendezvous point for confirmation. If the RP or rendezvous point detects that it has the relevant entry, an inconsistency is identified and an error message is displayed. Also, the RP or rendezvous point sends a signal back to the line card or module confirming that the IP prefix is an inconsistency.
scan-lc
Line Card or Module
Operates on the line card or module by looking through the FIB table for a configurable time period and sending the next
n prefixes to the RP or rendezvous point. The RP or rendezvous point performs an exact lookup. If it finds the prefix missing, the RP or rendezvous point reports an inconsistency. Finally, the RP or rendezvous point sends a signal back to the line card or module for confirmation.
scan-rp
Route Processor
Operates on the RP or rendezvous point (opposite of the scan-lc) by looking through the FIB table for a configurable time period and sending the next
n prefixes to the line card or module. The line card or module performs an exact lookup. If it finds the prefix missing, the line card or module reports an inconsistency and finally signals the RP or rendezvous point for confirmation.
scan-rib
Route Processor
Operates on all RPs or rendezvous points (even nondistributed) and scans the RIB to ensure that prefix entries are present in the RP or rendezvous point FIB table.
Examples
The following example shows how to enable the Cisco Express Forwarding consistency checkers:
Router(config)# ip cef table consistency-check
Related Commands
Command
Description
clearipcefinconsistency
Clears Cisco Express Forwarding inconsistency statistics and records found by the Cisco Express Forwarding consistency checkers.
debugipcef
Displays various Cisco Express Forwarding table query and check events.
showipcefinconsistency
Displays Cisco Express Forwarding IP prefix inconsistencies.
ip cef table event-log
Note
Theipceftableevent-log command is not available in Cisco IOS Releases 12.2(25)S, 12.2(28)SB, 12.2(33)SRA, 12.2(33)SXH, 12.4(20)T, and later releases.
To control Cisco Express Forwarding table event-log characteristics, use the ipceftableevent-log command in global configuration mode.
(Optional) Number of event entries. The range is from 1 to 4294967295. The default is 10000.
match
(Optional) Log events matching specified prefix and mask.
ip-prefix
(Optional) IP prefixes matched, in dotted decimal format (A.B.C.D).
mask
(Optional) Network mask written as A.B.C.D.
vrfvrf-name
(Optional) Virtual Private Network (VPN) routing and forwarding instance (VRF) Cisco Express Forwarding table and VRF name.
Command Default
Default size for event log is 10000 entries.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.0(15)S
This command was introduced.
12.2(2)T
This command was integrated into Cisco IOS Release 12.2(2)T.
12.2(25)S
This command was removed. It is not available in Cisco IOS Release 12.2(25)S and later Cisco IOS 12.2S releases.
12.2(28)SB
This command was removed. It is not available in Cisco IOS Release 12.2(28)SB and later Cisco IOS 12.2SB releases.
12.2(33)SRA
This command was removed. It is not available in Cisco IOS Release 12.2(33)SRAand later Cisco IOS 12.2SR releases.
12.2(33)SXH
This command was removed. It is not available in Cisco IOS Release 12.2(33)SXH and later Cisco IOS 12.2SX releases.
12.4(20)T
This command was removed. It is not available in Cisco IOS Release 12.4(20)T and later Cisco IOS 12.4T releases.
Usage Guidelines
This command is used to troubleshoot inconsistencies that occur in the Cisco Express Forwarding event log between the routes in the Routing Information Base (RIB), Route Processor (RP) Cisco Express Forwarding tables, and line card Cisco Express Forwarding tables.
The Cisco Express Forwarding event log collects Cisco Express Forwarding events as they occur without debugging enabled. This process allows the tracing of an event immediately after it occurs. Cisco technical personnel may ask for information from this event log to aid in resolving problems with the Cisco Express Forwarding feature.
When the Cisco Express Forwarding table event log has reached its capacity, the oldest event is written over by the newest event until the event log size is reset using this command or cleared using the clearipcefevent-log command.
Examples
The following example shows how to set the Cisco Express Forwarding table event log size to 5000 entries:
Router(config)# ip cef table event-log size 5000
Related Commands
Command
Description
ceftableconsistency-check
Enables Cisco Express Forwarding table consistency checker types and parameters.
ip cef table resolution-timer
Note
Theipceftableresolution-timer command is not available in Cisco IOS Releases 12.2(25)S, 12.2(28)SB, 12.2(33)SRA, 12.2(33)SXH, 12.4(20)T and later releases.
To change the Cisco Express Forwarding background resolution timer, use the ipceftableresolution-timercommand in global configuration mode.
ipceftableresolution-timerseconds
noipceftableresolution-timerseconds
Syntax Description
seconds
Timer value in seconds. Range is from 0 to 30 seconds; 0 is for the automatic exponential backoff scheme.
Command Default
The default configuration value is 0 seconds for automatic exponential backoff.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(2)T
This command was introduced.
12.2(25)S
This command was removed. It is not available in Cisco IOS Release 12.2(25)S and later Cisco IOS 12.2S releases.
12.2(28)SB
This command was removed. It is not available in Cisco IOS Release 12.2(28)SB and later Cisco IOS 12.2SB releases.
12.2(33)SRA
This command was removed. It is not available in Cisco IOS Release 12.2(33)SRAand later Cisco IOS 12.2SR releases.
12.2(33)SXH
This command was removed. It is not available in Cisco IOS Release 12.2(33)SXH and later Cisco IOS 12.2SX releases.
12.4(20)T
This command was removed. It is not available in Cisco IOS Release 12.4(20)T and later Cisco IOS 12.4T releases.
Usage Guidelines
The Cisco Express Forwarding background resolution timer can use either a fixed time interval or an exponential backoff timer that reacts to the amount of resolution work required. The exponential backoff timer starts at 1 second, increasing to 16 seconds when a network flap is in progress. When the network recovers, the timer returns to 1 second.
The default is used for the exponential backoff timer. During normal operation, the default configuration value set to 0 results in re-resolution occurring much sooner than when the timer is set at a higher fixed interval.
Examples
The following example show how to set the Cisco Express Forwarding background resolution timer to 3 seconds:
Router(config)# ip cef table resolution-timer 3
ip cef traffic-statistics
To change the time interval that controls when Next Hop Resolution Protocol
(NHRP) sets up or tears down a switched virtual circuit (SVC), use the ipceftraffic-statisticscommand in global configuration mode. To restore the default values, use the no form of this command.
(Optional) Length of time (in 30-second increments) during which the average trigger-threshold and teardown-threshold intervals are calculated before an SVC setup or teardown action is taken. (These thresholds are configured in the ipnhrptrigger-svc command.) The load-interval range is from 30 seconds to 300 seconds, in 30-second increments. The default value is 30 seconds.
update-rateseconds
(Optional) Frequency that the port adapter sends the accounting statistics to the Route Processor (RP). When the route processor is using NHRP in distributed Cisco Express Forwarding switching mode, this value must be set to 5 seconds. The default value is 10 seconds.
Command Default
Load interval: 30 seconds
Update rate: 10 seconds
Command Modes
Global configuration (config)
Command History
Release
Modification
12.0
This command was introduced.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.2SX
This command is supported in the Cisco IOS Release 12.2SX train. Support in a specific 12.2SX release of this train depends on your feature set, platform, and platform hardware.
Usage Guidelines
Theipnhrptrigger-svc command sets the threshold by which NHRP sets up and tears down a connection. The threshold is the Cisco Express Forwarding traffic load statistics. The thresholds in the ipnhrptrigger-svc command are measured during a sampling interval of 30 seconds, by default. To change that interval over which that threshold is determined, use theload-intervalseconds option of the ipceftraffic-statisticscommand.
When NHRP is configured on a Cisco Express Forwarding switching node with a Versatile Interface Processor (VIP2) adapter, you must make sure the update-rate keyword is set to 5 seconds.
Other Cisco IOS features could also use the ipceftraffic-statistics command; this NHRP feature relies on it.
Examples
In the following example, the triggering and teardown thresholds are calculated based on an average over 120 seconds:
Router(config)# ip cef traffic-statistics load-interval 120
Related Commands
Command
Description
ipnhrptrigger-svc
Configures when NHRP will set up and tear down an SVC based on aggregate traffic rates.
ip load-sharing
To enable load balancing for Cisco Express Forwarding on an interface, use the ipload-sharing command in interface configuration mode. To disable load balancing for Cisco Express Forwarding on the interface, use the no form of this command.
ipload-sharing
{ per-packet | per-destination }
noipload-sharingper-packet
Syntax Description
per-packet
Enables per-packet load balancing for Cisco Express Forwarding on the interface. This functionality and keyword are not supported on all platforms. See "Usage Guidelines" for more information.
per-destination
Enables per-destination load balancing for Cisco Express Forwarding on the interface.
Command Default
Per-destination load balancing is enabled by default when you enable Cisco Express Forwarding.
Command Modes
Interface configuration (config-if)
Command History
Release
Modification
11.2GS
This command was introduced.
11.1CC
This command was modified. Multiple platform support was added.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.2SX
This command is supported in the Cisco IOS Release 12.2SX train. Support in a specific 12.2SX release of this train depends on your feature set, platform, and platform hardware.
Usage Guidelines
Per-packet load balancing allows the router to send data packets over successive equal-cost paths without regard to individual destination hosts or user sessions. Path utilization is good, but packets destined for a given destination host might take different paths and might arrive out of order.
Note
Per-packet load balancing via Cisco Express Forwarding is not supported on Engine 2 Cisco 12000 series Internet router line cards (LCs).
Per-destination load balancing allows the router to use multiple, equal-cost paths to achieve load sharing. Packets for a given source-destination host pair are guaranteed to take the same path, even if multiple, equal-cost paths are available. Traffic for different source-destination host pairs tends to take different paths.
Note
If you want to enable per-packet load sharing to a particular destination, then all interfaces that can forward traffic to the destination must be enabled for per-packet load sharing.
Note
Per-packet load balancing can result in out-of-sequence (OOS) packet delivery errors on some routers, which can cause applications such as VoIP to malfunction. Therefore, per-packet load balancing is not recommended. For more information, see the release notes and caveats for your platform and software release.
Cisco ASR 1000 Series Aggregation Services Routers
The ipload-sharingcommand is not supported on the Cisco ASR 1000 Series Aggregation Services Router. Per-packet load balancing is not supported. On the Cisco ASR 1000 Series Aggregation Services Router, per-destination load balancing is enabled by default and cannot be disabled.
Examples
The following example shows how to enable per-packet load balancing:
Router(config)# interface E0
Router(config-if)# ip load-sharing per-packet
The following example shows how to enable per-destination load balancing:
Router(config)# interface E0
Router(config-if)# ip load-sharing per-destination
Related Commands
Command
Description
ipcef
Enables CEF on the RP card.
ip route-cache
To control the use of switching methods for forwarding IP packets, use the iproute-cache command in interface configuration mode. To disable any of these switching methods, use the no form of this command.
(Optional) Enables Cisco Express Forwarding operation on an interface.
distributed
(Optional) Enables distributed switching on the interface. (This keyword is not supported on the Cisco 7600 routers.) Distributed switching is disabled by default.
flow
(Optional) Enables NetFlow accounting for packets that are received by the interface. The default is disabled.
policy
(Optional) Enables fast-switching for packets that are forwarded using policy-based routing (PBR). Fast Switching for PBR (FSPBR) is disabled by default.
same-interface
(Optional) Enables fast-switching of packets onto the same interface on which they arrived.
Command Default
The switching method is not controlled.
Command Modes
Interface configuration (config-if)
Command History
Release
Modification
10.0
This command was introduced.
11.1
The flowkeyword was added.
11.2GS
The cefanddistributedkeywords were added.
11.1CC
cefkeyword support was added for multiple platforms.
12.0
The policykeyword was added.
12.2(25)S
This command was integrated into Cisco IOS Release 12.2(25)S. The ip route-cache flow command is automatically remapped to the ip flow ingress command.
12.2(28)SB
This command was integrated into Cisco IOS Release 12.2(28)SB. This command is not supported on the Cisco 10000 series router.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.4(20)T
This command was integrated into Cisco IOS Release 12.4(20)T.
12.2(33)SXI
This command was integrated into Cisco IOS Release 12.2(33)SXI.
Usage Guidelines
IP Route Cache
Note
The Cisco 10000 series routers do not support the iproute-cache command.
Using the route cache is often called fast switching
. The route cache allows outgoing packets to be load-balanced on a per-destination
basis rather than on a per-packet basis. Theiproute-cachecommand with no additional keywords enables fast switching.
Entering the iproute-cachecommand has no effect on a subinterface. Subinterfaces accept the noform of the command; however, this disables Cisco Express Forwarding or distributed Cisco Express Forwarding on the physical interface and all subinterfaces associated with the physical interface
The default behavior for Fast Switching varies by interface and media.
Note
IPv4 fast switching is removed with the implementation of the Cisco Express Forwarding infrastructure enhancements for Cisco IOS 12.2(25)S-based releases and Cisco IOS Release 12.4(20)T. For these and later Cisco IOS releases, switching path are Cisco Express Forwarding switched or process switched.
IP Route Cache Same Interface
You can enable IP fast switching when the input and output interfaces are the same interface, using the iproute-cachesame-interfacecommand. This configuration normally is not recommended, although it is useful when you have partially meshed media, such as Frame Relay or you are running Web Cache Communication Protocol (WCCP) redirection. You could use this feature on other interfaces, although it is not recommended because it would interfere with redirection of packets to the optimal path.
IP Route Cache Flow
The flow caching option can be used in conjunction with Cisco Express Forwarding switching to enable NetFlow, which allows statistics to be gathered with a finer granularity. The statistics include IP subprotocols, well-known ports, total flows, average number of packets per flow, and average flow lifetime.
Note
The iproute-cacheflow command has the same functionality as the ipflowingress command, which is the preferred command for enabling NetFlow. If either the iproute-cacheflow command or the ipflowingress command is configured, both commands will appear in the output of the showrunning-config command.
IP Route Cache Distributed
The distributed option is supported on Cisco routers with line cards and Versatile Interface Processors (VIPs) that support Cisco Express Forwarding switching.
On Cisco routers with Route/Switch Processor (RSP) and VIP controllers, the VIP hardware can be configured to switch packets received by the VIP with no per-packet intervention on the part of the RSP. When VIP distributed switching is enabled, the input VIP interface tries to switch IP packets instead of forwarding them to the RSP for switching. Distributed switching helps decrease the demand on the RSP.
If the iproute-cachedistributed,ipcefdistributed, andiproute-cacheflowcommands are configured, the VIP performs distributed Cisco Express Forwarding switching and collects a finer granularity of flow statistics.
IP Route-Cache Cisco Express Forwarding
In some instances, you might want to disable Cisco Express Forwarding or distributed Cisco Express Forwarding on a particular interface because that interface is configured with a feature that
Cisco Express Forwarding or distributed Cisco Express Forwarding does not support. Because all interfaces that support Cisco Express Forwarding or distributed Cisco Express Forwarding are enabled by default when you enable Cisco Express Forwarding or distributed Cisco Express Forwarding operation globally, you must use the no form of the iproute-cachedistributedcommand in the interface configuration mode to turn Cisco Express Forwarding or distributed Cisco Express Forwarding operation off a particular interface.
Disabling Cisco Express Forwarding or distributed Cisco Express Forwarding on an interface disables Cisco Express Forwarding or distributed Cisco Express Forwarding switching for packets forwarded to the interface, but does not affect packets forwarded out of the interface.
Additionally, when you disable distributed Cisco Express Forwarding on the RSP, Cisco IOS software switches packets using the next-fastest switch path (Cisco Express Forwarding).
Enabling Cisco Express Forwarding globally disables distributed Cisco Express Forwarding on all interfaces. Disabling Cisco Express Forwarding or distributed Cisco Express Forwarding globally enables process switching on all interfaces.
Note
On the Cisco 12000 series Internet router, you must not disable distributed Cisco Express Forwarding on an interface.
IP Route Cache Policy
If Cisco Express Forwarding is already enabled, the iproute-cacheroute command is not required because PBR packets are Cisco Express Forwarding-switched by default.
Before you can enable fast-switched PBR, you must first configure PBR.
FSPBR supports all of PBR’s match commands and most of PBR’s set commands, with the following restrictions:
Thesetipdefaultnext-hopand setdefaultinterface commands are not supported.
Thesetinterface command is supported only over point-to-point links, unless a route cache entry exists using the same interface specified in the setinterface command in the route map.
Also, at the process level, the routing table is consulted to determine if the interface is on a reasonable path to the destination. During fast switching, the software does not make this check. Instead, if the packet matches, the software blindly forwards the packet to the specified interface.
Note
Not all switching methods are available on all platforms. Refer to the CiscoProductCatalog for information about features available on the platform you are using.
Examples
Examples
The following example shows how to enable fast switching and disable Cisco Express Forwarding switching:
Router(config)# interface ethernet 0/0/0
Router(config-if)# ip route-cache
The following example shows that fast switching is enabled:
Router# show ip interface fastEthernet 0/0/0
FastEthernet0/0/0 is up, line protocol is up
Internet address is 10.1.1.254/24
Broadcast address is 255.255.255.224
Address determined by non-volatile memory
MTU is 1500 bytes
Helper address is not set
Directed broadcast forwarding is disabled
Multicast reserved groups joined: 224.0.0.10
Outgoing access list is not set
Inbound access list is not set
Proxy ARP is enabled
Security level is default
Split horizon is enabled
ICMP redirects are always sent
ICMP unreachables are always sent
ICMP mask replies are never sent
IP fast switching is enabled
IP fast switching on the same interface is disabled
IP Flow switching is disabled
IP Distributed switching is disabled
IP Feature Fast switching turbo vector
IP Null turbo vector
IP multicast fast switching is enabled
The following example shows that Cisco Express Forwarding switching is disabled:
Router# show cef interface fastEthernet 0/0/0
FastEthernet0/0/0 is up (if_number 3)
Corresponding hwidb fast_if_number 3
Corresponding hwidb firstsw->if_number 3
Internet address is 10.1.1.254/24
ICMP redirects are always sent
Per packet load-sharing is disabled
IP unicast RPF check is disabled
Inbound access list is not set
Outbound access list is not set
IP policy routing is disabled
Hardware idb is FastEthernet0/0/0
Fast switching type 1, interface type 18
IP CEF switching disabled
IP Feature Fast switching turbo vector
IP Null turbo vector
Input fast flags 0x0, Output fast flags 0x0
ifindex 1(1)
Slot 0 Slot unit 0 VC -1
Transmit limit accumulator 0x48001A02 (0x48001A02)
IP MTU 1500
The following example shows the configuration information for FastEthernet interface 0/0/0:
Router# show running-config
.
.
!
interface FastEthernet0/0/0
ip address 10.1.1.254 255.255.255.0
no ip route-cache cef
no ip route-cache distributed
!
The following example shows how to enable Cisco Express Forwarding (and to disable distributed
Cisco Express Forwarding if it is enabled):
Router(config-if)# ip route-cache cef
The following example shows how to enable VIP distributed Cisco Express Forwarding and per-flow accounting on an interface (regardless of the previous switching type enabled on the interface):
Router(config)# interface e0
Router(config-if)# ip address 10.252.245.2 255.255.255.0
Router(config-if)# ip route-cache distributed
Router(config-if)# ip route-cache flow
The following example shows how to enable Cisco Express Forwarding on the router globally (which also disables distributed Cisco Express Forwarding on any interfaces that are running distributed
Cisco Express Forwarding), and disable Cisco Express Forwarding (which enables process switching) on Ethernet interface 0:
Router(config)# ip cef
Router(config)# interface e0
Router(config-if)# no ip route-cache cef
The following example shows how to enable distributed Cisco Express Forwarding operation on the router (globally), and disable Cisco Express Forwarding operation on Ethernet interface 0:
Router(config)# ip cef distributed
Router(config)# interface e0
Router(config-if)# no ip route-cache cef
The following example shows how to reenable distributed Cisco Express Forwarding operation on Ethernet interface 0:
Router(config)# ip cef distributed
Router(config)# interface e0
Router(config-if)# ip route-cache distributed
Examples
The following example shows how to enable fast switching and disable Cisco Express Forwarding switching:
Router(config)# interface ethernet 0/0/0
Router(config-if)# ip route-cache same-interface
The following example shows that fast switching on the same interface is enabled for interface fastethernet 0/0/0:
Router# show ip interface fastEthernet 0/0/0
FastEthernet0/0/0 is up, line protocol is up
Internet address is 10.1.1.254/24
Broadcast address is 255.255.255.224
Address determined by non-volatile memory
MTU is 1500 bytes
Helper address is not set
Directed broadcast forwarding is disabled
Multicast reserved groups joined: 224.0.0.10
Outgoing access list is not set
Inbound access list is not set
Proxy ARP is enabled
Security level is default
Split horizon is enabled
ICMP redirects are always sent
ICMP unreachables are always sent
ICMP mask replies are never sent
IP fast switching is enabled
IP fast switching on the same interface is enabled
IP Flow switching is disabled
IP Distributed switching is disabled
IP Feature Fast switching turbo vector
IP Null turbo vector
IP multicast fast switching is enabled
IP multicast distributed fast switching is disabled
IP route-cache flags are Fast
Router Discovery is disabled
IP output packet accounting is disabled
IP access violation accounting is disabled
TCP/IP header compression is disabled
RTP/IP header compression is disabled
Probe proxy name replies are disabled
Policy routing is disabled
Network address translation is disabled
WCCP Redirect outbound is disabled
WCCP Redirect inbound is disabled
WCCP Redirect exclude is disabled
BGP Policy Mapping is disabled
IP multicast multilayer switching is disabled
The following example shows the configuration information for FastEthernet interface 0/0/0:
Router# show running-config
.
.
!
interface FastEthernet0/0/0
ip address 10.1.1.254 255.255.255.0
ip route-cache same-interface
no ip route-cache cef
no ip route-cache distributed
!
Examples
The following example shows how to enable NetFlow switching:
Router(config)# interface ethernet 0/0/0
Router(config-if)# ip route-cache flow
The following example shows that NetFlow accounting is enabled for FastEthernet interface 0/0/0:
Router# show ip interface fastEthernet 0/0/0
FastEthernet0/0/0 is up, line protocol is up
Internet address is 10.1.1.254/24
Broadcast address is 255.255.255.224
Address determined by non-volatile memory
MTU is 1500 bytes
Helper address is not set
Directed broadcast forwarding is disabled
Multicast reserved groups joined: 224.0.0.10
Outgoing access list is not set
Inbound access list is not set
Proxy ARP is enabled
Security level is default
Split horizon is enabled
ICMP redirects are always sent
ICMP unreachables are always sent
ICMP mask replies are never sent
IP fast switching is enabled
IP fast switching on the same interface is disabled
IP Flow switching is enabled
IP Distributed switching is disabled
IP Flow switching turbo vector
IP Null turbo vector
IP multicast fast switching is enabled
IP multicast distributed fast switching is disabled
IP route-cache flags are Fast, Flow
Router Discovery is disabled
IP output packet accounting is disabled
IP access violation accounting is disabled
TCP/IP header compression is disabled
RTP/IP header compression is disabled
Probe proxy name replies are disabled
Policy routing is disabled
Network address translation is disabled
WCCP Redirect outbound is disabled
WCCP Redirect inbound is disabled
WCCP Redirect exclude is disabled
BGP Policy Mapping is disabled
IP multicast multilayer switching is disabled
Examples
The following example shows how to enable distributed switching:
Router(config)# ip cef distributed
Router(config)# interface ethernet 0/0/0
Router(config-if)# ip route-cache distributed
The following example shows that distributed Cisco Express Forwarding switching is for FastEthernet interface 0/0/0:
Router# show cef interface fastEthernet 0/0/0
FastEthernet0/0/0 is up (if_number 3)
Corresponding hwidb fast_if_number 3
Corresponding hwidb firstsw->if_number 3
Internet address is 10.1.1.254/24
ICMP redirects are always sent
Per packet load-sharing is disabled
IP unicast RPF check is disabled
Inbound access list is not set
Outbound access list is not set
IP policy routing is disabled
Hardware idb is FastEthernet0/0/0
Fast switching type 1, interface type 18
IP Distributed CEF switching enabled
IP Feature Fast switching turbo vector
IP Feature CEF switching turbo vector
Input fast flags 0x0, Output fast flags 0x0
ifindex 1(1)
Slot 0 Slot unit 0 VC -1
Transmit limit accumulator 0x48001A02 (0x48001A02)
IP MTU 1500
Examples
The following example shows how to configure a simple policy-based routing scheme and to enable FSPBR:
Router(config)# access-list 1 permit 10.1.1.0 0.0.0.255
Router(config)# route-map mypbrtag permit 10
Router(config-route-map)# match ip address 1
Router(config-route-map)# set ip next-hop 10.1.1.195
Router(config-route-map)# exit
Router(config)# interface fastethernet 0/0/0
Router(config-if)# ip route-cache policy
Router(config-if)# ip policy route-map mypbrtag
The following example shows that FSPBR is enabled for FastEthernet interface 0/0/0:
Router# show ip interface fastEthernet 0/0/0
FastEthernet0/0/0 is up, line protocol is up
Internet address is 10.1.1.254/24
Broadcast address is 255.255.255.255
Address determined by non-volatile memory
MTU is 1500 bytes
Helper address is not set
Directed broadcast forwarding is disabled
Multicast reserved groups joined: 224.0.0.10
Outgoing access list is not set
Inbound access list is not set
Proxy ARP is enabled
Security level is default
Split horizon is enabled
ICMP redirects are always sent
ICMP unreachables are always sent
ICMP mask replies are never sent
IP fast switching is enabled
IP fast switching on the same interface is disabled
IP Flow switching is disabled
IP CEF switching is enabled
IP Distributed switching is enabled
IP Feature Fast switching turbo vector
IP Feature CEF switching turbo vector
IP multicast fast switching is enabled
IP multicast distributed fast switching is disabled
IP route-cache flags are Fast, Distributed, Policy, CEF
Router Discovery is disabled
IP output packet accounting is disabled
IP access violation accounting is disabled
TCP/IP header compression is disabled
RTP/IP header compression is disabled
Probe proxy name replies are disabled
Policy routing is enabled, using route map my_pbr_tag
Network address translation is disabled
WCCP Redirect outbound is disabled
WCCP Redirect inbound is disabled
WCCP Redirect exclude is disabled
BGP Policy Mapping is disabled
IP multicast multilayer switching is disabled
Displays detailed Cisco Express Forwarding information for interfaces.
showipinterface
Displays the usability status of interfaces configured for IP.
showmpoaclient
Displays the routing table cache used to fast switch IP traffic.
ip route-cache policy
The policykeyword for the iproute-cachecommand is no longer documented as a separate command.
The information for using the policykeyword for the iproute-cachecommand has been incorporated into the iproute-cachecommand documentation. See the iproute-cache command documentation for more information.
ip verify unicast notification threshold
To configure the threshold value used to determine whether to send a Unicast Reverse Path Forwarding (RPF) drop rate notification, use the ipverifyunicastnotificationthresholdcommand in interface configuration mode. To set the notification threshold back to the default value, use the no form of this command.
Threshold value, in packets per second, used to determine whether to send a Unicast RPF drop rate notification. The range is from 0 to 4294967295. The default is 1000.
Command Default
No notifications are sent.
Command Modes
Interface configuration (config-if)
Command History
Release
Modification
12.2(31)SB2
This command was introduced.
12.2(33)SRC
This command was integrated into Cisco IOS Release 12.2(33)SRC.
12.4(20)T
This command was integrated into Cisco IOS Release 12.4(20)T.
12.2(33)SXI2
This command was integrated into Cisco IOS Release 12.2(33)SXI2.
Usage Guidelines
This command configures the threshold Unicast RPF drop rate which, when exceeded, triggers a notification. Configuring a value of 0 means that any Unicast RPF packet drop triggers a notification.
Examples
The following example shows how to configure a notification threshold value of 900 on Ethernet interface 3/0:
Configures the interval of time between Unicast RPF drop rate computations.
ipverifydrop-ratecomputewindow
Configures the interval of time during which the Unicast RPF drop count is collected for the drop rate computation.
ipverifydrop-ratenotifyhold-down
Configures the minimum time between Unicast RPF drop rate notifications.
ip verify unicast reverse-path
Note
This command was replaced by the
ipverifyunicastsourcereachable-viacommand effective with Cisco IOS Release 12.0(15)S. The
ipverifyunicastsourcereachable-via command allows for more flexibility and functionality, such as supporting asymmetric routing, and should be used for any Reverse Path Forward implementation. Theipverifyunicastreverse-path command is still supported.
To enable Unicast Reverse Path Forwarding (Unicast RPF), use the
ipverifyunicastreverse-pathcommand in interface configuration mode. To disable Unicast RPF, use the
no form of this command.
ipverifyunicastreverse-path [list]
noipverifyunicastreverse-path [list]
Syntax Description
list
(Optional) Specifies a numbered access control list (ACL) in the following ranges:
1 to 99 (IP standard access list)
100 to 199 (IP extended access list)
1300 to 1999 (IP standard access list, expanded range)
2000 to 2699 (IP extended access list, expanded range)
Command Default
Unicast RPF is disabled.
Command Modes
Interface configuration (config-if)
Command History
Release
Modification
11.1(CC)
12.0
This command was introduced. This command was not included in Cisco IOS Release 11.2 or 11.3
12.1(2)T
Added ACL support using the list argument. Added per-interface statistics on dropped or suppressed packets.
12.0(15)S
The
ip verify unicast source reachable-via command replaced this command, and the following keywords were added to the
ip verify unicast source reachable-via command:
allow-default,
allow-self-ping,
rx, and
any.
12.1(8a)E
The
ip verify unicast reverse-path command was integrated into Cisco IOS Release 12.1(8a)E.
12.2(14)S
The
ip verify unicast reverse-path command was integrated into Cisco IOS Release 12.2(14)S.
12.2(14)SX
The
ip verify unicast reverse-path command was integrated into Cisco IOS Release 12.2(14)SX.
12.2(33)SRA
The
ip verify unicast reverse-path command was integrated into Cisco IOS Release 12.2(33)SRA.
Usage Guidelines
Use the
ipverifyunicastreverse-pathinterface command to mitigate problems caused by malformed or forged (spoofed) IP source addresses that are received by a router. Malformed or forged source addresses can indicate denial of service (DoS) attacks on the basis of source IP address spoofing.
When Unicast RPF is enabled on an interface, the router examines all packets that are received on that interface. The router checks to ensure that the source address appears in the Forwarding Information Base (FIB) and that it matches the interface on which the packet was received. This "look backwards" ability is available only when Cisco Express Forwarding is enabled on the router because the lookup relies on the presence of the FIB. Cisco Express Forwarding generates the FIB as part of its operation.
To use Unicast RPF, enable Cisco Express Forwarding switching or distributed Cisco Express Forwarding switching in the router. There is no need to configure the input interface for Cisco Express Forwarding switching. As long as Cisco Express Forwarding is running on the router, individual interfaces can be configured with other switching modes.
Note
It is very important for Cisco Express Forwarding to be configured globally in the router. Unicast RPF will not work without Cisco Express Forwarding.
Note
Unicast RPF is an input function and is applied on the interface of a router only in the ingress direction.
The Unicast Reverse Path Forwarding feature checks to determine whether any packet that is received at a router interface arrives on one of the best return paths to the source of the packet. The feature does this by doing a reverse lookup in the Cisco Express Forwarding table. If Unicast RPF does not find a reverse path for the packet, Unicast RPF can drop or forward the packet, depending on whether an ACL is specified in the Unicast Reverse Path Forwarding command. If an ACL is specified in the command, then when (and only when) a packet fails the Unicast RPF check, the ACL is checked to determine whether the packet should be dropped (using a deny statement in the ACL) or forwarded (using a permit statement in the ACL). Whether a packet is dropped or forwarded, the packet is counted in the global IP traffic statistics for Unicast RPF drops and in the interface statistics for Unicast RPF.
If no ACL is specified in the Unicast Reverse Path Forwarding command, the router drops the forged or malformed packet immediately and no ACL logging occurs. The router and interface Unicast RPF counters are updated.
Unicast RPF events can be logged by specifying the logging option for the ACL entries used by the Unicast Reverse Path Forwarding command. Log information can be used to gather information about the attack, such as source address, time, and so on.
Where to Use RPF in Your Network
Unicast RPF may be used on interfaces in which only one path allows packets from valid source networks (networks contained in the FIB). Unicast RPF may also be used in cases for which a router has multiple paths to a given network, as long as the valid networks are switched via the incoming interfaces. Packets for invalid networks will be dropped. For example, routers at the edge of the network of an Internet service provider (ISP) are likely to have symmetrical reverse paths. Unicast RPF may still be applicable in certain multi-homed situations, provided that optional Border Gateway Protocol (BGP) attributes such as weight and local preference are used to achieve symmetric routing.
With Unicast RPF, all equal-cost "best" return paths are considered valid. This means that Unicast RPF works in cases where multiple return paths exist, provided that each path is equal to the others in terms of the routing cost (number of hops, weights, and so on) and as long as the route is in the FIB. Unicast RPF also functions where Enhanced Internet Gateway Routing Protocol (EIGRP) variants are being used and unequal candidate paths back to the source IP address exist.
For example, routers at the edge of the network of an ISP are more likely to have symmetrical reverse paths than routers that are in the core of the ISP network. Routers that are in the core of the ISP network have no guarantee that the best forwarding path out of the router will be the path selected for packets returning to the router. In this scenario, you should use the new form of the command,
ipverifyunicastsourcereachable-via, if there is a chance of asymmetrical routing.
Examples
The following example shows that the Unicast Reverse Path Forwarding feature has been enabled on a serial interface:
ip cef
! or "ip cef distributed" for RSP+VIP based routers
!
interface serial 5/0/0
ip verify unicast reverse-path
The following example uses a very simple single-homed ISP to demonstrate the concepts of ingress and egress filters used in conjunction with Unicast RPF. The example illustrates an ISP-allocated classless interdomain routing (CIDR) block 192.168.202.128/28 that has both inbound and outbound filters on the upstream interface. Be aware that ISPs are usually not single-homed. Hence, provisions for asymmetrical flows (when outbound traffic goes out one link and returns via a different link) need to be designed into the filters on the border routers of the ISP.
ip cef distributed
!
interface Serial 5/0/0
description Connection to Upstream ISP
ip address 192.168.200.225 255.255.255.255
no ip redirects
no ip directed-broadcast
no ip proxy-arp
ip verify unicast reverse-path
ip access-group 111 in
ip access-group 110 out
!
access-list 110 permit ip 192.168.202.128 10.0.0.31 any
access-list 110 deny ip any any log
access-list 111 deny ip host 10.0.0.0 any log
access-list 111 deny ip 172.16.0.0 255.255.255.255 any log
access-list 111 deny ip 10.0.0.0 255.255.255.255 any log
access-list 111 deny ip 172.16.0.0 255.255.255.255 any log
access-list 111 deny ip 192.168.0.0 255.255.255.255 any log
access-list 111 deny ip 209.165.202.129 10.0.0.31 any log
access-list 111 permit ip any any
The following example demonstrates the use of ACLs and logging with Unicast RPF. In this example, extended ACL 197 provides entries that deny or permit network traffic for specific address ranges. Unicast RPF is configured on Ethernet interface 0 to check packets arriving at that interface.
For example, packets with a source address of 192.168.201.10 arriving at Ethernet interface 0 are dropped because of the deny statement in ACL 197. In this case, the ACL information is logged (the logging option is turned on for the ACL entry) and dropped packets are counted per-interface and globally. Packets with a source address of 192.168.201.100 arriving at Ethernet interface 0 are forwarded because of the permit statement in ACL 197. ACL information about dropped or suppressed packets is logged (the logging option is turned on for the ACL entry) to the log server.
ip cef distributed
!
int eth0/1/1
ip address 192.168.200.1 255.255.255.255
ip verify unicast reverse-path 197
!
int eth0/1/2
ip address 192.168.201.1 255.255.255.255
!
access-list 197 deny ip 192.168.201.0 10.0.0.63 any log-input
access-list 197 permit ip 192.168.201.64 10.0.0.63 any log-input
access-list 197 deny ip 192.168.201.128 10.0.0.63 any log-input
access-list 197 permit ip 192.168.201.192 10.0.0.63 any log-input
access-list 197 deny ip host 10.0.0.0 any log-input
access-list 197 deny ip 172.16.0.0 255.255.255.255 any log-input
access-list 197 deny ip 10.0.0.0 255.255.255.255 any log-input
access-list 197 deny ip 172.16.0.0 255.255.255.255 any log-input
access-list 197 deny ip 192.168.0.0 255.255.255.255 any log-input
Related Commands
Command
Description
ipcef
Enables Cisco Express Forwarding on the route processor card.
ip verify unicast source reachable-via
To enable Unicast Reverse Path Forwarding (Unicast RPF), use the ipverifyunicastsourcereachable-via command in interface configuration mode. To disable Unicast RPF, use the no form of this command.
ipverifyunicastsourcereachable-via
{ any | rx [l2-src] }
[allow-default] [allow-self-ping] [access-list]
noipverifyunicastsourcereachable-via
Syntax Description
any
Examines incoming packets to determine whether the source address is in the Forwarding Information Base (FIB) and permits the packet if the source is reachable through any interface (sometimes referred to as loose mode).
rx
Examines incoming packets to determine whether the source address is in the FIB and permits the packet only if the source is reachable through the interface on which the packet was received (sometimes referred to as strict mode).
l2-src
(Optional) Enables source IPv4 and source MAC address binding.
allow-default
(Optional) Allows the use of the default route for RPF verification.
allow-self-ping
(Optional) Allows a router to ping its own interface or interfaces.
Caution
Use caution when enabling the allow-self-ping keyword. This keyword opens a denial-of-service (DoS) hole.
access-list
(Optional) Specifies a numbered access control list (ACL) in the following ranges:
1 to 99 (IP standard access list)
100 to 199 (IP extended access list)
1300 to 1999 (IP standard access list, expanded range)
2000 to 2699 (IP extended access list, expanded range)
Command Default
Unicast RPF is disabled.
Source IPv4 and source MAC address binding is disabled.
Command Modes
Interface configuration (config-if)
Command History
Release
Modification
11.1(CC), 12.0
This command was introduced. This command was not included in Cisco IOS Release 11.2 or 11.3.
12.1(2)T
Added access control list (ACL) support using the access-list argument. Added per-interface statistics on dropped or suppressed packets.
12.0(15)S
This command replaced the ipverifyunicastreverse-path command, and the following keywords were added: allow-default, allow-self-ping, rx, and any.
12.1(8a)E
This command was integrated into Cisco IOS Release 12.1(8a)E.
12.2(14)S
This command was integrated into Cisco IOS Release 12.2(14)S.
12.2(14)SX
Support for this command was introduced on the Supervisor Engine 720.
12.2(17d)SXB
Support for this command was introduced on the Supervisor Engine 2.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.2(33)SRC
This command was modified. The l2-src keyword was added to support the source IPv4 and source MAC address binding feature on platforms that support the Cisco Express Forwarding software switching path.
15.0(1)M
This command was integrated into Cisco IOS Release 15.0(1)M.
Usage Guidelines
Use the ipverifyunicastsourcereachable-via interface command to mitigate problems caused by malformed or forged (spoofed) IP source addresses that pass through a router. Malformed or forged source addresses can indicate DoS attacks based on source IP address spoofing.
To use Unicast RPF, enable Cisco Express Forwarding or distributed Cisco Express Forwarding in the router. There is no need to configure the input interface for Cisco Express Forwarding. As long as Cisco Express Forwarding is running on the router, individual interfaces can be configured with other switching modes.
Note
It is important for Cisco Express Forwarding to be configured globally on the router. Unicast RPF does not work without Cisco Express Forwarding.
Note
Unicast RPF is an input function and is applied on the interface of a router only in the ingress direction.
When Unicast RPF is enabled on an interface, the router examines all packets that are received on that interface. The router checks to make sure that the source address appears in the FIB. If the rx keyword is selected, the source address must match the interface on which the packet was received. If the any keyword is selected, the source address must be present only in the FIB. This ability to "look backwards" is available only when Cisco Express Forwarding is enabled on the router because the lookup relies on the presence of the FIB. Cisco Express Forwarding generates the FIB as part of its operation.
Note
If the source address of an incoming packet is resolved to a null adjacency, the packet will be dropped. The null interface is treated as an invalid interface by the new form of the Unicast RPF command. The older form of the command syntax did not exhibit this behavior.
Unicast RPF checks to determine whether any packet that is received at a router interface arrives on one of the best return paths to the source of the packet. If a reverse path for the packet is not found, Unicast RPF can drop or forward the packet, depending on whether an ACL is specified in the Unicast RPF command. If an ACL is specified in the command, when (and only when) a packet fails the Unicast RPF check, the ACL is checked to determine whether the packet should be dropped (using a deny statement in the ACL) or forwarded (using a permit statement in the ACL). Whether a packet is dropped or forwarded, the packet is counted in the global IP traffic statistics for Unicast RPF drops and in the interface statistics for Unicast RPF.
If no ACL is specified in the ipverifyunicastsourcereachable-via command, the router drops the forged or malformed packet immediately, and no ACL logging occurs. The router and interface Unicast RPF counters are updated.
Unicast RPF events can be logged by specifying the logging option for the ACL entries that are used by theipverifyunicastsourcereachable-via command. Log information can be used to gather information about the attack, such as source address, time, and so on.
Strict Mode RPF
If the source address is in the FIB and reachable only through the interface on which the packet was received, the packet is passed. The syntax for this method is ipverifyunicastsourcereachable-viarx.
Exists-Only (or Loose Mode) RPF
If the source address is in the FIB and reachable through any interface on the router, the packet is passed. The syntax for this method is ipverifyunicastsourcereachable-viaany.
Because this Unicast RPF option passes packets regardless of which interface the packet enters, it is often used on Internet service provider (ISP) routers that are "peered" with other ISP routers (where asymmetrical routing typically occurs). Packets using source addresses that have not been allocated on the Internet, which are often used for spoofed source addresses, are dropped by this Unicast RPF option. All other packets that have an entry in the FIB are passed.
allow-default
Normally, sources found in the FIB but only by way of the default route will be dropped. Specifying the allow-default keyword option will override this behavior. You must specify the allow-default keyword in the command to permit Unicast RPF to successfully match on prefixes that are known through the default route to pass these packets.
allow-self-ping
This keyword allows the router to ping its own interface or interfaces. By default, when Unicast RPF is enabled, packets that are generated by the router and destined to the router are dropped, thereby, making certain troubleshooting and management tasks difficult to accomplish. Issue the allow-self-ping keyword to enable self-pinging.
Caution
Caution should be used when enabling the allow-self-ping keyword because this option opens a potential DoS hole.
Using RPF in Your Network
Use Unicast RPF strict mode on interfaces where only one path allows packets from valid source networks (networks contained in the FIB). Also, use Unicast RPF strict mode when a router has multiple paths to a given network, as long as the valid networks are switched through the incoming interfaces. Packets for invalid networks will be dropped. For example, routers at the edge of the network of an ISP are likely to have symmetrical reverse paths. Unicast RPF strict mode is applicable in certain multihomed situations, provided that optional Border Gateway Protocol (BGP) attributes, such as weight and local preference, are used to achieve symmetric routing.
Note
With Unicast RPF, all equal-cost "best" return paths are considered valid. This means that Unicast RPF works in cases where multiple return paths exist, provided that each path is equal to the others in terms of the routing cost (number of hops, weights, and so on) and as long as the route is in the FIB. Unicast RPF also functions where Enhanced Internet Gateway Routing Protocol (EIGRP) variants are being used and unequal candidate paths back to the source IP address exist.
Use Unicast RPF loose mode on interfaces where asymmetric paths allow packets from valid source networks (networks contained in the FIB). Routers that are in the core of the ISP network have no guarantee that the best forwarding path out of the router will be the path selected for packets returning to the router.
IP and MAC Address Spoof Prevention
In Release 15.0(1)M and later, you can use the l2-srckeyword to enable source IPv4 and source MAC address binding. To disable source IPv4 and source MAC address binding, use the no form of the ipverifyunicastsourcereachable-viacommand.
If an inbound packet fails this security check, it will be dropped and the Unicast RPF dropped-packet counter will be incremented. The only exception occurs if a numbered access control list has been specified as part of the Unicast RPF command in strict mode, and the ACL permits the packet. In this case the packet will be forwarded and the Unicast RPF suppressed-drops counter will be incremented.
Note
The l2-src keyword cannot be used with the loose uRPF command, ipverifyunicastsourcereachable-viaanycommand.
Not all platforms support the l2-src keyword. Therefore, not all the possible keyword combinations for strict Unicast RPF in the following list will apply to your platform:
Possible keyword combinations for strict Unicast RPF include the following:
The following example uses a very simple single-homed ISP connection to demonstrate the concept of Unicast RPF. In this example, an ISP peering router is connected through a single serial interface to one upstream ISP. Hence, traffic flows into and out of the ISP will be symmetric. Because traffic flows will be symmetric, a Unicast RPF strict-mode deployment can be configured.
ip cef
! or "ip cef distributed" for Route Switch Processor+Versatile Interface Processor-
(RSP+VIP-) based routers.
!
interface Serial5/0/0
description - link to upstream ISP (single-homed)
ip address 192.168.200.225 255.255.255.252
no ip redirects
no ip directed-broadcasts
no ip proxy-arp
ip verify unicast source reachable-via
Examples
The following example demonstrates the use of ACLs and logging with Unicast RPF. In this example, extended ACL 197 provides entries that deny or permit network traffic for specific address ranges. Unicast RPF is configured on interface Ethernet 0/1/1 to check packets arriving at that interface.
For example, packets with a source address of 192.168.201.10 arriving at interface Ethernet 0/1/1 are dropped because of the deny statement in ACL 197. In this case, the ACL information is logged (the logging option is turned on for the ACL entry) and dropped packets are counted per-interface and globally. Packets with a source address of 192.168.201.100 arriving at interface Ethernet 0/1/2 are forwarded because of the permit statement in ACL 197. ACL information about dropped or suppressed packets is logged (the logging option is turned on for the ACL entry) to the log server.
ip cef distributed
!
int eth0/1/1
ip address 192.168.200.1 255.255.255.0
ip verify unicast source reachable-via rx 197
!
int eth0/1/2
ip address 192.168.201.1 255.255.255.0
!
access-list 197 deny ip 192.168.201.0 0.0.0.63 any log-input
access-list 197 permit ip 192.168.201.64 0.0.0.63 any log-input
access-list 197 deny ip 192.168.201.128 0.0.0.63 any log-input
access-list 197 permit ip 192.168.201.192 0.0.0.63 any log-input
access-list 197 deny ip host 0.0.0.0 any log-input
access-list 197 deny ip 172.16.0.0 0.255.255.255 any log-input
access-list 197 deny ip 10.0.0.0 0.255.255.255 any log-input
access-list 197 deny ip 172.16.0.0 0.15.255.255 any log-input
access-list 197 deny ip 192.168.0.0 0.0.255.255 any log-input
Examples
The following example shows how to enable source IPv4 and source MAC address binding on Ethernet 0/0:
Router# configure terminal
Router(config)# interface Ethernet0/0
Router(config-if)# ip address 10.0.0.1 255.255.255.0
Router(config-if)# ip verify unicast source reachable-via rx l2-src
Related Commands
Command
Description
ipcef
Enables Cisco Express Forwarding on the route processor card.
ipcefdistributed
Enables Cisco Express Forwarding on the line card.
ip verify unicast vrf
To enable Unicast Reverse Path Forwarding (Unicast RPF) verification for a specified VRF, use the ipverifyunicastvrfcommand in interface configuration mode. To disable the Unicast RPF check for a VRF, use the no form of this command.
ipverifyunicastvrfvrf-name
{ deny | permit }
noipverifyunicastvrfvrf-name
{ deny | permit }
Syntax Description
vrf-name
Virtual Private Network (VPN) routing and forwarding (VRF) instance name.
deny
Specifies that traffic associated with the specified VRF is dropped after it passes the Unicast RPF verification.
permit
Specifies that traffic associated with the specified VRF is forwarded after it passes the Unicast RPF verification.
Command Default
Unicast RPF verification is disabled.
Command Modes
Interface configuration (config-if)
Command History
Release
Modification
12.0(29)S
This command was introduced.
12.2(25)S
This command was integrated into Cisco IOS Release 12.2(25)S.
12.3(14)T
This command was integrated into Cisco IOS Release 12.3(14)T.
12.2(28)SB
This command was integrated into Cisco IOS Release 12.2(27)SBC.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.2(33)SXH
This command was integrated into Cisco IOS Release 12.2(33)SXH.
Usage Guidelines
Unicast RPF is configured to verify that the source address is in the Forwarding Information Base (FIB). The ipverifyunicastvrf command is configured in interface configuration mode and is enabled for each VRF. This command has permit and denykeywords that are used to determine if traffic is forwarded or dropped after Unicast RPF verification.
Examples
The following example configures Unicast RPF verification for VRF1 and VRF2. VRF1 traffic is forwarded. VRF2 traffic is dropped.
Router(config)# interface Ethernet 0
Router(config-if)# ip verify unicast vrf vrf1 permit
Router(config-if)# ip verify unicast vrf vrf2 deny
Router(config-if)# end
Related Commands
Command
Description
importipv4
Configures an import map to import IPv4 prefixes from the global routing table to a VRF table.
ipvrf
Configures a VRF routing table.
rd
Creates routing and forwarding tables for a VRF.
showipbgp
Displays entries in the BGP routing table.
showipbgpvpnv4
Displays VPN address information from the BGP table.
showipvrf
Displays the set of defined VRFs and associated interfaces.
ipv6 cef
To enable Cisco Express Forwarding for IPv6, use the ipv6cef command in global configuration mode. To disable Cisco Express Forwarding for IPv6, use the no form of this command.
ipv6cef
noipv6cef
Syntax Description
This command has no arguments or keywords.
Command Default
Cisco Express Forwarding for IPv6 is disabled by default.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.0(22)S
This command was introduced.
12.2(13)T
This command was integrated into Cisco IOS Release 12.2(13)T.
12.2(14)S
This command was integrated into Cisco IOS Release 12.2(14)S.
12.2(28)SB
This command was integrated into Cisco IOS Release 12.2(28)SB.
12.2(25)SG
This command was integrated into Cisco IOS Release 12.2(25)SG.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.2(33)SXH
This command was integrated into Cisco IOS Release 12.2(33)SXH.
Cisco IOS XE Release 2.1
This command was implemented on Cisco ASR 1000 Series Aggregation Services Routers.
Cisco IOS XE Release 3.2SE
This command was integrated into Cisco IOS XE Release 3.2SE.
Usage Guidelines
The ipv6cef command is similar to the ipcef command, except that it is IPv6-specific.
The ipv6cef command is not available on the Cisco 12000 series Internet routers because this distributed platform operates only in distributed Cisco Express Forwarding for IPv6 mode.
Note
The ipv6cefcommand is not supported in interface configuration mode.
Note
Some distributed architecture platforms, such as the Cisco 7500 series routers, support both Cisco Express Forwarding for IPv6 and distributed Cisco Express Forwarding for IPv6. When Cisco Express Forwarding for IPv6 is configured on distributed platforms, Cisco Express Forwarding switching is performed by the Route Processor (RP).
Note
You must enable Cisco Express Forwarding for IPv4 by using the ipcef global configuration command before enabling Cisco Express Forwarding for IPv6 by using the ipv6cef global configuration command.
Cisco Express Forwarding for IPv6 is advanced Layer 3 IP switching technology that functions the same and offer the same benefits as Cisco Express Forwarding for IPv4. Cisco Express Forwarding for IPv6 optimizes network performance and scalability for networks with dynamic, topologically dispersed traffic patterns, such as those associated with web-based applications and interactive sessions.
Examples
The following example enables standard Cisco Express Forwarding for IPv4 operation and then standard Cisco Express Forwarding for IPv6 operation globally on the router.
ip cef
ipv6 cef
Related Commands
Command
Description
iproute-cache
Controls the use of high-speed switching caches for IP routing.
ipv6cefaccounting
Enables Cisco Express Forwarding for IPv6 and distributed Cisco Express Forwarding for IPv6 network accounting.
ipv6cefdistributed
Enables distributed Cisco Express Forwarding for IPv6.
showcef
Displays which packets the line cards dropped or displays which packets were not express-forwarded.
showipv6cef
Displays entries in the IPv6 FIB.
ipv6 cef accounting
To enable Cisco Express Forwarding for IPv6 and distributed Cisco Express Forwarding for IPv6 network accounting, use the ipv6cefaccountingcommand in global configuration mode or interface configuration mode. To disable Cisco Express Forwarding for IPv6 network accounting, use the noform of this command.
ipv6cefaccountingaccounting-types
noipv6cefaccountingaccounting-types
Specific Cisco Express Forwarding Accounting Information Through Interface Configuration Mode
The accounting-types argument must be replaced with at least one of the following keywords. Optionally, you can follow this keyword by any or all of the other keywords, but you can use each keyword only once.
non-recursive--Enables accounting through nonrecursive prefixes.
per-prefix--Enables express forwarding of the collection of the number of packets and bytes to a destination (or prefix).
prefix-length--Enables accounting through prefix length.
non-recursive
Enables accounting through nonrecursive prefixes.
This keyword is optional when used in global configuration mode after another keyword is entered. See theaccounting-types argument.
external
Counts input traffic in the nonrecursive external bin.
internal
Counts input traffic in the nonrecursive internal bin.
Command Default
Cisco Express Forwarding for IPv6 network accounting is disabled by default.
Command Modes
Global configuration (config)
Interface configuration (config-if)
Command History
Release
Modification
12.0(22)S
This command was introduced.
12.2(13)T
This command was integrated into Cisco IOS Release 12.2(13)T.
12.2(14)S
This command was integrated into Cisco IOS Release 12.2(14)S.
12.2(25)S
The non-recursiveandload-balance-hashkeywords were added.
12.2(28)SB
This command was integrated into Cisco IOS Release 12.2(28)SB.
12.2(25)SG
This command was integrated into Cisco IOS Release 12.2(25)SG.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.2(33)SXH
This command was integrated into Cisco IOS Release 12.2(33)SXH.
Cisco IOS XE Release 2.1
This command was introduced on Cisco ASR 1000 Series Routers.
12.4(20)T
This command was integrated into Cisco IOS Release 12.4(20)T.
Cisco IOS XE Release 3.2SE
This command was integrated into Cisco IOS XE Release 3.2SE.
Usage Guidelines
The ipv6cefaccountingcommand is similar to the ipcefaccountingcommand, except that it is IPv6-specific.
Configuring Cisco Express Forwarding for IPv6 network accounting enables you to collect statistics on Cisco Express Forwarding for IPv6 traffic patterns in your network.
When you enable network accounting for Cisco Express Forwarding for IPv6 by using the ipv6cefaccountingcommand in global configuration mode, accounting information is collected at the Route Processor (RP) when Cisco Express Forwarding for IPv6 mode is enabled and at the line cards when distributed Cisco Express Forwarding for IPv6 mode is enabled. You can then display the collected accounting information using the showipv6cef EXEC command.
For prefixes with directly connected next hops, the non-recursive keyword enables express forwarding of the collection of packets and bytes through a prefix. This keyword is optional when this command is used in global configuration mode after you enter another keyword on the ipv6cefaccountingcommand.
This command in interface configuration mode must be used in conjunction with the global configuration command. The interface configuration command allows a user to specify two different bins (internal or external) for the accumulation of statistics. The internal bin is used by default. The statistics are displayed through the showipv6cefdetailcommand.
Per-destination load balancing uses a series of 16 hash buckets into which the set of available paths are distributed. A hash function operating on certain properties of the packet is applied to select a bucket that contains a path to use. The source and destination IP addresses are the properties used to select the bucket for per-destination load balancing. Use the load-balance-hash keyword with the ipv6cefaccounting command to enable per-hash-bucket counters. Enter theshowipv6cefprefixinternal command to display the per-hash-bucket counters.
Examples
The following example enables the collection of Cisco Express Forwarding for IPv6 accounting information for prefixes with directly connected next hops:
Displays information about packets forwardedbyCiscoExpressForwarding.
showipv6cef
Displays entries in the IPv6 FIB.
ipv6 cef distributed
To enable distributed Cisco Express Forwarding for IPv6, use the ipv6cefdistributedcommand in global configuration mode. To disable Cisco Express Forwarding for IPv6, use the no form of this command.
ipv6cefdistributed
noipv6cefdistributed
Syntax Description
This command has no arguments or keywords.
Command Default
Distributed Cisco Express Forwarding for IPv6 is disabled on the Cisco 7500 series routers and enabled on the Cisco 12000 series Internet routers.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.0(22)S
This command was introduced.
12.2(13)T
This command was integrated into Cisco IOS Release 12.2(13)T.
12.2(14)S
This command was integrated into Cisco IOS Release 12.2(14)S.
12.2(28)SB
This command was integrated into Cisco IOS Release 12.2(28)SB.
12.2(25)SG
This command was integrated into Cisco IOS Release 12.2(25)SG.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.2(33)SXH
This command was integrated into Cisco IOS Release 12.2(33)SXH.
Cisco IOS XE Release 2.1
This command was implemented on Cisco ASR 1000 Series Aggregation Services Routers.
Cisco IOS XE Release 3.2SE
This command was integrated into Cisco IOS XE Release 3.2SE.
Usage Guidelines
The ipv6cefdistributedcommand is similar to the ipcefdistributedcommand, except that it is IPv6-specific.
Enabling distributed Cisco Express Forwarding for IPv6 globally on the router by using the ipv6cefdistributedin global configuration mode distributes the Cisco Express Forwarding processing of IPv6 packets from the Route Processor (RP) to the line cards of distributed architecture platforms.
Note
The ipv6cefdistributed command is not supported on the Cisco 12000 series Internet routers because distributed Cisco Express Forwarding for IPv6 is enabled by default on this platform.
Note
To forward distributed Cisco Express Forwarding for IPv6 traffic on the router, configure the forwarding of IPv6 unicast datagrams globally on your router by using the ipv6unicast-routing global configuration command, and configure an IPv6 address and IPv6 processing on an interface by using the ipv6address interface configuration command.
Note
You must enable distributed Cisco Express Forwarding for IPv4 by using the ipcefdistributedglobal configuration command before enabling distributed Cisco Express Forwarding for IPv6 by using the ipv6cefdistributedglobal configuration command.
Cisco Express Forwarding is advanced Layer 3 IP switching technology. Cisco Express Forwarding optimizes network performance and scalability for networks with dynamic, topologically dispersed traffic patterns, such as those associated with web-based applications and interactive sessions.
Examples
The following example enables distributed Cisco Express Forwarding for IPv6 operation:
ipv6 cef distributed
Related Commands
Command
Description
iproute-cache
Controls the use of high-speed switching caches for IP routing.
showipv6cef
Displays entries in the IPv6 FIB.
ipv6 cef load-sharing algorithm
To select a Cisco Express Forwarding load-balancing algorithm for IPv6, use theipv6cefload-sharingalgorithm command in global configuration mode. To return to the default universal load-balancing algorithm, use the no form of this command.
Sets the load-balancing algorithm to the original algorithm based on a source and destination hash.
universal
Sets the load-balancing algorithm to the universal algorithm that uses a source and destination and an ID hash.
id
(Optional) Fixed identifier in hexadecimal format.
include-portssource
Sets the load-balancing algorithm to the include-ports algorithm that uses a Layer 4 source port.
include-portsdestination
Sets the load-balancing algorithm to the include-ports algorithm that uses a Layer 4 destination port.
include-portssourcedestination
Sets the load balancing algorithm to the include-ports algorithm that uses Layer 4 source and destination ports.
include-portssourcedestination gtp
Sets the load-balancing algorithm based on the GPRS Tunneling Protocol Tunnel Endpoint Identifier (GTP TEID) for the GTP-U packets.
Sets the load-balancing algorithm based on the Layer 4 source and destination ports for the non-GTP-U packets.
Command Default
The universal load-balancing algorithm is selected. If you do not configure the fixed identifier for a load-balancing algorithm, the router automatically generates a unique ID.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(25)S
This command was introduced.
12.2(28)SB
This command was integrated into Cisco IOS Release 12.2(28)SB.
12.2(25)SG
This command was integrated into Cisco IOS Release 12.2(25)SG.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.2SX
This command is supported in the Cisco IOS Release 12.2SX train. Support in a specific 12.2SX release of this train depends on your feature set, platform, and platform hardware.
12.4(20)T
This command was integrated into Cisco IOS Release 12.4(20)T.
3.10S
This command is supported in Cisco IOS XE Release 3.10S. The gtp keyword was added to the command.
Usage Guidelines
The ipv6cefload-sharingalgorithmcommand is similar to the ipcefload-sharingalgorithmcommand, except that it is IPv6-specific.
When the Cisco Express Forwarding for IPv6 load-balancing algorithm is set to universal mode, each router on the network can make a different load-sharing decision for each source-destination address pair.
The include-ports algorithm allows you to use the Layer 4 source and destination ports as part of the load-balancing decision. This method benefits traffic streams running over equal-cost paths that are not load-shared because the majority of the traffic is between peer addresses that use different port numbers, such as Real-Time Protocol (RTP) streams.
Examples
The following example shows how to enable the Cisco Express Forwarding load-balancing algorithm for IPv6 for Layer-4 source and destination ports:
Displays debug messages for Cisco Express Forwarding for IPv6 and distributed Cisco Express Forwarding for IPv6 load-sharing hash algorithm events.
ipcefload-sharingalgorithm
Selects a Cisco Express Forwarding load-balancing algorithm (for IPv4).
ipv6 cef optimize neighbor resolution
To configure address resolution optimization from Cisco Express Forwarding for IPv6 for directly connected neighbors, use theipv6cefoptimizeneighborresolutioncommand in global configuration mode. To disable address resolution optimization from Cisco Express Forwarding for IPv6 for directly connected neighbors, use the no form of this command.
ipv6cefoptimizeneighborresolution
noipv6cefoptimizeneighborresolution
Syntax Description
This command has no arguments or keywords.
Command Default
If this command is not configured, Cisco Express Forwarding for IPv6 does not optimize the address resolution of directly connected neighbors.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(25)S
This command was introduced.
12.2(28)SB
This command was integrated into Cisco IOS Release 12.2(28)SB.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.2(33)SXH
This command was integrated into Cisco IOS Release 12.2(33)SXH.
12.4(20)T
This command was integrated into Cisco IOS Release 12.4(20)T.
Usage Guidelines
Theipv6cefoptimizeneighborresolution command is very similar to the ipcefoptimizeneighborresolution command, except that it is IPv6-specific.
Use this command to trigger Layer 2 address resolution of neighbors directly from Cisco Express Forwarding for IPv6.
Examples
The following example shows how to optimize address resolution from Cisco Express Forwarding for IPv6 for directly connected neighbors:
Configures address resolution optimization from Cisco Express Forwarding for IPv4 for directly connected neighbors.
ipv6 verify unicast reverse-path
To enable Unicast Reverse Path Forwarding (Unicast RPF) for IPv6, use the ipv6verifyunicastreverse-path command in interface configuration mode. To disable Unicast RPF, use the no form of this command.
This keyword and argument are not supported on the Cisco 12000 series Internet router.
Command Default
Unicast RPF is disabled.
Command Modes
Interface configuration (config-if)
Command History
Release
Modification
12.2(13)T
This command was introduced.
12.2(14)S
This command was integrated into Cisco IOS Release 12.2(14)S.
12.0(31)S
This command was integrated into Cisco IOS Release 12.0(31)S and introduced on the 10G Engine 5 SPA Interface Processor in the Cisco 12000 series Internet router.
12.2(28)SB
This command was integrated into Cisco IOS Release 12.2(28)SB.
Usage Guidelines
Theipv6verifyunicastreverse-path command is used to enable Unicast RPF for IPv6 in strict checking mode. The Unicast RPF for IPv6 feature requires that Cisco Express Forwarding for IPv6 is enabled on the router.
Note
Beginning in Cisco IOS Release 12.0(31)S, the Cisco 12000 series Internet router supports both the ipv6verifyunicastreverse-path and ipv6verifyunicastsourcereachable-viarx commands to enable Unicast RPF to be compatible with the Cisco IOS Release 12.3T and 12.2S software trains.
Use the ipv6verifyunicastreverse-path command to mitigate problems caused by malformed or forged (spoofed) IP source addresses that pass through a router. Malformed or forged source addresses can indicate denial-of-service (DoS) attacks based on source IP address spoofing.
When Unicast RPF is enabled on an interface, the router examines all packets received on that interface. The router checks to make sure that the source IPv6 address appears in the routing table and that it is reachable by a path through the interface on which the packet was received. Unicast RPF is an input feature and is applied only on the input interface of a router at the upstream end of a connection.
The Unicast RPF feature performs a reverse lookup in the CEF table to check if any packet received at a router interface has arrived on a path identified as a best return path to the source of the packet. If a reverse path for the packet is not found, Unicast RPF can drop or forward the packet, depending on whether an ACL is specified in the Unicast RPF command. If an ACL is specified in the command, then when (and only when) a packet fails the Unicast RPF check, the ACL is checked to determine whether the packet should be dropped (using a deny statement in the ACL) or forwarded (using a permit statement in the ACL). Whether a packet is dropped or forwarded, the packet is counted in the global IP traffic statistics for Unicast RPF drops and in the interface statistics for Unicast RPF.
If no ACL is specified in the Unicast RPF command, the router drops the forged or malformed packet immediately and no ACL logging occurs. The router and interface Unicast RPF counters are updated.
Unicast RPF events can be logged by specifying the logging option for the ACL entries used by the Unicast RPF command. Log information can be used to gather information about the attack, such as source address, time, and so on.
Note
When you configure Unicast RPF for IPv6 on the Cisco 12000 series Internet router, the most recently configured checking mode is not automatically applied to all interfaces as on other platforms. You must enable Unicast RPF for IPv6 separately on each interface.
When you configure a SPA on the Cisco 12000 series Internet router, the interface address is in the format slot/subslot/port.
The optional access-list keyword for the ipv6verifyunicastreverse-path command is not supported on the Cisco 12000 series Internet router. For information about how Unicast RPF can be used with ACLs on other platforms to mitigate the transmission of invalid IPv4 addresses (perform egress filtering) and to prevent (deny) the reception of invalid IPv4 addresses (perform ingress filtering), refer to the "Configuring Unicast Reverse Path Forwarding" chapter in the "Other Security Features" section of the CiscoIOSSecurityConfigurationGuide.
Note
When using Unicast RPF, all equal-cost "best" return paths are considered valid. This means that Unicast RPF works in cases where multiple return paths exist, provided that each path is equal to the others in terms of the routing cost (number of hops, weights, and so on).
Do not use Unicast RPF on core-facing interfaces that are internal to the network. Internal interfaces are likely to have routing asymmetry, meaning that there are multiple routes to the source of a packet. Apply Unicast RPF only where there is natural or configured symmetry.
For example, routers at the edge of the network of an Internet service provider (ISP) are more likely to have symmetrical reverse paths than routers that are in the core of the ISP network. Routers that are in the core of the ISP network have no guarantee that the best forwarding path out of the router will be the path selected for packets returning to the router. Hence, it is not recommended that you apply Unicast RPF where there is a chance of asymmetric routing. It is simplest to place Unicast RPF only at the edge of a network or, for an ISP, at the customer edge of the network.
Examples
Examples
The following example shows how to enable the Unicast RPF feature on a serial interface:
interface serial 5/0/0
ipv6 verify unicast reverse-path
Examples
The following example shows how to enable Unicast RPF for IPv6 with strict checking on a 10G SIP Gigabit Ethernet interface 2/1/2:
Router# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)# interface gigabitEthernet 2/1/2
Router(config-if)# ipv6 verify unicast reverse-path
Router(config-if)# exit
Examples
The following example uses a very simple single-homed ISP to demonstrate the concepts of ingress and egress filters used in conjunction with Unicast RPF. The example illustrates an ISP-allocated classless interdomain routing (CIDR) block 209.165.202.128/28 that has both inbound and outbound filters on the upstream interface. Be aware that ISPs are usually not single-homed. Hence, provisions for asymmetrical flows (when outbound traffic goes out one link and returns via a different link) need to be designed into the filters on the border routers of the ISP.
interface Serial 5/0/0
description Connection to Upstream ISP
ipv6 address FE80::260:3EFF:FE11:6770/64
no ipv6 redirects
ipv6 verify unicast reverse-path abc
!
ipv6 access-list abc
permit ipv6 host 2::1 any
deny ipv6 FEC0::/10 any
ipv6 access-group abc in
ipv6 access-group jkl out
!
access-list abc permit ip FE80::260:3EFF:FE11:6770/64 2001:0DB8:0000:0001::0001any
access-list abc deny ipv6 any any log
access-list jkl deny ipv6 host 2001:0DB8:0000:0001::0001 any log
access-list jkl deny ipv6 2001:0DB8:0000:0001:FFFF:1234::5.255.255.255 any log
access-list jkl deny ipv6 2002:0EF8:002001:0DB8:0000:0001:FFFF:1234::5172.16.0.0
0.15.255.255 any log
access-list jkl deny ipv6 2001:0CB8:0000:0001:FFFF:1234::5 0.0.255.255 any log
access-list jkl deny ipv6 2003:0DB8:0000:0001:FFFF:1234::5 0.0.0.31 any log
access-list jkl permit ipv6
Examples
The following example demonstrates the use of ACLs and logging with Unicast RPF. In this example, extended ACL abc provides entries that deny or permit network traffic for specific address ranges. Unicast RPF is configured on interface Ethernet 0/0 to check packets arriving at that interface.
For example, packets with a source address of 8765:4321::1 arriving at Ethernet interface 0 are dropped because of the deny statement in ACL "abc." In this case, the ACL information is logged (the logging option is turned on for the ACL entry) and dropped packets are counted per-interface and globally. Packets with a source address of 1234:5678::1 arriving at Ethernet interface 0/0 are forwarded because of the permit statement in ACL abc. ACL information about dropped or suppressed packets is logged (the logging option is turned on for the ACL entry) to the log server.
Enables Cisco Express Forwarding on the route processor card.
ipverifyunicastreverse-path
Enables Unicast RPF for IPv4 traffic.
ipv6cef
Enables Cisco Express Forwarding for IPv6 interfaces.
ipv6 verify unicast source reachable-via
To verify that a source address exists in the FIB table and enable Unicast Reverse Path Forwarding (Unicast RPF), use the ipv6verifyunicastsourcereachable-via command in interface configuration mode. To disable URPF, use the no form of this command.
ipv6verifyunicastsourcereachable-via
{ rx | any }
[allow-default] [allow-self-ping] [access-list-name]
noipv6verifyunicast
Syntax Description
rx
Source is reachable through the interface on which the packet was received.
any
Source is reachable through any interface.
allow-default
(Optional) Allows the lookup table to match the default route and use the route for verification.
allow-self-ping
(Optional) Allows the router to ping a secondary address.
access-list-name
(Optional) Name of the IPv6 access list. Names cannot contain a space or quotation mark, or begin with a numeral.
Command Default
Unicast RPF is disabled.
Command Modes
Interface configuration (config-if)
Command History
Release
Modification
12.2(25)S
This command was introduced.
12.2(28)SB
This command was integrated into Cisco IOS Release 12.2(28)SB.
Cisco IOS XE Release 2.1
This command was introduced on Cisco ASR 1000 Series Aggregation Services Routers.
Usage Guidelines
Theipv6verifyunicastreverse-path command is used to enable Unicast RPF for IPv6 in loose checking mode.
Use the ipv6verifyunicastsourcereachable-viacommand to mitigate problems caused by malformed or forged (spoofed) IP source addresses that pass through an IPv6 router. Malformed or forged source addresses can indicate denial-of-service (DoS) attacks based on source IPv6 address spoofing.
The URPF feature checks to see if any packet received at a router interface arrives on one of the best return paths to the source of the packet. The feature does this by doing a reverse lookup in the CEF table. If URPF does not find a reverse path for the packet, U RPF can drop or forward the packet, depending on whether an access control list (ACL) is specified in the ipv6verifyunicastsourcereachable-via command. If an ACL is specified in the command, then when (and only when) a packet fails the URPF check, the ACL is checked to see if the packet should be dropped (using a deny statement in the ACL) or forwarded (using a permit statement in the ACL). Whether a packet is dropped or forwarded, the packet is counted in the global IP traffic statistics for U RPF drops and in the interface statistics for Unicast RPF.
If no ACL is specified in the ipv6verifyunicastsourcereachable-via command, the router drops the forged or malformed packet immediately and no ACL logging occurs. The router and interface Unicast RPF counters are updated.
U RPF events can be logged by specifying the logging option for the ACL entries used by the ipv6verifyunicastsourcereachable-via command. Log information can be used to gather information about the attack, such as source address, time, and so on.
Examples
The following example enables Unicast RPF on any interface:
ipv6 verify unicast source reachable-via any
Related Commands
Command
Description
ipv6access-list
Defines an
IPv6 access list and places the router in IPv6 access list configuration mode.
showipv6interface
Displays the usability status of interfaces configured for IPv6.
mls cef maximum-routes
To limit the maximum number of the routes that can be programmed in the hardware allowed per protocol, use the mlscefmaximum-routes command in global configuration mode. To return to the default settings, use the no form of this command.
nomlscefmaximum-routes
{ ip | ip-multicast | ipv6 | mpls }
Syntax Description
ip
Specifies the maximum number of IP routes.
maximum-routes
Maximum number of the routes that can be programmed in the hardware allowed per protocol.
ip-multicast
Specifies the maximum number of multicast routes.
ipv6
Specifies the maximum number of IPv6 routes.
mpls
Specifies the maximum number of Multiprotocol Label Switching (MPLS) labels.
Command Default
The defaults are as follows:
For XL-mode systems:
IPv4 unicast and MPLS--512,000 routes
IPv6 unicast and IPv4 multicast--256,000 routes
For non-XL mode systems:
IPv4 unicast and MPLS--192,000 routes
IPv6 unicast and IPv4 multicast--32,000 routes
Note
See the "Usage Guidelines" section for information on XL and non-XL mode systems.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(17b)SXA
This command was introduced on the Supervisor Engine 720.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.2(33)SXH
This command was integrated into Cisco IOS Release 12.2(33)SXH.
Usage Guidelines
Note
If you copy a configuration file that contains the multilayer switching (MLS) Cisco Express Forwarding maximum routes into the startup-config file and reload the Cisco 7600 series router, the Cisco 7600 series router reloads after it reboots.
This command is not supported on Cisco 7600 series routers that are configured with a Supervisor Engine 2.
The mlscefmaximum-routes command limits the maximum number of the routes that can be programmed in the hardware. If routes are detected that exceed the limit for that protocol, an exception condition is generated.
The determination of XL and non-XL mode is based on the type of Policy Feature Card (PFC) or Distributed Forwarding Card (DFC) modules that are installed in your system. For additional information on systems running Cisco IOS software release 12.2SXF and earlier releases see:
The valid values for the maximum-routes argument depend on the system mode--XL mode or non-XL mode. The valid values are as follows:
XL mode
IP and MPLS--Up to 1,007,000 routes
IP multicast and IPv6--Up to 503,000 routes
Non-XL mode
IP and MPLS--Up to 239,000 routes
IP multicast and IPv6--Up to 119,000 routes
Note
The maximum values that you are permitted to configure is not fixed but varies depending on the values that are allocated for other protocols.
An example of how to enter the maximum routes argument is as follows:
mls cef maximum-routes ip 4
where 4 is 4096 IP routes (1024 x4 = 4096).
The new configurations are applied after a system reload only and do not take effect if a switchover occurs.
In RPR mode, if you change and save the maximum-routes configuration, the redundant supervisor engine reloads when it becomes active from either a switchover or a system reload. The reload occurs 5 minutes after the supervisor engine becomes active.
Use the showmlscefmaximum-routes command to display the current maximum routes system configuration.
Examples
This example shows how to set the maximum number of routes that are allowed per protocol:
Router(config)#
mls cef maximum-routes ip 100
This example shows how to return to the default setting for a specific protocol:
Router(config)#
no mls cef maximum-routes ip
Related Commands
Command
Description
showmlscefmaximum-routes
Displays the current maximum-route system configuration.
mls cef tunnel fragment
To allow tunnel fragmentation, use the mlsceftunnelfragment command. To return to the default settings, use the no form of this command.
mlsceftunnelfragment
nomlsceftunnelfragment
Syntax Description
This command has no arguments or keywords.
Command Default
Tunnel fragmentation is not enabled.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(18)SXF
This command was introduced.
12.2(33)SXH
This command was modified. Support was added for PCF3BXL, PFC3C, and PFC3CXL modes only.
12.2(33)SXI
This command was modified. Support was added for PCF3BXL, PFC3C, and PFC3CXL modes only.
12.2(33)SXI2
This command was modified. Support was added for all PFC3 modes.
Usage Guidelines
When you enable tunnel fragmentation, if the size of the packets that are going into a tunnel interface exceed the MTU, the packet is fragmented. The packets that are fragmented are reassembled at the destination point.
Examples
This example shows how to allow tunnel fragmentation:
Router(config)#
mls cef tunnel fragment
This example shows how to return to the default setting:
Router(config)#
no mls cef tunnel fragment
Related Commands
Command
Description
showmlsceftunnelfragment
Displays the operational status of tunnel fragmentation.
mls erm priority
To assign the priorities to define an order in which protocols attempt to recover from the exception status, use the mlsermpriority command in global configuration mode. To return to the default settings, use the no form of this command.
Note
The mlsermprioritycommand is not available in Cisco IOS Release 12.2(33)SXJ and later Cisco IOS 12.2SX releases.
mlsermpriorityipv4valueipv6valuemplsvalue
nomlsermpriorityipv4valueipv6valuemplsvalue
Syntax Description
ipv4
Prioritizes the IPv4 protocol. The default priority is 1.
value
Priority value; valid values are from 1 to 3.
ipv6
Prioritizes the IPv6 protocol. The default priority is 2.
mpls
Prioritizes the Multiprotocol Label Switching (MPLS) protocol. The default priority is 3.
Command Default
The default priority settings are used.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(14)SX
This command was introduced on the Supervisor Engine 720.
12.2(17a)SX
This command was changed to support the ipv6 keyword.
12.2(17b)SXA
This command was changed to support the mpls keyword.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.2(33)SXJ
This command was removed. It is not available in Cisco IOS Release 12.2(33)SXJ and later Cisco IOS 12.2SX releases.
Usage Guidelines
This command is not supported on Cisco 7600 series routers that are configured with a Supervisor Engine 2.
A lower value indicates a higher priority.
When a protocol sees a Forwarding Information Base (FIB) table exception, the protocol notifies the FIB Embedded Resource Manager (ERM). The FIB ERM periodically polls the FIB table exception status and decides which protocol gets priority over another protocol when multiple protocols are running under the exception. Only one protocol can attempt to recover from an exception at any time.
If there is sufficient FIB space, the protocol with the highest priority tries to recover first. Other protocols under the exception do not start to recover until the previous protocol completes the recovery process by reloading the appropriate FIB table.
Examples
This example shows how to set the ERM exception-recovery priority:
Displays information about the Cisco Express Forwarding exception.
mls ip
To enable multilayer switching (MLS) IP for the internal router on the interface, use the mlsip command in interface configuration mode. To disable MLS IP on the interface use the no form of this command .
mlsip
nomlsip
Syntax Description
This command has no arguments or keywords.
Command Default
Multicast is disabled.
Command Modes
Interface configuration (config-if)
Command History
Release
Modification
12.2(17d)SXB
Support for this command on the Supervisor Engine 2 was extended to Release 12.2(17d)SXB.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
Usage Guidelines
This command is not supported on Cisco 7600 series routers that are configured with a Supervisor Engine 720.
Examples
This example shows how to enable MLS IP:
Router(config-if)#
mls ip
Related Commands
Command
Description
mlsrpip(interfaceconfiguration)
Allows the external systems to enable MLS IP on a specified interface.
showmlsipmulticast
Displays the MLS IP information.
mls ip cef accounting per-prefix
To enable Multilayer Switching (MLS) per-prefix accounting, use the mlsipcefaccountingper-prefix command in global configuration mode. To disable MLS per-prefix accounting, use the no form of this command
(Optional) Virtual Private Network (VPN) routing and forwarding instance name.
Command Default
MLS per-prefix accounting is disabled by default.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(14)SX
Support for this command was introduced on the Supervisor Engine 720.
12.2(17d)SXB
Support for this command on the Supervisor Engine 2 was extended to Release 12.2(17d)SXB.
12.2(18)SXF
Support for this command was implemented on the Supervisor Engine 32.
Usage Guidelines
Per-prefix accounting collects the adjacency counters used by the prefix. When the prefix is used for accounting, the adjacency cannot be shared with other prefixes. You can use per-prefix accounting to account for the packets sent to a specific destination.
Examples
This example shows how to enable MLS per-prefix accounting:
Router(config)#
mls ip cef accounting per-prefix 172.20.52.18 255.255.255.255
This example shows how to disable MLS per-prefix accounting:
Router(config)#
no mls ip cef accounting per-prefix
Related Commands
Command
Description
showmlscefip
Displays all the prefixes that are configured for the statistic collection.
mls ip cef load-sharing
To configure the Cisco Express Forwarding load balancing, use the mlsipcefload-sharingcommand in global configuration mode. To return to the default settings, use the no form of this command.
(Optional) Sets the Cisco Express Forwarding load balancing to include source and destination Layer 4 ports and source and destination IP addresses (Layer 3).
exclude-portdestination
(Optional) Excludes the destination Layer 4 ports and source and destination IP addresses (Layer 3) from the load-balancing algorithm.
exclude-portsource
(Optional) Excludes the source Layer 4 ports and source and destination IP addresses (Layer 3) from the load-balancing algorithm.
simple
(Optional) Sets the Cisco Express Forwarding load balancing for single-stage load sharing.
Command Default
Source and destination IP address and universal identification
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(17d)SXB
Support for this command on the Supervisor Engine 2 was introduced in Release 12.2(17d)SXB.
12.2(17d)SXB2
This command was changed as follows:
The simple keyword was added.
Support for this command was introduced on the Supervisor Engine 720.
12.2(18)SXE
This command was changed to include the exclude-port, destination, and source keywords on the Supervisor Engine 720 only.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
Usage Guidelines
Themlsipcefload-sharingcommand affects the IPv4, the IPv6, and the Multiprotocol Label Switching (MPLS) forwardings.
The mlsipcefload-sharingcommand is structured as follows:
mlsipcefload-sharingfull--Uses Layer 3 and Layer 4 information with multiple adjacencies.
mlsipcefload-sharingfullsimple--Uses Layer 3 and Layer 4 information without multiple adjacencies.
mlsipcefload-sharingsimple--Uses Layer 3 information without multiple adjacencies.
For additional guidelines, refer to the Cisco 7600 Series Router Cisco IOS Software Configuration Guide.
Examples
This example shows how to set load balancing to include Layer 3 and Layer 4 ports with multiple adjacencies:
Router(config)# mls ip cef load-sharing full
This example shows how to set load balancing to exclude the destination Layer 4 ports and source and destination IP addresses (Layer 3) from the load-balancing algorithm:
Router(config)# mls ip cef load-sharing full exclude-port destination
This example shows how to set load balancing to exclude the source Layer 4 ports and source and destination IP addresses (Layer 3) from the load-balancing algorithm:
Router(config)# mls ip cef load-sharing full exclude-port source
This example shows how to return to the default setting:
Router(config)# no mls ip cef load-sharing
Related Commands
Command
Description
showmlscefip
Displays the IP entries in the MLS-hardware Layer 3-switching table.
mls ip cef rate-limit
To rate-limit Cisco Express Forwarding-punted data packets, use the mlsipcefrate-limit command in global configuration mode. To disable the rate-limited Cisco Express Forwarding-punted data packets, use the no form of this command.
mlsipcefrate-limitpackets-per-second
nomlsipcefrate-limit
Syntax Description
packets-per-second
Number of data packets per second; see the "Usage Guidelines" section for the valid values.
Command Default
No rate limit is configured.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(14)SX
Support for this command was introduced on the Supervisor Engine 720.
12.2(17d)SXB
Support for this command on the Supervisor Engine 2 was extended to Release 12.2(17d)SXB.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
Usage Guidelines
The valid values for the number of data packets per second are as follows:
For Cisco 7600 series routers that are configured with a Supervisor Engine 2, the valid values are from 1 to 1000000.
For Cisco 7600 series routers that are configured with a Supervisor Engine 720, the valid values are from 0 to 1000000.
Certain denial-of-service attacks target the route processing engines of routers. Certain packets that cannot be forwarded by the Policy Feature Card (PFC) are directed to the Multilayer Switch Feature Card (MSFC) for processing. Denial-of-service attacks can overload the route processing engine and cause routing instability when running dynamic routing protocols. You can use the mlsipcefrate-limit command to limit the amount of traffic that is sent to the MSFC to prevent denial-of-service attacks against the route processing engine.
This command rate limits all Cisco Express Forwarding-punted data packets including the following:
Data packets going to the local interface IP address
Data packets requiring Address Resolution Protocol (ARP)
Setting the rate to a low value could impact the packets that are destined to the IP addresses of the local interfaces and the packets that require ARP.
You should use this command to limit these packets to a normal rate and to avoid abnormal incoming rates.
For additional guidelines, see the Cisco 7600 Series Router Cisco IOS Software Configuration Guide.
Examples
This example shows how to enable and set rate limiting:
Router(config)#
mls ip cef rate-limit 50000
Related Commands
Command
Description
showmlscefip
Displays the IP entries in the MLS-hardware Layer 3-switching table.
mls ip cef rpf hw-enable-rpf-acl
To enable hardware unicast Reverse Path Forwarding (uRPF) for packets matching the deny Access Control List (ACL) when uRPF with ACL is enabled, use themlsipcefrpfhw-enable-rpf-aclcommand in global configuration mode. To disable hardware uRPF when RPF and ACL are enabled, use the no form of this command.
mlsipcefrpfhw-enable-rpf-acl
nomlsipcefrpfhw-enable-rpf-acl
Syntax Description
This command has no arguments or keywords.
Command Default
uRPF is disabled.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(18)SXF6
This command was introduced.
Usage Guidelines
This command is supported on systems configured with a PFC3 (Supervisor Engine 720 and Supervisor Engine 32) only.
If you do not enter themlsipcefrpfhw-enable-rpf-aclcommand, when the uRPF with ACL is specified, packets that are permitted by the uRPF ACL are forwarded in hardware and the denied packets are sent to the Multilayer Switching Feature Card (MSFC) for the uRPF check. This command enables hardware forwarding with the uRPF check for the packets that are denied by the uRPF ACL. However, in this case packets permitted by the uRPF ACL are sent to the MSFC for forwarding.
Examples
This example shows how to enable hardware uRPF when RPF and ACL are enabled:
mls ip cef rpf hw-enable-rpf-acl
This example shows how to disable hardware uRPF when RPF and ACL are enabled:
no mls ip cef rpf hw-enable-rpf-acl
Related Commands
Command
Description
ipverifyunicastsourcereachable-via
Enables and configures RPF checks with ACL.
mls ip cef rpf interface-group
To define an interface group in the Reverse Path Forwarding
(RPF)-VLAN table, use the
mlsipcefrpfinterface-group command in global configuration
mode. To delete the interface group, use the
no form of this command.
no mls ip cef rpf interface-groupgroup-number interface1 interface2 interface3
[ . .
. ]
Syntax Description
group-number
Interface group number; valid values are from 1 to 4.
interface
Interface number; see the "Usage Guidelines" section for
formatting guidelines.
...
(Optional) Additional interface numbers; see the "Usage
Guidelines" section for additional information.
Command Default
No groups are configured.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(14)SX
Support for this command was introduced on the Supervisor
Engine 720.
12.2(33)SRA
This command was integrated into Cisco IOS Release
12.2(33)SRA.
Usage Guidelines
This command is not supported on Cisco 7600 series routers that are
configured with a Supervisor Engine 2.
A single interface group contains three to six interfaces. You can
configure up to four interface groups. For each interface group, the first four
entries are installed in the hardware RPF-VLAN table.
Enter the
interface as
interface-typemod/port.
Separate each interface entry with a space. You do not have to
include a space between the
interface-type and the
mod/port arguments. See the "Examples"
section for a sample entry.
Examples
This example shows how to define an interface group:
To configure the Reverse Path Forwarding (RPF) modes, use the mlsipcefrpfmultipath command in global configuration mode. To return to the default settings, use the no form of this command.
mlsipcefrpfmultipath
{ interface-group | punt | pass }
nomlsipcefrpfmultipath
{ interface-group | punt | pass }
Syntax Description
interface-group
Disables the RPF check for packets coming from multiple path routes; see the "Usage Guidelines" section for additional information.
punt
Redirects the RPF-failed packets to the route processor for multiple path prefix support.
pass
Disables the RPF check for packets coming from multiple path routes.
Command Default
punt
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(14)SX
Support for this command was introduced on the Supervisor Engine 720.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
Usage Guidelines
This command is not supported on Cisco 7600 series routers that are configured with a Supervisor Engine 2.
The interface-group mode is similar to the pass mode but utilizes the RPF_VLAN global table for the RPF check. Packets from other multiple path prefixes always pass the RPF check.
You enter the mlsipcefrpfmultipathinterface-group command to define an RPF_VLAN table interface group. One interface group contains from three to six interfaces, and you can configure up to four interface groups. For each interface group, the first four entries are installed in the hardware RPF_VLAN table. For the prefix that has more than three multiple paths, and all paths except two are part of that interface group, the FIB entry of that prefix uses this RPF_VLAN entry.
Examples
This example shows how to redirect the RPF-failed packets to the route processor for multiple path prefix support:
Router(config)#
mls ip cef rpf multipath interface-group
Related Commands
Command
Description
showmlscefip
Displays the IP entries in the MLS-hardware Layer 3-switching table.
monitor elog trigger position
To monitor system events using event-logging control and trigger control parameters, use the monitorelogtriggerpositioncommand in privileged EXEC configuration mode.
monitorelogtriggerpositionposition-percentage
Syntax Description
position-percentage
The position of the trigger in the buffer expressed in percentage.
Command Default
System events are not monitored and logged.
Command Modes
Privileged EXEC (#)
Command History
Release
Modification
15.0(1)M
This command was introduced in a release earlier than Cisco IOS Release 15.0(1)M.
Examples
The following example shows how to monitor 50 percent of the system events using event-logging control and trigger control parameters:
Router# monitor elog trigger position 50
Related Commands
Command
Description
monitorcalllegevent-log
Displays the event log for an active call leg in real time.
monitor event-trace (EXEC)
To monitor and control the event trace function for a specified Cisco
IOS software subsystem component, use the
monitorevent-trace command in privileged EXEC mode.
Name of the Cisco IOS software subsystem component that is
the subject of the event trace. To get a list of components that support event
tracing, use the
monitorevent-trace? command.
clear
Clears existing trace messages for the specified component
from memory on the networking device.
continuous
Continuously displays the latest event trace entries.
disable
Turns off event tracing for the specified component.
dump
Writes the event trace results to the file configured using
the
monitorevent-trace command in global
configuration mode. The trace messages are saved in binary format.
pretty
(Optional) Saves the event trace message in ASCII format.
enable
Turns on event tracing for the specified component.
one-shot
Clears any existing trace information from memory, starts
event tracing again, and disables the trace when the trace reaches the size
specified using the
monitorevent-tracecommand in global configuration mode.
size
Sets the number of messages that can be written to memory
for a single instance of a trace.
Note
Some Cisco IOS software subsystem components set the
size by default. To display the size parameter, use the
showmonitorevent-tracecomponentparameters command.
When the number of event trace messages in memory exceeds
the size, new messages will begin to overwrite the older messages in the file.
stacktrace
Enables the stack trace at tracepoints.
all-traces
Displays the configured merged-event traces.
merged
(Optional) Dumps the entries in all event traces sorted by
time.
l3
Displays information about the Layer 3 trace.
spa
Displays information about the Shared Port Adapter (SPA)
trace.
interfacetypemod/port
Specifies the interface to be logged.
cancel
(Optional) Cancels the continuous display of latest trace
entries.
subsys
Displays information about the subsystem’s initial trace.
Command Default
The event trace function is disabled by default.
Command Modes
Privileged EXEC (#)
Command History
Release
Modification
12.0(18)S
This command was introduced.
12.2(8)T
This command was integrated into Cisco IOS Release
12.2(8)T.
12.2(14)SX
Support for this command was introduced on the Supervisor
Engine 720.
12.2(25)S
This command was integrated into Cisco IOS Release
12.2(25)S. Themonitorevent-tracecefipv4clearcommand replaces the
clearipcefevent-logcommand.
12.2(28)SB
This command was integrated into Cisco IOS Release
12.2(28)SB and implemented on the Cisco 10000 series routers.
12.2(33)SRA
This command was integrated into Cisco IOS Release
12.2(33)SRA.
12.2(33)SXH
This command was integrated into Cisco IOS Release
12.2(33)SXH.
12.4(20)T
This command was integrated into Cisco IOS Release
12.4(20)T.
Usage Guidelines
Use the
monitorevent-trace command to control what, when, and how
event trace data is collected. Use this command after you have configured the
event trace functionality on the networking device using the
monitorevent-trace command in global configuration mode.
Note
The amount of data collected from the trace depends on the trace
message size configured using the
monitorevent-tracecommand in global configuration mode for each instance of a
trace.
The Cisco IOS software allows for the subsystem components to define
whether support for event tracing is enabled or disabled at boot time. You can
enable or disable event tracing in two ways: using the
monitorevent-tracecommand in privileged EXEC mode or using the
monitorevent-tracecommand in global configuration mode. To disable event tracing,
you would enter either of these commands with the
disable keyword. To enable event tracing
again, you would enter either of these commands with the
enable keyword.
To determine whether you can enable event tracing on a subsystem, use
the
monitorevent-trace?commandto get a list of software components that support event
tracing. To determine whether event tracing is enabled by default for the
subsystem, use the
showmonitorevent-trace command to display trace messages.
Use the
showmonitorevent-trace command to display trace messages. Use
the
monitorevent-tracecomponentdump command to save trace message information for
a single event. By default, trace information is saved in binary format. If you
want to save trace messages in ASCII format, possibly for additional
application processing, use the
monitorevent-tracecomponentdumppretty command.
To write the trace messages for all events currently enabled on a
networking device to a file, enter the
monitorevent-tracedumpcommand.
To configure the file where you want to save trace information, use
the
monitorevent-trace command in global configuration mode.
The trace messages are saved in a binary format.
Examples
The following example shows the privileged EXEC commands to stop
event tracing, clear the current contents of memory, and reenable the trace
function for the interprocess communication (IPC) component. This example
assumes that the tracing function is configured and enabled on the networking
device.
The following example shows how the
monitorevent-traceone-shotcommand accomplishes the same function as the previous example
except in one command. In this example, once the size of the trace message file
has been exceeded, the trace is terminated.
Router# monitor event-trace ipc one-shot
The following example shows the command for writing trace messages
for an event in binary format. In this example, the trace messages for the IPC
component are written to a file.
Router# monitor event-trace ipc dump
The following example shows the command for writing trace messages
for an event in ASCII format. In this example, the trace messages for the MBUS
component are written to a file.
Router# monitor event-trace mbus dump pretty
Examples
This example shows how to stop event tracing, clear the current
contents of memory, and reenable the trace function for the SPA component. This
example assumes that the tracing function is configured and enabled on the
networking device.
Name of the Cisco IOS software subsystem component that is the object of the event trace. To get a list of components that support event tracing, use the monitorevent-trace? command.
disable
Turns off event tracing for the specified component.
dump-filefilename
Specifies the file where event trace messages are written from memory on the networking device. The maximum length of the filename (path and filename) is 100 characters, and the path can point to flash memory on the networking device or to a TFTP or FTP server.
enable
Turns on event tracing for the specified component provided that the component has been configured using the monitorevent-tracecommand.
sizenumber
Sets the number of messages that can be written to memory for a single instance of a trace. Valid values are from1 to 65536.
Note
Some Cisco IOS software subsystem components set the size by default. To display the size parameter, use the showmonitorevent-tracecomponentparameters command.
When the number of event trace messages in memory exceeds the configured size, new messages will begin to overwrite the older messages in the file.
stacktracenumber
Enables the stack trace at tracepoints and specifies the depth of the stack trace stored. Valid values are from 1 to 16.
timestamps
(Optional) Includes time stamp information with the event trace messages for the specified component.
datetime
(Optional) Specifies that the time stamp information included with event trace messages will consist of the date and time of the event trace.
localtime
(Optional) Specifies that the time given in the time stamp will be local time.
msec
(Optional) Includes milliseconds in the time stamp.
show-timezone
(Optional) Includes time zone information in the time stamp.
uptime
(Optional) Displays time stamped information about the system uptime.
clear
Clears existing trace messages for the specified component from memory on the networking device.
continuous
Continuously displays the latest event trace entries.
one-shot
Clears any existing trace information from memory, starts event tracing again, and disables the trace when the trace reaches the size specified using the monitorevent-tracecommand.
Command Default
Event tracing is enabled or disabled depending on the software component.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.0(18)S
This command was introduced.
12.2(8)T
This command was integrated into Cisco IOS Release 12.2(8)T.
12.2(14)SX
This command was integrated into Cisco IOS Release 12.2(14)SX and implemented on the Supervisor Engine 720.
12.2(25)S
This command was integrated into Cisco IOS Release 12.2(25)S.
12.2(28)SB
This command was integrated into Cisco IOS Release 12.2(28)SB and implemented on the Cisco 10000 series routers.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.4(20)T
This command was integrated into Cisco IOS Release 12.4(20)T.
Usage Guidelines
Use the monitorevent-trace command to enable or disable event tracing and to configure event trace parameters for Cisco IOS software subsystem components.
Note
Event tracing is intended for use as a software diagnostic tool and should be configured only under the direction of a Technical Assistance Center (TAC) representative. In Cisco IOS software images that do not provide subsystem support for the event trace function, the monitorevent-trace command is not available.
The Cisco IOS software allows the subsystem components to define whether support for event tracing is enabled or disabled by default. The command interface for event tracing allows you to change the default two ways: using the monitorevent-tracecommand in privileged EXEC mode or using the monitorevent-tracecommand in global configuration mode.
Additionally, default settings do not show up in the configuration file. If the subsystem software enables event tracing by default, the monitorevent-tracecomponentenable command will not show up in the configuration file of the networking device; however, disabling event tracing that has been enabled by default by the subsystem will create a command entry in the configuration file.
Note
The amount of data collected from the trace depends on the trace message size configured using the monitorevent-tracecommand for each instance of a trace.
To determine whether you can enable event tracing on a subsystem, use the monitorevent-trace?commandto get a list of software components that support event tracing.
To determine whether event tracing is enabled by default for the subsystem, use the showmonitorevent-trace command to display trace messages.
To specify the trace call stack at tracepoints, you must first clear the trace buffer.
Examples
The following example shows how to enable event tracing for the interprocess communication (IPC) subsystem component in Cisco IOS software and configure the size to 4096 messages. The trace messages file is set to ipc-dump in slot0 (flash memory).
When you select Cisco Express Forwarding as the component for which to enable event tracing, you can use the following additional arguments and keywords: monitorevent-tracecef [events | interface|ipv6 | ipv4][all]. The following example shows how to enable event tracing for IPv4 or IPv6 events of the Cisco Express Forwarding component in Cisco IOS software:
configure terminal
!
monitor event-trace cef ipv4 enable
configure terminal
!
monitor event-trace cef ipv6 enable
exit
The following example shows what happens when you try to enable event tracing for a component (in this case, adjacency events) when it is already enabled:
configure terminal
!
monitor event-trace adjacency enable
%EVENT_TRACE-6-ENABLE: Trace already enabled.
Related Commands
Command
Description
monitorevent-trace(EXEC)
Controls the event trace function for a specified Cisco IOS software subsystem component.
monitorevent-tracedump-traces
Saves trace messages for all event traces currently enabled on the networking device.
showmonitorevent-trace
Displays event trace messages for Cisco IOS software subsystem components.
monitor event-trace cef (EXEC)
To monitor and control the event trace function for Cisco Express Forwarding, use the monitorevent-tracecef command in privileged EXEC mode.
Writes the event trace results to the file configured with the global configuration monitorevent-tracecef command. The trace messages are saved in binary format.
mergedpretty
(Optional) Sorts all event trace entries by time and writes the entries to a file in ASCII format.
pretty
(Optional) Saves the event trace message in ASCII format.
Clears existing trace messages for Cisco Express Forwarding from memory on the networking device.
continuous
Continuously displays the latest event trace entries.
cancel
(Optional) Cancels the continuous display of the latest trace entries.
disable
Turns off Cisco Express Forwarding event tracing.
enable
Turns on Cisco Express Forwarding event tracing.
one-shot
Clears any existing trace information from memory, starts event tracing again, and disables the trace when the size of the trace message file configured in the global configuration command is exceeded.
Command Default
Event tracing for Cisco Express Forwarding is enabled by default.
Command Modes
Privileged EXEC (#)
Command History
Release
Modification
12.0(18)S
This command was introduced.
12.2(8)T
This command was integrated into Cisco IOS Release 12.2(8)T.
12.2(14)SX
Support for this command was introduced on the Supervisor Engine 720.
12.2(25)S
This command was integrated into Cisco IOS Release 12.2(25)S.
12.2(28)SB
This command was integrated into Cisco IOS Release 12.2(28)SB and implemented on the Cisco 10000 series routers.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.2(33)SXH
This command was integrated into Cisco IOS Release 12.2(33)SXH.
12.4(20)T
This command was integrated into Cisco IOS Release 12.4(20)T.
Cisco IOS XE Release 2.1
This command was integrated into Cisco IOS XE Release 2.1 and implemented on the Cisco ASR 1000 Series Aggregation Services Routers.
Usage Guidelines
Use themonitorevent-tracecef command to control what, when, and how Cisco Express Forwarding event trace data is collected. Use this command after you have configured the event trace functionality on the networking device using the monitorevent-tracecefcommand in global configuration mode.
Note
The amount of data collected from the trace depends on the trace message size configured using the monitorevent-tracecefcommand in global configuration mode for each instance of a trace.
You can enable or disable Cisco Express Forwarding event tracing in one of two ways: using the monitorevent-tracecefcommand in privileged EXEC mode or using the monitorevent-tracecefcommand in global configuration mode. To disable event tracing, you would enter either of these commands with the disable keyword. To enable event tracing again, you would enter either of these commands with the enable keyword.
Use the showmonitorevent-tracecefcommand to display trace messages. Use the monitorevent-tracecefdump command to save trace message information for a single event. By default, trace information is saved in binary format. If you want to save trace messages in ASCII format, possibly for additional application processing, use the monitorevent-tracecefdumppretty command.
To configure the file in which you want to save trace information, use the monitorevent-tracecefcommand in global configuration mode. The trace messages are saved in a binary format.
Examples
The following example shows the privileged EXEC commands that stop event tracing, clear the current contents of memory, and reenable the trace function for Cisco Express Forwarding events. This example assumes that the tracing function is configured and enabled on the networking device.
Configures event tracing for Cisco Express Forwarding.
monitorevent-tracecefipv4(global)
Configures event tracing for Cisco Express Forwarding IPv4 events.
monitorevent-tracecefipv6(global)
Configures event tracing for Cisco Express Forwarding IPv6 events.
showmonitorevent-tracecef
Displays event trace messages for Cisco Express Forwarding.
showmonitorevent-tracecefevents
Displays event trace messages for Cisco Express Forwarding events.
showmonitorevent-tracecefinterface
Displays event trace messages for Cisco Express Forwarding interface events.
showmonitorevent-tracecefipv4
Displays event trace messages for Cisco Express Forwarding IPv4 events.
showmonitorevent-tracecefipv6
Displays event trace messages for Cisco Express Forwarding IPv6 events.
monitor event-trace cef (global)
To configure event tracing for Cisco Express Forwarding, use themonitorevent-tracecefcommand in global configuration mode. To disable event tracing for Cisco Express Forwarding, use the no form of this command.
Specifies the file to which event trace messages are written from memory on the networking device. The maximum length of the filename (path and filename) is 100 characters, and the path can point to flash memory on the networking device or to a TFTP or FTP server.
events
Turns on event tracing for Cisco Express Forwarding events.
interface
Turns on event tracing for Cisco Express Forwarding interface events.
disable
Turns off event tracing for Cisco Express Forwarding events.
enable
Turns on event tracing for Cisco Express Forwarding events if it had been enabled with the monitorevent-tracecef command.
sizenumber
Sets the number of messages that can be written to memory for a single instance of a trace. Range: 1 to 65536.
Note
Some Cisco IOS software subsystem components set the size by default. To display the size parameter, use the showmonitorevent-tracecefparameters command.
When the number of event trace messages in memory exceeds the configured size, new messages will begin to overwrite the older messages in the file.
stacktrace
Enables the stack trace at tracepoints.
depth
(Optional) Specifies the depth of the stack trace stored. Range: 1 to 16.
Command Default
Event tracing for Cisco Express Forwarding is enabled by default.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(25)S
This command was introduced.
12.2(28)SB
This command was integrated into Cisco IOS Release 12.2(28)SB and implemented on the Cisco 10000 series routers.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.2(33)SXH
This command was integrated into Cisco IOS Release 12.2(33)SXH.
12.4(20)T
This command was integrated into Cisco IOS Release 12.4(20)T.
Cisco IOS XE Release 2.1
This command was integrated into Cisco IOS XE Release 2.1 and implemented on the Cisco ASR 1000 Series Aggregation Services Routers.
Usage Guidelines
Use the monitorevent-tracecefcommand to enable or disable event tracing and to configure event trace parameters for Cisco Express Forwarding.
The Cisco IOS software allows Cisco Express Forwarding to define whether support for event tracing is enabled or disabled by default. The command interface for event tracing allows you to change the default value in one of two ways: using the monitorevent-tracecefcommand in privileged EXEC mode or using the monitorevent-tracecefcommand in global configuration mode.
Additionally, default settings do not appear in the configuration file. If Cisco Express Forwarding enables event tracing by default, the monitorevent-tracecefenable command does not appear in the configuration file of the networking device; however, disabling event tracing that has been enabled by default by the subsystem creates a command entry in the configuration file.
Note
The amount of data collected from the trace depends on the trace message size configured using the monitorevent-tracecefcommand for each instance of a trace.
To determine whether event tracing is enabled by default for Cisco Express Forwarding, use the showmonitorevent-tracecefcommand to display trace messages.
To specify the trace call stack at tracepoints, you must first clear the trace buffer.
Examples
The following example shows how to enable event tracing for Cisco Express Forwarding and configure the buffer size to 5000 messages. The trace messages file is set to cef-dump in slot0 (flash memory).
Router(config)# monitor event-trace cef events enable
Router(config)# monitor event-trace cef dump-file slot0:cef-dump
Router(config)# monitor event-trace cef events size 5000
The following example shows what happens when you try to enable event tracing for Cisco Express Forwarding events when it is already enabled:
Router(config)# monitor event-trace cef events enable
Router(config)#
00:04:33: %EVENT_TRACE-6-ENABLE: Trace already enabled.
Related Commands
Command
Description
monitorevent-tracecef(EXEC)
Monitors and controls the event trace function for Cisco Express Forwarding.
monitorevent-tracecefipv4(global)
Configures event tracing for Cisco Express Forwarding IPv4 events.
monitorevent-tracecefipv6(global)
Configures event tracing for Cisco Express Forwarding IPv6 events.
showmonitorevent-tracecef
Displays event trace messages for Cisco Express Forwarding.
showmonitorevent-tracecefevents
Displays event trace messages for Cisco Express Forwarding events.
showmonitorevent-tracecefinterface
Displays event trace messages for Cisco Express Forwarding interface events.
showmonitorevent-tracecefipv4
Displays event trace messages for Cisco Express Forwarding IPv4 events.
showmonitorevent-tracecefipv6
Displays event trace messages for Cisco Express Forwarding IPv6 events.
monitor event-trace cef ipv4 (global)
To configure event tracing for Cisco Express Forwarding IPv4 events, use themonitorevent-tracecefipv4command in global configuration mode. To disable event tracing for Cisco Express Forwarding IPv4 events, use the no form of this command.
monitorevent-tracecefipv4
{ disable | distribution | dump-filedump-file-name | enable | match
{ global | ip-addressmask } | sizenumber | stacktrace [depth] | vrfvrf-name
[ distribution | match
{ global | ip-addressmask } ] }
Turns off event tracing for Cisco Express Forwarding IPv4 events.
distribution
Logs events related to the distribution of Cisco Express Forwarding Forwarding Information Base (FIB) tables to the line cards.
dump-filedump-file-name
Specifies the file to which event trace messages are written from memory on the networking device. The maximum length of the filename (path and filename) is 100 characters, and the path can point to flash memory on the networking device or to a TFTP or FTP server.
enable
Turns on event tracing for Cisco Express Forwarding IPv4 events if it had been enabled with the monitorevent-tracecef command.
match
Turns on event tracing for Cisco Express Forwarding IPv4 that matches global events or events that match a specific network address.
global
Specifies global events.
ip-addressmask
Specifies an IP address in A.B.C.D format and a subnet mask in A.B.C.D format.
sizenumber
Sets the number of messages that can be written to memory for a single instance of a trace. Range: 1 to 65536.
Note
Some Cisco IOS software subsystem components set the size by default. To display the size parameter, use the showmonitorevent-tracecefparameters command.
When the number of event trace messages in memory exceeds the configured size, new messages will begin to overwrite the older messages in the file.
stacktrace
Enables the stack trace at tracepoints.
depth
(Optional) Specifies the depth of the stack trace stored. Range: 1 to 16.
vrfvrf-name
Turns on event tracing for a Cisco Express Forwarding IPv4 Virtual Private Network (VPN) routing and forwarding (VRF) table. The vrf-name argument specifies the name of the VRF.
Command Default
Event tracing for Cisco Express Forwarding IPv4 events is enabled by default.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(25)S
This command was introduced.
12.2(28)SB
This command was integrated into Cisco IOS Release 12.2(28)SB and implemented on the Cisco 10000 series routers.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
12.2(33)SXH
This command was integrated into Cisco IOS Release 12.2(33)SXH.
12.4(20)T
This command was integrated into Cisco IOS Release 12.4(20)T.
Cisco IOS XE Release 2.1
This command was integrated into Cisco IOS XE Release 2.1 and implemented on the Cisco ASR 1000 Series Aggregation Services Routers.
Usage Guidelines
Use the monitorevent-tracecefipv4command to enable or disable event tracing for Cisco Express Forwarding IPv4 events.
The Cisco IOS software allows Cisco Express Forwarding to define whether support for event tracing is enabled or disabled by default. The command interface for event tracing allows you to change the default value in one of two ways: using the monitorevent-tracecefipv4command in privileged EXEC mode or using the monitorevent-tracecefipv4command in global configuration mode.
Note
The amount of data collected from the trace depends on the trace message size configured using the monitorevent-tracecefipv4command for each instance of a trace.
To determine whether event tracing is enabled by default for Cisco Express Forwarding, use the showmonitorevent-tracecefipv4command to display trace messages.
To specify the trace call stack at tracepoints, you must first clear the trace buffer.
Examples
The following example shows how to enable event tracing for Cisco Express Forwarding IPv4 events and configure the buffer size to 5000 messages:
Router(config)# monitor event-trace cef ipv4 enable
Router(config)# monitor event-trace cef ipv4 size 5000
The following example shows how to enable event tracing for events that match Cisco Express Forwarding IPv4 VRF vpn1:
Router(config)# monitor event-trace cef ipv4 enable
Router(config)# monitor event-trace cef ipv4 vrf vpn1
Related Commands
Command
Description
monitorevent-tracecef(EXEC)
Monitors and controls the event trace function for Cisco Express Forwarding.
monitorevent-tracecef(global)
Configures event tracing for Cisco Express Forwarding.
monitortrace-eventcefipv6(global)
Configures event tracing for Cisco Express Forwarding IPv6 events.
showmonitorevent-tracecef
Displays event trace messages for Cisco Express Forwarding.
showmonitorevent-tracecefevents
Displays event trace messages for Cisco Express Forwarding events.
showmonitorevent-tracecefinterface
Displays event trace messages for Cisco Express Forwarding interface events.
showmonitorevent-tracecefipv4
Displays event trace messages for Cisco Express Forwarding IPv4 events.
showmonitorevent-tracecefipv6
Displays event trace messages for Cisco Express Forwarding IPv6 events.
monitor event-trace cef ipv6 (global)
To configure event tracing for Cisco Express Forwarding IPv6 events,
use themonitorevent-tracecefipv6command in global configuration mode. To disable event tracing
for Cisco Express Forwarding, use the
no form of this command.
monitorevent-tracecefipv6
{ disable | distribution | dump-filedump-file-name | enable | math
{ global | ipv6-address/n } | sizenumber | stacktrace [depth] | vrfvrf-name
[ distribution | match { global | ipv6-address/n } ] }
nomonitorevent-tracecefipv6
{ disable | distribution | dump-filedump-file-name | enable | match | size | stacktrace [depth] | vrf }
Syntax Description
disable
Turns off event tracing for Cisco Express Forwarding IPv6
events.
distribution
Logs events related to the distribution of Cisco Express
Forwarding Forwarding Information Base (FIB) tables to the line cards.
dump-filedump-file-name
Specifies the file to which event trace messages are
written from memory on the networking device. The maximum length of the
filename (path and filename) is 100 characters, and the path can point to flash
memory on the networking device or to a TFTP or FTP server.
enable
Turns on event tracing for Cisco Express Forwarding IPv6
events if it had been enabled with the
monitorevent-tracecefipv6command.
match
Turns on event tracing for Cisco Express Forwarding IPv6
that matches global events or events that match a specific network address.
global
Specifies global events.
ipv6-address/n
Specifies an IPv6 address. This address must be in the form
documented in RFC 2373: the address is specified in hexadecimals using 16-bit
values between colons. The slash followed by a number
(/n) indicates the number
of bits that do not change. Range: 0 to 128.
sizenumber
Sets the number of messages that can be written to memory
for a single instance of a trace. Range: 1 to 65536.
Note
Some Cisco IOS software subsystem components set the
size by default. To display the size parameter, use the
showmonitorevent-tracecefparameters command.
When the number of event trace messages in memory exceeds
the configured size, new messages will begin to overwrite the older messages in
the file.
stacktrace
Enables the stack trace at tracepoints.
depth
(Optional) Specifies the depth of the stack trace stored.
Range: 1 to 16.
vrfvrf-name
Turns on event tracing for a Cisco Express Forwarding IPv6
Virtual Private Network (VPN) routing and forwarding (VRF) table. The
vrf-name argument specifies the
name of the VRF.
Command Default
Event tracing for Cisco Express Forwarding IPv6 events is enabled by
default.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(25)S
This command was introduced.
12.2(28)SB
This command was integrated into Cisco IOS Release
12.2(28)SB and implemented on the Cisco 10000 series routers.
12.2(33)SRA
This command was integrated into Cisco IOS Release
12.2(33)SRA.
12.2(33)SXH
This command was integrated into Cisco IOS Release
12.2(33)SXH.
Cisco IOS XE Release 2.1
This command was integrated into Cisco IOS XE Release 2.1
and implemented on the Cisco ASR 1000 Series Aggregation Services Routers.
Usage Guidelines
Use the
monitorevent-tracecefipv6command to enable or disable event tracing for Cisco Express
Forwarding IPv6 events.
The Cisco IOS software allows Cisco Express Forwarding to define
whether support for event tracing is enabled or disabled by default. The
command interface for event tracing allows you to change the default value in
one of two ways: using the
monitorevent-tracecefipv6command in privileged EXEC mode or using the
monitorevent-tracecefipv6command in global configuration mode.
Note
The amount of data collected from the trace depends on the trace
message size configured using the
monitorevent-tracecefipv6command for each instance of a trace.
To determine whether event tracing is enabled by default for Cisco
Express Forwarding IPv6 events, use the
showmonitorevent-tracecefipv6command to display trace messages.
To specify the trace call stack at tracepoints, you must first clear
the trace buffer.
Examples
The following example shows how to enable event tracing for Cisco
Express Forwarding IPv6 events and configure the buffer size to 10000 messages.