To enable IP source tracking for a specified host, use the ipsource-trackcommand in global configuration mode. To disable IP source tracking, use the no form of this command.
ipsource-trackip-address
noipsource-trackip-address
Syntax Description
ip-address
Destination IP address of the host that is to be tracked.
Command Default
IP address tracking is not enabled.
Command Modes
Global configuration
Command History
Release
Modification
12.0(21)S
This command was introduced.
12.0(22)S
This command was implemented on the Cisco 7500 series routers.
12.0(26)S
This command was implemented on Cisco 12000 series ISE line cards.
12.3(7)T
This command was integrated into Cisco IOS Release 12.3(7)T.
12.2(25)S
This command was integrated into Cisco IOS Release 12.2(25)S.
12.2(33)SRA
This command was integrated into Cisco IOS release 12.(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
IP source tracking allows you to gather information about the traffic that is flowing to a host that is suspected of being under attack. It also allows you to easily trace a denial-of-service (DoS) attack to its entry point into the network.
After you have identified the destination that is being attacked, enable tracking for the destination address on the whole router by entering the ip source-track command.
Examples
The following example shows how to configure IP source tracking on all line cards and port adapters in the router. In this example, each line card or port adapter collects traffic flow data to host address 100.10.0.1 for 2 minutes before creating an internal system log entry; packet and flow information recorded in the system log is exported for viewing to the route processor or switch processor every 60 seconds.
Router# configure interface
Router(config)# ip source-track 10.10.0.1
Router(config)# ip source-track syslog-interval 2
Router(config)# ip source-track export-interval 60
Related Commands
Command
Description
ipsource-trackaddress-limit
Configures the maximum number of destination hosts that can be simultaneously tracked at any given moment.
ipsource-trackexport-interval
Sets the time interval (in seconds) in which IP source tracking statistics are exported from the line card to the RP.
ipsource-tracksyslog-interval
Sets the time interval (in minutes) in which syslog messages are generated if IP source tracking is enabled on a device.
showipsource-track
Displays traffic flow statistics for tracked IP host addresses.
showipsource-trackexportflows
Displays the last 10 packet flows that were exported from the line card to the route processor.
ip source-track address-limit
To configure the maximum number of destination hosts that can be simultaneously tracked at any given moment, use the ipsource-trackaddress-limitcommand in global configuration mode. To cancel this administrative limit and return to the default, use the no form of this command.
ipsource-trackaddress-limitnumber
noipsource-trackaddress-limitnumber
Syntax Description
number
Maximum number of hosts that can be tracked.
Command Default
An unlimited number of hosts can be tracked.
Command Modes
Global configuration
Command History
Release
Modification
12.0(21)S
This command was introduced.
12.0(22)S
This command was implemented on the Cisco 7500 series routers.
12.0(26)S
This command was implemented on Cisco 12000 series ISE line cards.
12.3(7)T
This command was integrated into Cisco IOS Release 12.3(7)T.
12.2(25)S
This command was integrated into Cisco IOS Release 12.2(25)S.
12.2(33)SRA
This command was integrated into Cisco IOS release 12.(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 have configured at least one destination IP address for source tracking (via the ipsource-track command), you can limit the number of destination IP addresses that can be tracked via the ipsource-trackaddress-limit command.
Examples
The following example shows how to configure IP source tracking for data that flows to host 100.10.1.1 and limit IP source tracking to 10 IP addresses:
Router(config)# ip source-track 100.10.0.1
Router(config)# ip source-track address-limit 10
Related Commands
Command
Description
ipsource-track
Enables IP source tracking for a specified host.
showipsource-track
Displays traffic flow statistics for tracked IP host addresses.
ip source-track export-interval
To set the time interval (in seconds) in which IP source tracking statistics are exported from the line card to the route processor (RP), use the ipsource-trackexport-intervalcommand in global configuration mode. To return to default functionality, use the no form of this command.
ipsource-trackexport-intervalnumber
noipsource-trackexport-intervalnumber
Syntax Description
number
Number of seconds that pass before IP source tracking statistics are exported.
Command Default
Traffic flow information is exported from the line card to the RP every 30 seconds.
Command Modes
Global configuration
Command History
Release
Modification
12.0(21)S
This command was introduced.
12.0(22)S
This command was implemented on the Cisco 7500 series routers.
12.0(26)S
This command was implemented on Cisco 12000 series ISE line cards.
12.3(7)T
This command was integrated into Cisco IOS Release 12.3(7)T.
12.2(25)S
This command was integrated into Cisco IOS Release 12.2(25)S.
12.2(33)SRA
This command was integrated into Cisco IOS release 12.(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
Use the ipsource-trackexport-interval command to specify the frequency in which IP source tracking information is sent to the RP for viewing.
Note
This command can be issued only on distributed platforms such as the gigabit route processor (GRP) and the route switch processor (RSP).
Examples
The following example shows how to configure IP source tracking on all line cards and port adapters in the router. In this example, each line card or port adapter collects traffic flow data to host address 100.10.0.1 for 2 minutes before creating an internal system log entry; packet and flow information recorded in the system log is exported for viewing to the route processor or switch processor every 60 seconds.
Router# configure interface
Router(config)# ip source-track 10.10.0.1
Router(config)# ip source-track syslog-interval 2
Router(config)# ip source-track export-interval 60
Related Commands
Command
Description
ipsource-track
Enables IP source tracking for a specified host.
showipsource-trackexportflows
Displays the last 10 packet flows that were exported from the line card to the route processor.
ip source-track syslog-interval
To set the time interval (in minutes) in which syslog messages are generated if IP source tracking is enabled on a device, use the ipsource-tracksyslog-intervalcommand in global configuration mode. To cancel this setting and disable syslog generation, use the no form of this command.
ipsource-tracksyslog-intervalnumber
noipsource-tracksyslog-intervalnumber
Syntax Description
number
IP address of the destination that is to be tracked.
Command Default
Syslog messages are not generated.
Command Modes
Global configuration
Command History
Release
Modification
12.0(21)S
This command was introduced.
12.0(22)S
This command was implemented on the Cisco 7500 series routers.
12.0(26)S
This command was implemented on Cisco 12000 series ISE line cards.
12.3(7)T
This command was integrated into Cisco IOS Release 12.3(7)T.
12.2(25)S
This command was integrated into Cisco IOS Release 12.2(25)S.
12.2(33)SRA
This command was integrated into Cisco IOS release 12.(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
Use the ipsource-tracksyslog-interval command to track the source interfaces of traffic that are destined to a particular address.
Examples
The following example shows how to configure IP source tracking on all line cards and port adapters in the router. In this example, each line card or port adapter collects traffic flow data to host address 100.10.0.1 for 2 minutes before creating an internal system log entry; packet and flow information recorded in the system log is exported for viewing to the route processor or switch processor every 60 seconds.
Router# configure interface
Router(config)# ip source-track 10.10.0.1
Router(config)# ip source-track syslog-interval 2
Router(config)# ip source-track export-interval 60
Related Commands
Command
Description
ipsource-track
Enables IP source tracking for a specified host.
showipsource-track
Displays traffic flow statistics for tracked IP host addresses.
ip ssh
To configure Secure Shell (SSH) control parameters on your router, use the ipssh command in global configuration mode. To restore the default value, use the no form of this command.
(Optional) The time interval that the router waits for the SSH client to respond.
This setting applies to the SSH negotiation phase. Once the EXEC session starts, the standard timeouts configured for the vty apply. By default, there are 5 vtys defined (0-4), therefore 5 terminal sessions are possible. After the SSH executes a shell, the vty timeout starts. The vty timeout defaults to 10 minutes.
seconds
(Optional) The number of seconds until timeout disconnects, with a maximum of 120 seconds. The default is 120 seconds.
authentication-
retries
(Optional) The number of attempts after which the interface is reset.
integer
(Optional) The number of retries, with a maximum of 5 authentication retries. The default is 3.
Command Default
SSH control parameters are set to default router values.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.0(5)S
This command was introduced.
12.1(1)T
This command was integrated into Cisco IOS Release 12.1(1) T.
12.2(17a)SX
This command was integrated into Cisco IOS Release 12.2(17a)SX.
12.2(33)SRA
This command was integrated into Cisco IOS release 12.(33)SRA.
Cisco IOS XE Release 2.4
This command was implemented on the Cisco ASR 1000 series routers.
Usage Guidelines
Before you configure SSH on your router, you must enable the SSH server using thecryptokeygeneratersacommand.
Examples
The following examples configure SSH control parameters on your router:
ip ssh timeout 120
ip ssh authentication-retries 3
ip ssh break-string
To configure a string that, when received from a Secure Shell (SSH) client, will cause the Cisco IOS SSH server to transmit a break signal out an asynchronous line, use the ipsshbreak-string command in global configuration mode. To remove the string, use the no form of this command.
ipsshbreak-stringstring
noipsshbreak-stringstring
Syntax Description
string
Any sequence of characters not including embedded whitespace. Include control characters by prefixing them with ^V (control/V) ordenotethemusingthe\000notation(thatis,abackslashfollowedbythetheASCIIvalueofthecharacterinthreeoctaldigits.)
Command Default
Break signal is not enabled
Command Modes
Global configuration
Command History
Release
Modification
12.3(2)
This command was introduced.
12.3(2)T
This command was integrated into Cisco IOS Release 12.3(2)T.
Usage Guidelines
Note
This break string is used only for SSH sessions that are outbound on physical lines using the SSH Terminal-Line Access feature. This break string is not used by the Cisco IOS SSH client, nor is it used by the Cisco IOS SSH server when the server uses a virtual terminal (VTY) line. This break string does not provide any interoperability with the method that is described in the Internet Engineering Task Force (IETF) Internet-Draft “Session Channel Break Extension” (draft-ietf-secsh-break-02.txt).
Note
In some versions of Cisco IOS, if the SSH break string is set to a single character, the Cisco IOS server will not immediately process that character as a break signal on receipt of that character but will delay until it has received a subsequent character. A break string of two or more characters will be immediately processed as a break signal after the last character in the string has been received from the SSH client.
Examples
The following example shows that the control-B character (ASCII 2) has been set as the SSH break string:
Router (config)# ip ssh break-string \002
Related Commands
Command
Description
ipsshport
Enables SSH access to TTY lines.
ip ssh dh min size
To configure the modulus size on the Secure Shell (SSH) server, use the ipsshdhminsize command in privileged EXEC mode. To disable the configuration, use the no form of this command.
ipsshdhminsize [number]
noipsshdhminsize
Syntax Description
number
(Optional) Minimum number of bits in the key size. The default is 1024.
Command Default
Bit key support is disabled.
Command Modes
Privileged EXEC (#)
Command History
Release
Modification
12.4(20)T
This command was introduced.
15.1(2)S
This command was integrated into Cisco IOS Release 15.1(2)S.
Usage Guidelines
Use the ipsshdhminsizecommand to ensure that the CLI is successfully parsed from either the client side or the server side.
Examples
The following example shows how to set the minimum modulus size to 2048 bits:
Router> enable
Router# ip ssh dh min size 2048
Related Commands
Command
Description
showipssh
Displays the status of SSH server connections.
ip ssh dscp
To specify the IP differentiated services code point (DSCP) value that can be set for a Secure Shell (SSH) configuration, use the ipsshdscpcommand in global configuration mode. To restore the default value, use the no form of this command.
ipsshdscpnumber
noipsshdscpnumber
Syntax Description
number
Value that can be set. The default value is 0 (zero).
number--0 through 63.
Command Default
The IP DSCP value is not specified.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.4(20)S
This command was introduced.
12.2SR
This command is supported in the Cisco IOS Release 12.2SR train. Support in a specific 12.2SR train depends on your feature set, platform, and platform hardware.
12.2SX
This command is supported in the Cisco IOS Release 12.2SX train. Support in a specific 12.2SX train depends on your feature set, platform, and platform hardware.
12.4(22)T
This command was integrated into Cisco IOS Release 12.4(22)T.
Usage Guidelines
IP DSCP values can be configured on both the SSH client and the SSH server for SSH traffic that is generated on either end.
Examples
The following example shows that the DSCP value is set to 35:
Router(config)# ip ssh dscp 35
Related Commands
Command
Description
ipsshprecedence
Specifies the IP precedence value that may be set.
ip ssh maxstartups
To set the maximum concurrent sessions allowed on a Secure Shell (SSH), use the ipsshmaxstartups command in global configuration mode. To disable the configuration, use the no form of this command.
ipsshmaxstartups [number]
noipsshmaxstartups [number]
Syntax Description
number
(Optional) Number of connections to be accepted concurrently. The range is from 2 to 128. The default is 128.
Command Default
The number of maximum concurrent sessions is 128.
Command Modes
Global configuration (config)
Command History
Release
Modification
15.0(1)M
This command was introduced in a release earlier than Cisco IOS Release 15.0(1)M.
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
You must create RSA keys to enable SSH. The RSA key must be at least 768 bits for SSHv2.
Examples
The following example shows how to set the maximum concurrent sessions allowed on a SSH to 100:
Router# configure terminal
Router(config)# ip ssh maxstartups 100
Related Commands
Command
Description
debugipssh
Displays debugging messages for SSH.
ipssh
Configures SSH control parameters on your router.
ip ssh port
To enable secure access to tty (asynchronous) lines, use the ipsshportcommand in global configuration mode. To disable this functionality, use the no form of this command.
ipsshportpor-tnumrotarygroup
noipsshportpor-tnumrotarygroup
Syntax Description
port-num
Specifies the port, such as 2001, to which Secure Shell (SSH) needs to connect.
rotary group
Specifies the defined rotary that should search for a valid name.
Command Default
This command is disabled by default.
Command Modes
Global configuration
Command History
Release
Modification
12.2(2)T
This command was introduced.
Usage Guidelines
The ip ssh port co
mmand supports a functionality that replaces reverse Telnet with SSH. Use this command to securely access the devices attached to the serial ports of a router and to perform the following tasks:
Connect to a router with multiple terminal lines that are connected to consoles of other devices.
Allow network available modems to be securely accessed for dial-out.
Examples
The following example shows how to configure the SSH Terminal-Line Access feature on a modem that is used for dial-out on lines 1 through 200:
line 1 200
no exec
login authentication default
rotary 1
transport input ssh
ip ssh port 2000 rotary 1
The following example shows how to configure the SSH Terminal-Line Access feature to access the console ports of various devices that are attached to the serial ports of the router. For this type of access, each line is put into its own rotary, and each rotary is used for a single port. In this example, lines 1 through 3 are used, and the port (line) mappings of the configuration are as follows: Port 2001 = Line 1, Port 2002 = Line 2, and Port 2003 = Line 3.
line 1
no exec
login authentication default
rotary 1
transport input ssh
line 2
no exec
login authentication default
rotary 2
transport input ssh
line 3
no exec
login authentication default
rotary 3
transport input ssh
ip ssh port 2001 rotary 1 3
From any UNIX or UNIX-like device, the following command is typically used to form an S
SH session:
ssh -c 3des -p 2002 router.example.com
This command will initiate an SSH session using the Triple DES cipher to the device known as “router.example.com,” which uses port 2002. This device will connect to the device on Line 2, which was associated with port 2002. Similarly, many Windows SSH packages have related methods of selecting the cipher and the port for this access.
Related Commands
Command
Description
crypto key generate rsa
Enables the SSH server.
debug ip ssh
Displays debugging messages for SSH.
ipssh
Configures SSH control variables on your router.
line
Identifies a specific line for configuration and begins the command in line configuration mode.
rotary
Defines a group of lines consisting of one or more lines.
ssh
Starts an encrypted session with a remote networking device.
transportinput
Defines which protocols to use to connect to a specific line of the router.
ip ssh precedence
To specify the IP precedence value that can be set for a Secure Shell (SSH) configuration, use the ipsshprecedencecommand in global configuration mode. To restore the default value, use the no form of this command.
ipsshprecedencenumber
noipsshprecedencenumber
Syntax Description
number
Value that can be set. The default value is 0 (zero).
number--0 through 7.
Command Default
The IP precedence value is not specified.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(20)S
This command was introduced.
12.2SR
This command is supported in the Cisco IOS Release 12.2SR train. Support in a specific 12.2SR train depends on your feature set, platform, and platform hardware.
12.2SX
This command is supported in the Cisco IOS Release 12.2SX train. Support in a specific 12.2SX train depends on your feature set, platform, and platform hardware.
12.4(22)T
This command was integrated into Cisco IOS Release 12.4(22)T.
Usage Guidelines
IP precedence values can be configured on both the SSH client and the SSH server for SSH traffic that is generated on either end.
Examples
The following example shows that up to six IP precedence values can be set:
Router(config)# ip precedence value 6
Related Commands
Command
Description
ipsshdscp
Specifies the IP DSCP value that can be set for an SSH configuration.
ip ssh pubkey-chain
To configure Secure Shell RSA (SSH-RSA) keys for user and server authentication on the SSH server, use the ipsshpubkey-chain command in global configuration mode. To remove SSH-RSA keys for user and server authentication on the SSH server, use the no form of this command.
ipsshpubkey-chain
noipsshpubkey-chain
Syntax Description
This command has no arguments or keywords.
Command Default
SSH-RSA keys are not configured.
Command Modes
Global configuration (config)
Command History
Release
Modification
15.0(1)M
This command was introduced.
15.1(1)S
This command was integrated into Cisco IOS Release 15.1(1)S.
Usage Guidelines
Use the ipsshpubkey-chaincommand to ensure SSH server and user public key authentication.
Examples
The following example shows how to enable public key generation:
Router(config)# ip ssh pubkey-chain
Related Commands
Command
Description
ipsshstricthostkeycheck
Enables strict host key checking on the SSH server.
ip ssh rekey
To configure a time-based rekey or a volume-based rekey for a secure shell (SSH) session, use the
ip ssh rekey command in global configuration mode. To disable the rekey, use the
no
form of this command.
ipsshrekey { timetime
|
volumevolume }
noipsshrekey
Syntax Description
timetime
Rekey time, in minutes. The range is from 10 minutes to 1440 minutes.
volumevolume
Amount of rekeyed data, in kilobytes. The range is from 100 KB to 4194303 KB.
Command Default
The rekey time or volume is not configured.
Command Modes
Global configuration (config)
Command History
Release
Modification
15.0(2)SE
This command was introduced.
15.1(1)SY
This command was integrated into Cisco IOS Release 15.1(1)SY.
Usage Guidelines
SSH rekey initiation occurs when the session key negotiated at connection startup is used for an unusually long time. A server or a client initiates a new key exchange based on the maximum number of packets transmitted or based on a specified time. The
ipsshrekeytime command enables you to specify a time for the rekey initiation. The
ipsshrekeyvolumecommand enables you to specify a volume that is based on the maximum number of packets transmitted for the rekey initiation. When you use the
noipsshrekeycommand, the configured time-based rekey or volume-based rekey is disabled.
Examples
The following example shows how to configure a time-based rekey for an SSH session:
Device(config)# ip ssh rekey time 108
The following example shows how to configure a volume-based rekey for an SSH session:
Device(config)# ip ssh rekey volume 500
Related Commands
Command
Description
ip ssh
Configures SSH control parameters on a device.
ip ssh rsa keypair-name
To specify which Rivest, Shimar, and Adelman (RSA) key pair to use for a Secure Shell (SSH) connection, use the ipsshrsakeypair-namecommand in global configuration mode. To disable the key pair that was configured, use the no form of this command.
ipsshrsakeypair-namekeypair-name
noipsshrsakeypair-namekeypair-name
Syntax Description
keypair-name
Name of the key pair.
Command Default
If this command is not configured, SSH will use the first RSA key pair that is enabled.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.3(4)T
This command was introduced.
12.3(2)XE
This command was integrated into Cisco IOS Release 12.3(2)XE.
12.2(25)S
This command was integrated into Cisco IOS Release 12.2(25)S.
12.3(7)JA
This command was integrated into Cisco IOS Release 12.3(7)JA.
12.0(32)SY
This command was integrated into Cisco IOS Release 12.0(32)SY.
12.2(33)SXI4
This command was integrated into Cisco IOS Release 12.2(33)SXI4.
Usage Guidelines
Using theipsshrsakeypair-name command, you can enable an SSH connection using RSA keys that you have configured using thekeypair-name argument. Previously, SSH was tied to the first RSA keys that were generated (that is, SSH was enabled when the first RSA key pair was generated). The previous behavior still exists, but by using the ipsshrsakeypair-name command, you can overcome that behavior. If you configure theipsshrsakeypair-name command with a key pair name, SSH is enabled if the key pair exists, or SSH will be enabled if the key pair is generated later. If you use this command, you are not forced to configure a hostname and a domain name.
Note
A Cisco IOS router can have many RSA key pairs.
Examples
The following example shows how to specify the RSA key pair “sshkeys” for an SSH connection:
Router# configure terminal
Router(config)# ip ssh rsa keypair-name sshkeys
Related Commands
Command
Description
debugipssh
Displays debug messages for SSH.
disconnectssh
Terminates a SSH connection on your router.
ipssh
Configures SSH control parameters on your router.
ipsshversion
Specifies the version of SSH to be run on a router.
showipssh
Displays the SSH connections of your router.
ip ssh server authenticate user
To enable the user authentication methods available in the Secure Shell (SSH) server, use the ip ssh server authenticate user command in global configuration mode. To disable the user authentication methods available in the SSH server, use the no form of this command. To return to the default behavior in which all user authentication methods are enabled in the predefined order, use the default form of this command.
ip ssh server authenticate user
{ publickey | keyboard | password }
no ip ssh server authenticate user
{ publickey | keyboard | password }
default ip ssh server authenticate user
Syntax Description
publickey
Enables the public-key-based authentication method.
keyboard
Enables the keyboard-interactive-based authentication method.
password
Enables the password-based authentication method.
Command Default
All three user authentication methods are enabled in the following predefined order:
Public-key authentication method
Keyboard-interactive authentication method
Password authentication method
Command Modes
Global configuration (config)
Command History
Release
Modification
15.3(3)M
This command was introduced.
Cisco IOS XE Release 3.10S
This command was integrated into Cisco IOS XE Release 3.10S.
Usage Guidelines
The noipsshauthenticateuser
{publickey | keyboard | pasword} command enables the SSH server to choose a preferred user authentication method by disabling any of the other supported user authentication methods. By default, all user authentication methods are enabled on the SSH server in the following predefined order:
Public-key authentication method
Keyboard-interactive authentication method
Password authentication method
The following messages are displayed during specific
scenarios:
If the public-key-based authentication method is disabled using the no ip ssh server authenticate user publickey command, the RFC 4252 (The Secure Shell (SSH) Authentication Protocol) behavior in which public-key authentication is mandatory is overridden and the following warning message is displayed:
%SSH: Publickey disabled. Overriding RFC
If all three authentication methods are disabled, the following warning message is displayed:
%SSH: No auth method configured. Incoming connection will be dropped
In the event of an incoming SSH session request from the SSH client when all three user authentication methods are disabled on the SSH server, the connection request is dropped at the SSH server and a system log message is available in the following format:
%SSH-3-NO_USERAUTH: No auth method configured for SSH Server. Incoming connection from <ip address> (tty = <ttynum>) dropped
Examples
The following example shows how to disable the public-key-based authentication and keyboard-interactive-based authentication methods, allowing the SSH client to connect to the SSH server using password-based authentication:
Device> enable
Device# configure terminal
Device(config)# no ip ssh server authenticate user publickey
%SSH: Publickey disabled. Overriding RFC
Device(config)# no ip ssh server authenticate user keyboard
Device(config)# exit
The following example shows how to enable the public-key-based authentication and keyboard-interactive-based authentication methods:
Device> enable
Device# configure terminal
Device(config)# ip ssh server authenticate user publickey
Device(config)# ip ssh server authenticate user keyboard
Device(config)# exit
The following example shows how to return to the default behavior in which all user authentication methods are enabled in the predefined order:
Device> enable
Device# configure terminal
Device(config)# default ip ssh server authenticate user
Device(config)# exit
Related Commands
Command
Description
show ip ssh
Displays the version and configuration data for SSH.
ip ssh source-interface
To specify the IP address of an interface as the source address for a Secure Shell (SSH) client device, use the ipsshsource-interfacecommand in global configuration mode. To remove the IP address as the source address, use the no form of this command.
ipsshsource-interfaceinterface
noipsshsource-interfaceinterface
Syntax Description
interface
The interface whose address is used as the source address for the SSH client.
Command Default
The address of the closest interface to the destination is used as the source address (the closest interface is the output interface through which the SSH packet is sent).
Command Modes
Global configuration
Command History
Release
Modification
12.2(8)T
This command was introduced.
Usage Guidelines
By specifying this command, you can force the SSH client to use the IP address of the source interface as the source address.
Examples
In the following example, the IP address assigned to Ethernet interface 0 will be used as the source address for the SSH client:
ip ssh source-interface ethernet0
ip ssh stricthostkeycheck
To enable strict host key checking on the Secure Shell (SSH) server, use the ipsshstricthostcheck command in global configuration mode. To disable strict host key checking, use the no form of this command.
ipsshstricthostkeycheck
noipsshstricthostkeycheck
Syntax Description
This command has no arguments or keywords.
Command Default
Strict host key checking on the SSH server is not enabled.
Command Modes
Global configuration (config)
Command History
Release
Modification
15.0(1)M
This command was introduced.
15.1(1)S
This command was integrated into Cisco IOS Release 15.1(1)S.
Usage Guidelines
Use the ipsshstricthostkeycheckcommand to ensure SSH server side strict checking. Configuring the ipsshstricthostkeycheck command authenticates all servers.
Note
This command is not available on SSH Version 1.
If the ipsshpubkey-chain command is not configured, the ipsshstricthostkeycheck command will lead to connection failure in SSH Version 2.
Examples
The following example shows how to enable strict host key checking:
Router(config)# ip ssh stricthostkeycheck
Related Commands
Command
Description
ipsshpubkey-chain
Configures SSH-RSA keys for user and server authentication on the SSH server.
ip ssh version
To specify the version of Secure Shell (SSH) to be run on a router, use the ipsshversioncommand in global configuration mode. To disable the version of SSH that was configured and to return to compatibility mode, use the no form of this command.
ipsshversion
[ 1 | 2 ]
noipsshversion
[ 1 | 2 ]
Syntax Description
1
(Optional) Router runs only SSH Version 1.
2
(Optional) Router runs only SSH Version 2.
Command Default
If this command is not configured, SSH operates in compatibility mode, that is, Version 1 and Version 2 are both supported.
Command Modes
Global configuration
Command History
Release
Modification
12.3(4)T
This command was introduced.
12.3(2)XE
This command was integrated into Cisco IOS Release 12.3(2)XE.
12.2(25)S
This command was integrated into Cisco IOS Release 12.2(25)S.
12.3(7)JA
This command was integrated into Cisco IOS Release 12.3(7)JA.
12.0(32)SY
This command was integrated into Cisco IOS Release 12.0(32)SY.
12.4(20)T
This command was integrated into Cisco IOS Release 12.4(20)T.
15.2(2)SA2
This command was implemented on the Cisco ME 2600X Series Ethernet Access Switches.
Usage Guidelines
You can use this command with the2 keyword to ensure that your router will not inadvertently establish a weaker SSH Version 1 connection.
Examples
The following example shows that only SSH Version 1 support is configured:
Router (config)# ip ssh version 1
The following example shows that only SSH Version 2 is configured:
Router (config)# ip ssh version 2
The following example shows that SSH Versions 1 and 2 are configured:
Router (config)# no ip ssh version
Related Commands
Command
Description
debug ip ssh
Displays debug messages for SSH.
disconnect ssh
Terminates a SSH connection on your router.
ipssh
Configures SSH control parameters on your router.
ip ssh rsa keypair-name
Specifies which RSA key pair to use for a SSH connection.
show ip ssh
Displays the SSH connections of your router.
ip tacacs source-interface
To use the IP address of a specified interface for all outgoing TACACS+ packets, use the iptacacssource-interface command in global configuration or server-group configuration mode. To disable use of the specified interface IP address, use the no form of this command.
iptacacssource-interfacesubinterface-name
noiptacacssource-interface
Syntax Description
subinterface-name
Name of the interface that TACACS+ uses for all of its outgoing packets.
Command Default
None
Command Modes
Global configuration (config)
Server-group configuration (server-group)
Command History
Release
Modification
10.0
This command was introduced.
12.3(7)T
This command was introduced in server-group configuration mode.
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.2(33)SXH
This command was integrated into Cisco IOS Release 12.2(33)SXH.
12.2(33)SXI
This command was integrated into Cisco IOS Release 12.2(33)SXI.
12.2(54)SG
This command was integrated into Cisco IOS Release 12.2(54)SG.
Usage Guidelines
Use this command to set the IP address of a subinterface for all outgoing TACACS+ packets. This address is used as long as the interface is in the up state. In this way, the TACACS+ server can use one IP address entry associated with the network access client instead of maintaining a list of all IP addresses.
This command is especially useful in cases where the router has many interfaces and you want to ensure that all TACACS+ packets from a particular router have the same IP address.
The specified sub-interface should have a valid IP address and should be in the up state for a valid configuration. If the specified sub-interface does not have a valid IP address or is in the down state, TACACS+ enforces the source-interface configuration. In case the interface has no IP address, a null IP address is sent. To avoid this, add a valid IP address to the sub-interface or bring the sub-interface to the up state.
Note
This command can be configured globally or in server-group configuration mode. If this command is configured in the server-group configuration mode, the IP address of the specified interface is used for packets that are going only to servers that are defined in that server group. If this command is not configured in server-group configuration mode, the global configuration applies.
Examples
The following example makes TACACS+ use the IP address of subinterface “s2” for all outgoing TACACS+ packets:
ip tacacs source-interface s2
In the following example, TACACS+ is to use the IP address of Loopback0 for packets that are going only to server 10.1.1.1:
aaa group server tacacs+ tacacs1
server-private 10.1.1.1 port 19 key cisco
ip vrf forwarding cisco
ip tacacs source-interface Loopback0
ip vrf cisco
rd 100:1
interface Loopback0
ip address 10.0.0.2 255.0.0.0
ip vrf forwarding cisco
Related Commands
Command
Description
ipradiussource-interface
Forces RADIUS to use the IP address of a specified interface for all outgoing RADIUS packets.
iptelnetsource-interface
Allows a user to select an address of an interface as the source address for Telnet connections.
iptftpsource-interface
Allows a user to select the interface whose address will be used as the source address for TFTP connections.
ip vrf forwarding (server-group)
Configures the VRF reference of an AAA RADIUS or TACACS+ server group.
server-private
Configures the IP address of the private RADIUS or TACACS+ server for the group server.
ip tcp intercept connection-timeout
To change how long a TCP connection will be managed by the TCP intercept after no activity, use the iptcpinterceptconnection-timeout command in
global configuration mode. To restore the default, use the noform of this command.
iptcpinterceptconnection-timeoutseconds
noiptcpinterceptconnection-timeout [seconds]
Syntax Description
seconds
Time (in seconds) that the software will still manage the connection after no activity. The minimum value is 1 second. The default is 86,400 seconds (24 hours).
Command Default
86,400 seconds (24 hours)
Command Modes
Global configuration
Command History
Release
Modification
11.2 F
This command was introduced.
12.2(33)SRA
This command was integrated into Cisco IOS release 12.(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
Use the iptcpinterceptconnection-timeoutcommand to change how long a TCP connection will be managed by the TCP intercept after a period of inactivity.
Examples
The following example sets the software to manage the connection for 12 hours (43,200 seconds) after no activity:
ip tcp intercept connection-timeout 43200
ip tcp intercept drop-mode
To set the TCP intercept drop mode, use the iptcpinterceptdrop-mode command in g
lobal configuration
mode
. To restore the default, use the no form of this command.
iptcpinterceptdrop-mode
[ oldest | random ]
noiptcpinterceptdrop-mode
[ oldest | random ]
Syntax Description
oldest
(Optional) S
oftware drops the oldest partial connection. This is the default.
random
(Optional)
Software drops a randomly selected partial connection.
Command Default
oldest
Command Modes
Global configuration
Command History
Release
Modification
11.2 F
This command was introduced.
12.2(33)SRA
This command was integrated into Cisco IOS release 12.(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
If the number of incomplete connections exceeds 1100 or the number of connections arriving in the last 1 minute exceeds 1100, the TCP intercept feature becomes more aggressive. When this happens, each new arriving connection causes the oldest partial connection to be deleted, and the initial retransmission timeout is reduced by half to 0.5 seconds (and so the total time trying to establish the connection will be cut in half).
Note that the 1100 thresholds can be configured with the iptcpinterceptmax-incompletehigh and iptcpinterceptone-minutehigh commands.
Use the iptcpinterceptdrop-mode command to change the dropping strategy from oldest to a random drop.
Examples
The following example sets the drop mode to random:
ip tcp intercept drop-mode random
Related Commands
Command
Description
iptcpinterceptmax-incompletehigh
Defines the maximum number of incomplete connections allowed before the software enters aggressive mode.
iptcpinterceptmax-incompletelow
Defines the number of incomplete connections below which the software leaves aggressive mode.
iptcpinterceptone-minutehigh
Defines the number of connection requests received in the last one-minute sample period before the software enters aggressive mode.
iptcpinterceptone-minutelow
Defines the number of connection requests below which the software leaves aggressive mode.
ip tcp intercept finrst-timeout
To chang
e how long after receipt of a reset or FIN-exchange the software ceases to manage the connection, use the iptcpinterceptfinrst-timeout command in global
configuration mode. To restore the default, use the noform of this command.
iptcpinterceptfinrst-timeoutseconds
noiptcpinterceptfinrst-timeout [seconds]
Syntax Description
seconds
Time (in seconds) after receiving a reset or FIN-exchange that the software ceases to manage the connection. The minimum value is 1 second. The default is 5 seconds.
Command Default
5 seconds
Command Modes
Global configuration
Command History
Release
Modification
11.2 F
This command was introduced.
12.2(33)SRA
This command was integrated into Cisco IOS release 12.(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
Even after the two ends of the connection are joined, the software intercepts packets being sent back and forth. Use this command if you need to adjust how soon after receiving a reset or FIN-exchange the software stops intercepting packets.
Examples
The following example sets the software to wait for 10 seconds before it leaves intercept mode:
ip tcp intercept finrst-timeout 10
ip tcp intercept list
To e
nable TCP intercept, use the iptcpinterceptlist command in globa
l configuration
mode
. To disable TCP intercept, use the no form of this command.
iptcpinterceptlistaccess-list-number
noiptcpinterceptlistaccess-list-number
Syntax Description
access-list-number
E
xtended access list number in the range from 100 to 199.
Command Default
Disabled
Command Modes
Global configuration
Command History
Release
Modification
11.2 F
This command was introduced.
12.2(33)SRA
This command was integrated into Cisco IOS release 12.(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
The TCP intercept feature intercepts TCP connection attempts and shields servers from TCP SYN-flood attacks, also known as denial-of-service attacks.
TCP packets matching the access list are presented to the TCP intercept code for processing, as determined by theiptcpinterceptmodecommand. The TCP intercept code either intercepts or watches the connections.
To have all TCP connection attempts submitted to the TCP intercept code, have the access list match everything.
Examples
The following example configuration defines access list 101, causing the software to intercept packets for all TCP servers on the 192.168.1.0/24 subnet:
ip tcp intercept list 101
!
access-list 101 permit tcp any 192.168.1.0 0.0.0.255
Related Commands
Command
Description
access-list(IPextended)
Defines an extended IP access list.
iptcpinterceptmode
Changes the TCP intercept mode.
showtcpinterceptconnections
Displays TCP incomplete and established connections.
showtcpinterceptstatistics
Displays TCP intercept statistics.
ip tcp intercept max-incomplete
To define either the number of incomplete connections below which the software leaves aggressive mode or the maximum number of incomplete connections allowed before the software enters aggressive mode, use the iptcpinterceptmax-incompletecommand in
global configuration
mode
. To restore the default, use the no form of this command.
Defines the number of incomplete connections below which the software leaves aggressive mode. The range is 1 to 2147483647. The default is 900
highnumber
Defines the number of incomplete connections allowed, above which the software enters aggressive mode. The range is from 1 to 2147483647. The default is 1100.
Command Default
The number of incomplete connections below which the software leaves aggressive mode is 900.
The maximum number of incomplete connections allowed before the software enters aggressive mode is 1100.
Command Modes
Global configuration
Command History
Release
Modification
12.4(15)T
This command was introduced in Cisco IOS Release 12.4(15)T. This command replaces the iptcpinterceptmax-incompletelow and the iptcpinterceptmax-incompletehigh commands.
12.2(33)SXH
This command was integrated into Cisco IOS Release 12.2(33)SXH.
Usage Guidelines
There are two factors that determine aggressive mode: connection requests and incomplete connections.
By default, if both the number of connection requests and the number of incomplete connections is 900 or lower, aggressive mode ends.
By default, if either the number of connection requests or the number of incomplete connections is 1100 or greater, aggressive mode begins.
The number of connection requests may be defined by the iptcpinterceptone-minute command and the number of incomplete connections may be defined by the iptcpinterceptmax-incompletecommand.
Characteristics of Aggressive Mode
The following are the characteristics of aggressive mode:
Each new arriving connection causes the oldest partial connection to be deleted.
The initial retransmission timeout, the total time the router attempts to establish the connection, is reduced from 1 second to 0.5 seconds.
The watch-timeout period is reduced from 30 seconds to 15 seconds.
Examples
The following example sets the software to leave aggressive mode when the number of incomplete connections falls below 1000 and allows 1500 incomplete connections before the software enters aggressive mode. The running configuration is also shown.
Router(config)# ip tcp intercept max-incomplete low 1000 high 1500
Router(config)# show running config | i ip tcp
ip tcp intercept one-minute low 1000 high 1400
Related Commands
Command
Description
iptcpinterceptdrop-mode
Sets the TCP intercept drop mode.
iptcpinterceptone-minute
Defines the number of connection requests below which the software leaves aggressive mode and the number of connection requests received before the software enters aggressive mode.
ip tcp intercept max-incomplete high
Note
Effective with Cisco IOS Release 12.2(33)SXH and Cisco IOS Release 12.4(15)T, the iptcpinterceptmax-incompletehigh command is replaced by the iptcpinterceptmax-incompletecommand. See the iptcpinterceptmax-incomplete command for more information.
To define the maximum number of incomplete connections allowed before the software enters aggressive mode, use the iptcpinterceptmax-incompletehighcommand in
global configuration
mode
. To restore the default, use the no form of this command.
iptcpinterceptmax-incompletehighnumber
noiptcpinterceptmax-incompletehigh [number]
Syntax Description
number
Defines the number of incomplete connections allowed, above which the software enters aggressive mode. The range is from 1 to 2147483647. The default is 1100.
Command Default
1100 incomplete connections
Command Modes
Global configuration
Command History
Release
Modification
11.2 F
This command was introduced.
12.4(15)T
This command was replaced by the iptcpinterceptmax-incomplete command.
12.2(33)SXH
This command was replaced by the iptcpinterceptmax-incomplete command.
Usage Guidelines
Note
If you are running Cisco IOS Release 12.2(33)SXH or Cisco IOS Release 12.4(15)T and issue theiptcpinterceptmax-incompletehigh command, it will be accepted by the router, but a message will be displayed stating that the iptcpinterceptmax-incompletehigh command has been replaced by the iptcpinterceptmax-incomplete command.
If the number of incomplete connections exceeds the number configured, the TCP intercept feature becomes aggressive. The following are the characteristics of aggressive mode:
Each new arriving connection causes the oldest partial connection to be deleted.
The initial retransmission timeout is reduced by half to 0.5 seconds (and so the total time trying to establish the connection is cut in half).
The watch-timeout is cut in half (from 30 seconds to 15 seconds).
You can change the drop strategy from the oldest connection to a random connection with theiptcpinterceptdrop-mode command.
Note
The two factors that determine aggressive mode (connection requests and incomplete connections) are related and work together. When the value of eitheriptcpinterceptone-minutehigh or iptcpinterceptmax-incompletehigh is exceeded, aggressive mode begins. When both
connection requests and incomplete connections fall below the values of
ip tcp intercept one-minute low
and iptcpinterceptmax-incompletelow, aggressive mode ends.
The software will back off from its aggressive mode when the number of incomplete connections falls below the number specified by theiptcpinterceptmax-incompletelow command.
Examples
The following example allows 1500 incomplete connections before the software enters aggressive mode:
ip tcp intercept max-incomplete high 1500
Related Commands
Command
Description
iptcpinterceptdrop-mode
Sets the TCP intercept drop mode.
iptcpinterceptmax-incompletelow
Defines the number of incomplete connections below which the software leaves aggressive mode.
iptcpinterceptone-minutehigh
Defines the number of connection requests received in the last one-minutes sample period before the software enters aggressive mode.
iptcpinterceptone-minutelow
Defines the number of connection requests below which the software leaves aggressive mode.
ip tcp intercept max-incomplete low
Note
Effective with Cisco IOS Release 12.2(33)SXH and Cisco IOS Release 12.4(15)T, the iptcpinterceptmax-incompletelow command is replaced by the iptcpinterceptmax-incompletecommand. See the iptcpinterceptmax-incomplete command for more information.
To define the number of incomplete connections below which the software leaves aggressive mode, use the iptcpinterceptmax-incompletelowcommand in
global configuration
mode
. To restore the default, use the no form of this command.
iptcpinterceptmax-incompletelownumber
noiptcpinterceptmax-incompletelow [number]
Syntax Description
number
Defines the number of incomplete connections below which the software leaves aggressive mode. The range is 1 to 2147483647. The default is 900.
Command Default
900 incomplete connections
Command Modes
Global configuration
Command History
Release
Modification
11.2 F
This command was introduced.
12.4(15)T
This command was replaced by the iptcpinterceptmax-incomplete command.
12.2(33)SXH
This command was replaced by the iptcpinterceptmax-incomplete command.
Usage Guidelines
Note
If you are running Cisco IOS Release 12.2(33)SXH, or Cisco IOS Release 12.4(15)T and issue theiptcpinterceptmax-incompletelow command, it will be accepted by the router, but a message will be displayed stating that the iptcpinterceptmax-incompletehighcommand has been replaced by the iptcpinterceptmax-incomplete command.
When both
connection requests and incomplete connections fall below the values of iptcpinterceptone-minutelow and iptcpinterceptmax-incompletelow, the TCP intercept feature leaves aggressive mode.
Note
The two factors that determine aggressive mode (connection requests and incomplete connections) are related and work together. When the value of eitheriptcpinterceptone-minutehighoriptcpinterceptmax-incompletehigh is exceeded, aggressive mode begins. When both
connection requests and incomplete connections fall below the values of iptcpinterceptone-minutelowandiptcpinterceptmax-incompletelow, aggressive mode ends.
See the iptcpinterceptmax-incompletehigh command for a description of aggressive mode.
Examples
The following example sets the software to leave aggressive mode when the number of incomplete connections falls below 1000:
ip tcp intercept max-incomplete low 1000
Related Commands
Command
Description
iptcpinterceptdrop-mode
Sets the TCP intercept drop mode.
iptcpinterceptmax-incompletehigh
Defines the maximum number of incomplete connections allowed before the software enters aggressive mode.
iptcpinterceptone-minutehigh
Defines the number of connection requests received in the last one-minutes sample period before the software enters aggressive mode.
iptcpinterceptone-minutelow
Defines the number of connection requests below which the software leaves aggressive mode.
ip tcp intercept mode
To c
hange the TCP intercept mode, use the iptcpinterceptmodecommand in global configuration mode.
To restore the default, use the no form of this command.
iptcpinterceptmode
{ intercept | watch }
noiptcpinterceptmode
[ intercept | watch ]
Syntax Description
intercept
Active mode in which the TCP intercept software intercepts TCP packets from clients to servers that match the configured access list and performs intercept duties. This is the default.
watch
Monitoring mode in which the software allows connection attempts to pass through the router and watches them until they are established.
Command Default
intercept
Command Modes
Global configuration
Command History
Release
Modification
11.2 F
This command was introduced.
12.2(33)SRA
This command was integrated into Cisco IOS release 12.(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 TCP intercept is enabled, it operates in intercept mode by default. In intercept mode, the software actively intercepts TCP SYN packets from clients to servers that match the specified access list. For each SYN, the software responds on behalf of the server with an ACK and SYN, and waits for an ACK of the SYN from the client. When that ACK is received, the original SYN is sent to the server, and the code then performs a three-way handshake with the server. Then the two half-connections are joined.
In watch mode, the software allows connection attempts to pass through the router, but watches them until they become established. If they fail to become established in 30 seconds (or the value set by the iptcpinterceptwatch-timeout command), a Reset is sent to the server to clear its state.
Examples
The following example sets the mode to watch mode:
ip tcp intercept mode watch
Related Commands
Command
Description
iptcpinterceptwatch-timeout
Defines how long the software will wait for a watched TCP intercept connection to reach established state before sending a reset to the server.
ip tcp intercept one-minute
To define both the number of connection requests below which the software leaves aggressive mode and the number of connection requests that can be received before the software enters aggressive mode, use the iptcpinterceptone-minutecommand in gl
obal configuration
mode
. To restore the default connection request settings, use the no form of this command.
Specifies the number of connection requests in the last one-minute sample period below which the software leaves aggressive mode. The range is from 1 to 2147483647. The default is 900.
highnumber
Specifies the number of connection requests that can be received in the last one-minute sample period before the software enters aggressive mode. The range is 1 to 2147483647. The default is 1100.
Command Default
The default number of connection requests below which the software leaves aggressive mode is 900.
The default number of connection requests received before the software enters aggressive mode is 1100.
Command Modes
Global configuration
Command History
Release
Modification
12.4(15)T
This command was introduced in Cisco IOS Release 12.4(15)T. This command replaces the iptcpinterceptone-minutelow and the iptcpinterceptone-minutehigh commands.
12.2(33)SXH
This command was integrated into Cisco IOS Release 12.2(33)SXH.
Usage Guidelines
There are two factors that determine aggressive mode: connection requests and incomplete connections.
By default, if both the number of connection requests and the number of incomplete connections is 900 or lower, aggressive mode ends.
By default, if either the number of connection requests or the number of incomplete connections is 1100 or greater, aggressive mode begins.
The number of connection requests may be defined by the iptcpinterceptone-minute command and the number of incomplete connections may be defined by the iptcpinterceptmax-incompletecommand. The default number of connection requests
Characteristics of Aggressive Mode
The following are the characteristics of aggressive mode:
Each new arriving connection causes the oldest partial connection to be deleted.
The initial retransmission timeout, the total time the router attempts to establish the connection, is reduced from 1 second to 0.5 seconds.
The watch-timeout period is reduced from 30 seconds to 15 seconds.
Examples
The following example sets the software to leave aggressive mode when the number of connection requests falls below 1000 and allows 1400 connection requests before the software enters aggressive mode. The the running configuration is then shown.
Router(config)# ip tcp intercept one-minute low 1000 high 1400
Router(config)# show running configuration | i ip tcp
ip tcp intercept one-minute low 1000 high 1400
Related Commands
Command
Description
iptcpinterceptdrop-mode
Sets the TCP intercept drop mode.
iptcpinterceptmax-incomplete
Defines the number of incomplete connections below which the software leaves aggressive mode or the maximum number of incomplete connections allowed before the software enters aggressive mode.
ip tcp intercept one-minute high
Note
Effective with Cisco IOS Release 12.2(33)SXH and Cisco IOS Release 12.4(15)T the iptcpinterceptone-minutehighcommand is replaced by the iptcpinterceptone-minutecommand. See the iptcpinterceptone-minutecommand for more information.
To define the number of connection requests received in the last one-minutes sample period before the software enters aggressive mode, use the iptcpinterceptone-minutehighcommand in global configuration mode. To restore the default, use the no form of this command.
iptcpinterceptone-minutehighnumber
noiptcpinterceptone-minutehigh [number]
Syntax Description
number
Specifies the number of connection requests that can be received in the last one-minute sample period before the software enters aggressive mode. The range is 1 to 2147483647. The default is 1100.
Command Default
1100 connection requests
Command Modes
Global configuration
Command History
Release
Modification
11.2 F
This command was introduced.
12.4(15)T
This command was replaced by the iptcpinterceptone-minute command.
12.2(33)SXH
This command was replaced by the iptcpinterceptone-minute command.
Usage Guidelines
Note
If you are running Cisco IOS Release 12.2(33)SXH or Cisco IOS Release 12.4(15)T and issue theiptcpinterceptone-minutehigh command, it will be accepted by the router, but a message will be displayed stating that the iptcpinterceptone-minutehigh command has been replaced by the iptcpinterceptone-minutecommand.
If the number of connection requests exceeds the number value configured, the TCP intercept feature becomes aggressive. The following are the characteristics of aggressive mode:
Each new arriving connection causes the oldest partial connection to be deleted.
The initial retransmission timeout is reduced by half to 0.5 seconds (and so the total time trying to establish the connection is cut in half).
The watch-timeout is cut in half (from 30 seconds to 15 seconds).
You can change the drop strategy from the oldest connection to a random connection with theiptcpinterceptdrop-mode command.
Note
The two factors that determine aggressive mode (connection requests and incomplete connections) are related and work together. When the value of eitheriptcpinterceptone-minutehighoriptcpinterceptmax-incompletehigh is exceeded, aggressive mode begins. When both
connection requests and incomplete connections fall below the values of iptcpinterceptone-minutelowandiptcpinterceptmax-incompletelow, aggressive mode ends.
Examples
The following example allows 1400 connection requests before the software enters aggressive mode:
ip tcp intercept one-minute high 1400
Related Commands
Command
Description
iptcpinterceptdrop-mode
Sets the TCP intercept drop mode.
iptcpinterceptmax-incompletehigh
Defines the maximum number of incomplete connections allowed before the software enters aggressive mode.
iptcpinterceptmax-incompletelow
Defines the number of incomplete connections below which the software leaves aggressive mode.
iptcpinterceptone-minutelow
Defines the number of connection requests below which the software leaves aggressive mode.
ip tcp intercept one-minute low
Note
Effective with Cisco IOS Release 12.2(33)SXH and Cisco IOS Release 12.4(15)T, the iptcpinterceptone-minutelowcommand is replaced by the iptcpinterceptone-minutecommand. See the iptcpinterceptone-minutecommand for more information.
To define the number of connection requests below which the software leaves aggressive mode, use the iptcpinterceptone-minutelowcommand in gl
obal configuration
mode
. To restore the default, use the no form of this command.
iptcpinterceptone-minutelownumber
noiptcpinterceptone-minutelow [number]
Syntax Description
number
Defines the number of connection requests in the last one-minute sample period below which the software leaves aggressive mode. The range is from 1 to 2147483647. The default is 900.
Command Default
900 connection requests
Command Modes
Global configuration
Command History
Release
Modification
11.2 F
This command was introduced.
12.4(15)T
This command was replaced by the iptcpinterceptone-minute command.
12.2(33)SXH
This command was replaced by the iptcpinterceptone-minute command.
Usage Guidelines
Note
If you are running Cisco IOS Release 12.2(33)SXH or Cisco IOS Release 12.4(15)T and issue theiptcpinterceptone-minutelow command, it will be accepted by the router, but a message will be displayed stating that the iptcpinterceptone-minutelow command has been replaced by the iptcpinterceptone-minutecommand.
When both
connection requests and incomplete connections fall below the values of iptcpinterceptone-minutelowandiptcpinterceptmax-incompletelow, the TCP intercept feature leaves aggressive mode.
Note
The two factors that determine aggressive mode (connection requests and incomplete connections) are related and work together. When the value of eitheriptcpinterceptone-minutehighoriptcpinterceptmax-incompletehigh is exceeded, aggressive mode begins. When both
connection requests and incomplete connections fall below the values ofiptcpinterceptone-minutelowandiptcpinterceptmax-incompletelow, aggressive mode ends.
See theiptcpinterceptone-minutehigh command for a description of aggressive mode.
Examples
The following example sets the software to leave aggressive mode when the number of connection requests falls below 1000:
ip tcp intercept one-minute low 1000
Related Commands
Command
Description
iptcpinterceptdrop-mode
Sets the TCP intercept drop mode.
iptcpinterceptmax-incompletehigh
Defines the maximum number of incomplete connections allowed before the software enters aggressive mode.
iptcpinterceptmax-incompletelow
Defines the number of incomplete connections below which the software leaves aggressive mode.
iptcpinterceptone-minutehigh
Defines the number of connection requests received in the last one-minutes sample period before the software enters aggressive mode.
ip tcp intercept watch-timeout
To define how long the software will wait for a watched TCP intercept connection to reach established state before sending a reset to the server, use the iptcpinterceptwatch-timeoutcommand in global configuration mode. To restore the default, use the no form of this command.
iptcpinterceptwatch-timeoutseconds
noiptcpinterceptwatch-timeout [seconds]
Syntax Description
seconds
Time (in seconds) that the software waits for a watched connection to reach established state before sending a Reset to the server. The minimum value is 1 second. The default is 30 seconds.
Command Default
30 seconds
Command Modes
Global configuration
Command History
Release
Modification
11.2 F
This command was introduced.
12.2(33)SRA
This command was integrated into Cisco IOS release 12.(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
Use this command if you have set the TCP intercept to passive watch mode and you want to change the default time the connection is watched. During aggressive mode, the watch timeout time is cut in half.
Examples
The following example sets the software to wait 60 seconds for a watched connection to reach established state before sending a Reset to the server:
ip tcp intercept watch-timeout 60
Related Commands
Command
Description
iptcpinterceptmode
Changes the TCP intercept mode.
ip traffic-export apply
To apply an IP traffic export profile or an IP traffic capture profile to a specific interface, use the iptraffic-exportapplycommand in interface configuration mode. To remove an IP traffic export profile or an IP traffic capture profile from an interface, use the no form of this command.
iptraffic-exportapplyprofile-name
noiptraffic-exportapplyprofile-name
Cisco 1841, Cisco 2800 Series, and Cisco 3800 Series
iptraffic-exportapplyprofile-namesizesize
noiptraffic-exportapplyprofile-name
Syntax Description
profile-name
Name of the profile that is to be applied to a specified interface.
The profile-name argument must match a name that was specified in the iptraffic-exportprofile command.
size
Optional. Used in IP traffic capture mode to set up a local capture buffer.
size
Optional. Specifies the size of the local capture buffer, in bytes.
Command Default
If you do not use this command, a sucessfully configured profile is not active.
Command Modes
Interface configuration
Command History
Release
Modification
12.3(4)T
This command was introduced.
12.2(25)S
This command was integrated into Cisco IOS Release 12.2(25)S.
12.4(11)T
This command was updated to incorporate the size keyword and size argument for IP traffic capture mode on the Cisco 1841, Cisco 2800 series, and Cisco 3800 series routers.
Usage Guidelines
After you configure at least one export profile, use the iptraffic-exportapplycommand
to activate IP traffic export on the specified ingress interface.
After you configure a capture profile, use the iptraffic-exportapplycommand
to activate IP traffic capture on the specified ingress interface, and to specify the size of the local capture buffer.
Examples
The following example shows how to apply the export profile “corp1” to interface Fast Ethernet 0/0.
After a profile is activated on the interface, a logging message such as the following will appear:
%RITE-5-ACTIVATE: Activated IP traffic export on interface FastEthernet 0/0.
After a profile is removed from the interface, a logging message such as the following will appear:
%RITE-5-DEACTIVATE: Deactivated IP traffic export on interface FastEthernet 0/0.
If you attempt to apply an incomplete profile to an interface, you will receive the following message:
Router(config-if)# ip traffic-export apply newone
RITE: profile newone has missing outgoing interface
Related Commands
Command
Description
iptraffic-exportprofile
Creates or edits an IP traffic export profile and enables the profile on an ingress interface.
traffic-export
Controls the operation of IP traffic capture mode.
ip traffic-export profile
To create or edit an IP traffic export profile or an IP traffic capture profile and enable the profile on an ingress interface, use the iptraffic-exportprofile command in global configuration mode. To remove an IP traffic export profile from your router configuration, use the no form of this command.
iptraffic-exportprofileprofile-name
noiptraffic-exportprofileprofile-name
Cisco 1841, Cisco 2800 Series, and Cisco 3800 Series Routers
This command was integrated into Cisco IOS Release 12.2(25)S.
12.4(11)T
This command was updated to incorporate the mode,capture,andexportkeywords on the Cisco 1841, Cisco 2800 series, and Cisco 3800 series routers.
Usage Guidelines
The iptraffic-exportprofile command allows you to begin a profile that can be configured to capture or export IP packets as they arrive on or leave from a selected router ingress interface.
When exporting IP packets, a designated egress interface exports IP packets out of the router. So, the router can export unaltered IP packets to a directly connected device.
When capturing IP packets, the packets are stored in local router memory. They may then be dumped to an external device.
IP Traffic Export Profiles
All exported IP traffic configurations are specified by profiles, which consist of RITE-related command-line interface (CLI) commands that control various attributes of both incoming and outgoing IP traffic. You can configure a router with multiple profiles. (Each profile must have a different name.) You can apply different profiles on different interfaces.
The two profiles to configure are:
Global configuration profile, which you configure using the iptraffic-exportprofilecommand.
Submode configuration profile, which you configure using any of the following RITE commands--bidirectional, incoming, interface, mac-address, and outgoing.
Use interface and mac-address commands to successfully create a profile. If you do not issue these commands, the user will receive a profile incomplete messages such as the following:
ip traffic-export profile newone
! No outgoing interface configured
! No destination mac-address configured
After you configure your profiles, you can apply the profiles to an interface with the iptraffic-exportapplyprofilecommand, which will activate it.
IP Traffic Capture Profiles
On the Cisco 1841, Cisco 2800 series, and Cisco 3800 series routers, you can also configure IP traffic capture. A captured IP traffic configuration is specified by a profile, which consists of RITE-related command-line interface (CLI) commands that control various attributes of both incoming and outgoing IP traffic.
The two profiles that you should configure are:
Global configuration profile, which you configure using the iptraffic-exportprofilemodecapturecommand.
Submode configuration profile, which you configure using any of the following RITE commands--bidirectional, incoming, length, and outgoing.
After you configure your profiles, you can apply the profiles to an interface with the iptraffic-exportapplyprofilecommand, which will activate it.
When the IP traffic capture profile is applied to an interface, use the traffic-export command to control the capture of the traffic.
Note
Cisco IOS Release 12.4(9)T and 12.4(15)T cannot capture outgoing router-generated Internet Control Message Protocol (ICMP) or IPsec traffic.
Examples
The following example shows how to configure the profile "corp1," which sends captured IP traffic to host "00a.8aab.90a0" at the interface "FastEthernet 0/1." This profile is also configured to export 1 in every 50 packets and to allow incoming traffic only from the access control list (ACL) "ham_ACL."
The following example shows how to configure the profile "corp2," which captures IP traffic and stores it in a local router memory buffer of 10,000,000 bytes. This profile also captures 1 in every 50 packets and allows incoming traffic only from the access control list (ACL) "ham_ACL."
Enables incoming and outgoing IP traffic to be exported or captured across a monitored interface.
incoming
Configures filtering for incoming export or capture traffic.
interface (RITE)
Specifies the outgoing interface for exporting traffic
iptraffic-exportapplyprofile
Applies an IP traffic export or IP traffic capture profile to a specific interface.
length
Specifies the length of the packet in capture mode.
mac-address
Specifies the Ethernet address of the destination host in traffic export.
outgoing
Configures filtering for outgoing export or capture traffic.
traffic-export interface
Controls the operation of IP traffic capture mode.
ip trigger-authentication (global)
To enable the automated part of double authentication at a device, use the iptrigger-authentication command in global configuration mode. To disable the automated part of double authentication, use the no form of this command.
(Optional) Specifies how frequently the local device sends a User Datagram Protocol (UDP) packet to the remote host to request the user’s username and password (or PIN). The default is 90 seconds. See “The Timeout Keyword” in the Usage Guidelines section for details.
portnumber
(Optional) Specifies the UDP port to which the local router should send the UPD packet requesting the user’s username and password (or PIN). The default is port 7500. See “The Port Keyword” in the Usage Guidelines section for details.
Command Default
The default timeout is 90 seconds, and the default port number is 7500.
Command Modes
Global configuration
Command History
Release
Modification
11.3 T
This command was introduced.
12.2(33)SRA
This command was integrated into Cisco IOS release 12.(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
Configure this command on the local device (router or network access server) that remote users dial in to. Use this command only if the local device has already been configured to provide double authentication; this command enables automation of the second authentication of double authentication.
The timeout Keyword
During the second authentication stage of double authentication--when the remote user is authenticated--the remote user must send a username and password (or PIN) to the local device. With automated double authentication, the local device sends a UDP packet to the remote user’s host during the second user-authentication stage. This UDP packet triggers the remote host to launch a dialog box requesting a username and password (or PIN).
If the local device does not receive a valid response to the UDP packet within a timeout period, the local device will send another UDP packet. The device will continue to send UDP packets at the timeout intervals until it receives a response and can authenticate the user.
By default, the UDP packet timeout interval is 90 seconds. Use the timeout keyword to specify a different interval.
(This timeout also applies to how long entries will remain in the remote host table; see the showiptrigger-authentication command for details.)
The port Keyword
As described in the previous section, the local device sends a UDP packet to the remote user’s host to request the user’s username and password (or PIN). This UDP packet is sent to UDP port 7500 by default. (The remote host client software listens to UDP port 7500 by default.) If you need to change the port number because port 7500 is used by another application, you should change the port number using the port keyword. If you change the port number you need to change it in both places--both on the local device and in the remote host client software.
Examples
The following example globally enables automated double authentication and sets the timeout to 120 seconds:
ip trigger-authentication timeout 120
Related Commands
Command
Description
iptrigger-authentication(interface)
Specifies automated double authentication at an interface.
showiptrigger-authentication
Displays the list of remote hosts for which automated double authentication has been attempted.
ip trigger-authentication (interface)
To specify automated double authentication at an interface, use the iptrigger-authenticationcommand in interface configuration mode. To turn off automated double authentication at an interface, use the no form of this command.
iptrigger-authentication
noiptrigger-authentication
Syntax Description
This command has no arguments or keywords.
Command Default
Automated double authentication is not enabled for specific interfaces.
Command Modes
Interface configuration
Command History
Release
Modification
11.3 T
This command was introduced.
12.2(33)SRA
This command was integrated into Cisco IOS release 12.(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
Configure this command on the local router or network access server that remote users dial into. Use this command only if the local device has already been configured to provide double authentication and if automated double authentication has been enabled with the iptrigger-authentication(global) command.
This command causes double authentication to occur automatically when users dial into the interface.
Examples
The following example turns on automated double authentication at the ISDN BRI interface BRI0:
interface BRI0
ip trigger-authentication
encapsulation ppp
ppp authentication chap
Related Commands
Command
Description
iptrigger-authentication(global)
Enables the automated part of double authentication at a device.
ip urlfilter alert
To enable URL filtering system alert messages, use the ipurlfilteralert command in global configuration mode. To disable the system alert, use the no form of this command.
ipurlfilteralert
[ vrfvrf-name ]
noipurlfilteralert
Syntax Description
vrfvrf-name
(Optional) Enables URL filtering system alert messages only for the specified Virtual Routing and Forwarding (VRF) interface.
Command Default
URL filtering messages are enabled.
Command Modes
Global configuration
Command History
Release
Modification
12.2(11)YU
This command was introduced.
12.2(15)T
This command was integrated into Cisco IOS Release 12.2(15)T.
12.3(14)T
The vrfvrf-namekeyword/argument pair was added.
Usage Guidelines
Use the ipurlfilteralert command to display system messages, such as a server entering allow mode, a server going down, or a URL that is too long for the lookup request.
Examples
The following example shows how to enable URL filtering alert messages:
ip inspect name test http urlfilter
ip urlfilter cache 5
ip urlfilter exclusive-domain permit .weapons.com
ip urlfilter exclusive-domain deny .nbc.com
ip urlfilter exclusive-domain permit www.cisco.com
ip urlfilter audit-trail
ip urlfilter alert
ip urlfilter server vendor websense 192.168.3.1
Afterward, system alert messages such as the following are displayed:
%URLF-3-SERVER_DOWN:Connection to the URL filter server 10.92.0.9 is down
This level three LOG_ERR-type message is displayed when a configured URL filter server (UFS) goes down. When this happens, the firewall will mark the configured server as secondary and try to bring up one of the other secondary servers and mark that server as the primary server. If there is no other server configured, the firewall will enter into allow mode and display the URLF-3-ALLOW_MODE message described.
%URLF-3-ALLOW_MODE:Connection to all URL filter servers are down and ALLOW MODE is OFF
This LOG_ERR type message is displayed when all UFSs are down and the system enters into allow mode.
Note
Whenever the system goes into allow mode (all filter servers are down), a periodic keepalive timer will be triggered that will try to bring up a server by opening a TCP connection.
%URLF-5-SERVER_UP:Connection to an URL filter server 10.92.0.9 is made, the system is returning from ALLOW MODE
This LOG_NOTICE-type message is displayed when the UFSs are detected as being up and the system is returning from allow mode.
%URLF-4-URL_TOO_LONG:URL too long (more than 3072 bytes), possibly a fake packet?
This LOG_WARNING-type message is displayed when the URL in a lookup request is too long; any URL longer than 3K will be dropped.
%URLF-4-MAX_REQ:The number of pending request exceeds the maximum limit <1000>
This LOG_WARNING-type message is displayed when the number of pending requests in the system exceeds the maximum limit and all further requests are dropped.
ip urlfilter allowmode
To turn on the default mode (allow mode) of the filtering algorithm, use the ipurlfilterallowmodecommand in global configuration mode. To disable the default mode, use the no form of this command.
ipurlfilterallowmode
[ on | off ]
[ vrfvrf-name ]
noipurlfilterallowmode
[ on | off ]
Syntax Description
on
(Optional) Allow mode is on.
off
(Optional) Allow mode is off.
vrfvrf-name
(Optional) Turns on the default mode of the filtering algorithm only for the specified Virtual Routing and Forwarding (VRF) interface.
Command Default
Allow mode is off.
Command Modes
Global configuration
Command History
Release
Modification
12.2(11)YU
This command was introduced.
12.2(15)T
This command was integrated into Cisco IOS Release 12.2(15)T.
12.3(14)T
The vrfvrf-namekeyword/argument pair was added.
Usage Guidelines
The system will go into allow mode when connections to all vendor servers (Websense or N2H2) are down. The system will return to normal mode when a connection to at least one web vendor server is up. Allow mode directs your system to forward or drop all packets on the basis of the configurable allow mode setting: if allow mode is on and the vendor servers are down, the HTTP requests will be allowed to pass; if allow mode is off and the vendor servers are down, the HTTP requests will be forbidden.
Examples
The following example shows how to enable allow mode on your system:
ip urlfilter allowmode on
Afterward, the following alert message will be displayed when the system goes into allow mode:
%URLF-3-ALLOW_MODE: Connection to all URL filter servers are down and ALLOW MODE if OFF
The following alert message will be displayed when the system returns from allow mode:
%URLF-5-SERVER_UP: Connection to an URL filter server 12.0.0.3 is made, the system is returning from allow mode
ip urlfilter audit-trail
To log messages into the syslog server or router, use the ipurlfilteraudit-trailcommand in global configuration mode. To disable this functionality, use the no form of this command.
ipurlfilteraudit-trail
[ vrfvrf-name ]
noipurlfilteraudit-trail
Syntax Description
vrfvrf-name
(Optional) Logs messages into the syslog server or router only for the specified Virtual Routing and Forwarding (VRF) interface.
Command Default
This command is disabled.
Command Modes
Global configuration
Command History
Release
Modification
12.2(11)YU
This command was introduced.
12.2(15)T
This command was integrated into Cisco IOS Release 12.2(15)T.
12.3(14)T
The vrfvrf-namekeyword/argument pair was added.
Usage Guidelines
Use the ipurlfilteraudit-trail command to log messages such as URL request status (allow or deny) into your syslog server.
Examples
The following example shows how to enable syslog message logging:
ip inspect name test http urlfilter
ip urlfilter cache 5
ip urlfilter exclusive-domain permit .weapons.com
ip urlfilter exclusive-domain deny .nbc.com
ip urlfilter exclusive-domain permit www.cisco.com
ip urlfilter audit-trail
ip urlfilter alert
ip urlfilter server vendor websense 209.165.202.130
Afterward, audit trail messages such as the following are displayed and logged into the log server:
%URLF-6-SITE_ALLOWED:Client 209.165.201.15:12543 accessed server 10.76.82.21:8080
This message is logged for each request whose destination IP address is found in the cache. It includes the source IP address, source port number, destination IP address, and destination port number. The URL is not logged in this case because the IP address of the request is found in the cache; thus, parsing the request and extracting the URL is a waste of time.
%URLF-4-SITE-BLOCKED: Access denied for the site ‘www.sports.com’; client 209.165.200.230:34557 server 209.165.201.2:80
This message is logged when a request finds a match against one of the blocked domains in the exclusive-domain list or the corresponding entry in the IP cache.
%URLF-6-URL_ALLOWED:Access allowed for URL http://www.N2H2.com/; client 209.165.200.230:54123 server 192.168.0.1:80
This message is logged for each URL request that is allowed by the vendor server (Websense or N2H2). It includes the allowed URL, source IP address, source port number, destination IP address, and destination port number. Longer URLs will be truncated to 300 bytes and then logged.
%URLF-6-URL_BLOCKED:Access denied URL http://www.google.com; client 209.165.200.230:54678 server 209.165.201.2:80
This message is logged for each URL request that is blocked by the vendor server. It includes the blocked URL, source IP address, source port number, destination IP address, and destination port number. Longer URLs will be truncated to 300 bytes and then logged.
ip urlfilter cache
To configure cache parameters, use the ipurlfiltercachecommand in global configuration mode. To clear the configuration, use the no form of this command.
ipurlfiltercachenumber
[ vrfvrf-name ]
noipurlfiltercachenumber
Syntax Description
number
Maximum number of destination IP addresses that can be cached into the cache table. The default value is 5000.
vrfvrf-name
(Optional) Configures cache parameters only for the specified Virtual Routing and Forwarding (VRF) interface.
Command Default
Maximum number of destination IP addresses is 5000.
The cache table is cleared out every 12 hours.
Command Modes
Global configuration
Command History
Release
Modification
12.2(11)YU
This command was introduced.
12.2(15)T
This command was integrated into Cisco IOS Release 12.2(15)T.
12.3(14)T
The vrfvrf-namekeyword/argument pair was added.
Usage Guidelines
The cache table consists of the most recently requested IP addresses and respective authorization status for each IP address.
The caching algorithm involves three parameters--the maximum number of IP addresses that can be cached, an idle time, and an absolute time. The algorithm also involves two timers--idle timer and absolute timer. The idle timer is a small periodic timer (1 minute) that checks to see whether the number of cached IP addresses in the cache table exceeds 80 percent of the maximum limit. If the cached IP addresses have exceeded 80 percent, it will start removing idle entries; if it has not exceeded 80 percent, it will quit and wait for the next cycle. The absolute timer is a large periodic timer (1 hour) that is used to remove all of the elapsed entries. (The age of an elapsed entry is greater than the absolute time.) An elapsed entry will also be removed during cache lookup.
The idle time value is fixed at 10 minutes. The absolute time value is taken from the vendor server look-up response, which is often greater than 15 hours. The absolute value for cache entries made out of exclusive-domains is 12 hours. The maximum number of cache entries is configurable by enabling the ipurlfiltercachecommand.
Note
The vendor server is not able to inform the Cisco IOS firewall of filtering policy changes in the database.
Examples
The following example shows how to configure the cache table to hold a maximum of five destination IP addresses:
ip inspect name test http urlfilter
ip urlfilter cache 5
ip urlfilter exclusive-domain permit .weapons.com
ip urlfilter exclusive-domain deny .nbc.com
ip urlfilter exclusive-domain permit www.cisco.com
ip urlfilter audit-trail
ip urlfilter alert
ip urlfilter server vendor websense 192.168.3.1
Related Commands
Command
Description
clearipurlfiltercache
Clears the cache table.
showipurlfiltercache
Displays the destination IP addresses that are cached into the cache table.
ip urlfilter exclusive-domain
To add or remove a domain name to or from the exclusive domain list so that the firewall does not have to send lookup requests to the vendor server, use the ipurlfilterexclusive-domaincommand in global configuration mode. To remove a domain name from the exclusive domain name list, use the no form of this command.
Permits all traffic destined for the specified domain name.
deny
Blocks all traffic destined for the specified domain name.
domain-name
Domain name that is added or removed from the exclusive domain name list; for example,
www.cisco.com
.
vrfvrf-name
(Optional) Adds or removes a domain name only for the specified Virtual Routing and Forwarding (VRF) interface.
Command Default
This command is not enabled.
Command Modes
Global configuration
Command History
Release
Modification
12.2(11)YU
This command was introduced.
12.2(15)T
This command was integrated into Cisco IOS Release 12.2(15)T.
12.3(14)T
The vrfvrf-namekeyword/argument pair was added.
Usage Guidelines
The ipurlfilterexclusive-domaincommand allows you to specify a list of domain names (exclusive domains) so that the firewall will not create a lookup request for the HTTP traffic that is destined for one of the domains in the exclusive list. Thus, you can avoid sending look-up requests to the web server for HTTP traffic that is destined for a host that is completely allowed to all users.
Flexibility when entering domain names is also provided; that is, the user can enter the complete domain name or a partial domain name.
Complete Domain Name
If the user adds a complete domain name, such as “www.cisco.com,” to the exclusive domain list, all HTTP traffic whose URLs are destined for this domain (such as www.cisco.com/news and www.cisco.com/index) will be excluded from the URL filtering policies of the vendor server (Websense or N2H2), and on the basis of the configuration, the URLs will be permitted or blocked (denied).
Partial Domain Name
If the user adds only a partial domain name to the exclusive domain list, such as “.cisco.com,” all URLs whose domain names end with this partial domain name (such as www.cisco.com/products and www.cisco.com/eng) will be excluded from the URL filtering policies of the vendor server (Websense or N2H2), and on the basis of the configuration, the URLs will be permitted or blocked (denied).
Examples
The following example shows how to add the complete domain name “www.
cisco.com
” to the exclusive domain name list. This configuration will block all traffic destined to the www.cisco.com domain.
ip urlfilter exclusive-domain deny www.cisco.com
The following example shows how to add the partial domain name “.
cisco.com
” to the exclusive domain name list. This configuration will permit all traffic destined to domains that end with .cisco.com.
ip urlfilter exclusive-domain permit .cisco.com
ip urlfilter max-request
To set the maximum number of outstanding requests that can exist at any given time, use the ipurlfiltermax-requestcommand in global configuration mode. To disable this function, use the no form of this command.
ipurlfiltermax-requestnumber
[ vrfvrf-name ]
noipurlfiltermax-requestnumber
Syntax Description
number
Maximum number of outstanding requests. The default value is 1000.
vrfvrf-name
(Optional) Sets the maximum number of outstanding requests only for the specified Virtual Routing and Forwarding (VRF) interface.
Command Default
Maximum number of requests is 1000.
Command Modes
Global configuration
Command History
Release
Modification
12.2(11)YU
This command was introduced.
12.2(15)T
This command was integrated into Cisco IOS Release 12.2(15)T.
12.3(14)T
The vrfvrf-namekeyword/argument pair was added.
Usage Guidelines
If the specified maximum number of outstanding requests is exceeded, new requests will be dropped.
Note
Allow mode is not considered because it should be used only when servers are down.
Examples
The following example shows how to configure the maximum number of outstanding requests to 950:
ip inspect name url_filter http
ip urlfilter max-request 950
Related Commands
Command
Description
ipinspectname
Defines a set of inspection rules.
ipurlfilterservervendor
Configures a vendor server for URL filtering.
ip urlfilter max-resp-pak
To configure the maximum number of HTTP responses that the firewall can keep in its packet buffer, use the ipurlfiltermax-resp-pakcommand in global configuration mode. To return to the default, use the no form of this command.
ipurlfiltermax-resp-paknumber
[ vrfvrf-name ]
noipurlfiltermax-resp-paknumber
Syntax Description
number
Maximum number of HTTP responses that can be stored in the packet buffer of the firewall. After the maximum number has been reached, the firewall will drop further responses. The default, and absolute maximum, value is 200.
vrfvrf-name
(Optional) Sets the maximum number of HTTP responses only for the specified Virtual Routing and Forwarding (VRF) interface.
Command Default
200 HTTP responses
Command Modes
Global configuration
Command History
Release
Modification
12.2(11)YU
This command was introduced.
12.2(15)T
This command was integrated into Cisco IOS Release 12.2(15)T.
12.3(14)T
The vrfvrf-namekeyword/argument pair was added.
Usage Guidelines
When an HTTP request arrives at a Cisco IOS firewall, the firewall forwards the request to the web server while simultaneously sending a URL look-up request to the vendor server (Websense or N2H2). If the vendor server reply arrives before the HTTP response, the firewall will know whether to permit or block the HTTP response; if the HTTP response arrives before the vendor server reply, the firewall will not know whether to allow or block the response, so the firewall will drop the response until it hears from the vendor server. Theipurlfiltermax-resp-pak command allows you to configure your firewall to store the HTTP responses in a buffer, which allows your firewall to store a maximum of 200 HTTP responses. Each response will remain in the buffer until an allow or deny message is received from the vendor server. If the vendor server reply allows the URL, the firewall will release the HTTP response from the buffer to the end user; if the vendor server reply denies the URL, the firewall will discard the HTTP response from the buffer and close the connection to both ends.
Examples
The following example shows how to configure your firewall to hold 150 HTTP responses:
ip urlfilter max-resp-pak 150
ip urlfilter server vendor
To configure a vendor server for URL filtering, use the ipurlfilterservervendorcommand in global configuration mode. To remove a server from your configuration, use the no form of this command.
(Optional) Port number that the vendor server listens on. The default port number is 15868.
timeoutseconds
(Optional) Length of time, in seconds, that the Cisco IOS firewall will wait for a response from the vendor server. The default timeout is 5 seconds.
retransmitnumber
(Optional) Number of times the Cisco IOS firewall will retransmit the request when a response does not arrive for the request. The default value is two times.
outside
(Optional) Vendor server will be deployed on the outside network.
vrfvrf-name
(Optional) Configures a vendor server for URL filtering only for the specified Virtual Routing and Forwarding (VRF) interface.
Command Default
A vendor server is not configured.
Command Modes
Global configuration
Command History
Release
Modification
12.2(11)YU
This command was introduced.
12.2(15)T
This command was integrated into Cisco IOS Release 12.2(15)T.
12.3(2)T
The outside keyword was added.
12.3(14)T
The vrfvrf-namekeyword/argument pair was added.
Usage Guidelines
Use the ipurlfilterservervendor command to configure a Websense or N2H2 server, which will interact with the Cisco IOS Firewall to filter HTTP requests on the basis of a specified policy--
global filtering, user- or group-based filtering, keyword-based filtering, category-based filtering, or customized filtering.
If the firewall has not received a response from the vendor server within the time specified in the timeoutseconds keyword and argument, the firewall will check the retransmitnumber keyword and argument configured for the vendor server. If the firewall has not exceeded the maximum retransmit tries allowed, it will resend the HTTP lookup request. If the firewall has exceeded the maximum retransmit tries allowed, it will delete the outstanding request from the queue and check the status of the allow mode value. The firewall will forward the request if the allow mode is on; otherwise, it will drop the request.
By default, URL lookup requests that are made to the vendor server contain non-natted client IP addresses because the vendor server is deployed on the inside network. The outside keyword allows the vendor server to be deployed on the outside network, thereby, allowing Cisco IOS software to send the natted IP address of the client in the URL lookup request.
Primary and Secondary Servers
When users configure multiple vendor servers, the firewall will use only one server at a time--the primary server; all other servers are called secondary servers. When the primary server becomes unavailable for any reason, it becomes a secondary server and one of the secondary servers becomes the primary server.
A firewall marks a primary server as down when sending a request to or receiving a response from the server fails. When a primary server goes down, the system will go to the beginning of the configured servers list and try to activate the first server on the list. If the first server on the list is unavailable, it will try the second server on the list; the system will keep trying to activate a server until it is successful or until it reaches the end of the server list. If the system reaches the end of the server list, it will set a flag indicating that all of the servers are down, and it will enter allow mode.
Examples
The following example shows how to configure the Websense server for URL filtering:
ip inspect name test http urlfilter
ip urlfilter cache 5
ip urlfilter exclusive-domain permit .weapons.com
ip urlfilter exclusive-domain deny .nbc.com
ip urlfilter exclusive-domain permit www.cisco.com
ip urlfilter audit-trail
ip urlfilter alert
ip urlfilter server vendor websense 192.168.3.1
Related Commands
Command
Description
ipurlfilterallowmode
Turns on the default mode (allow mode) of the filtering algorithm.
ipurlfiltermax-request
Sets the maximum number of outstanding requests that can exist at any given time.
ip urlfilter source-interface
To allow the URL filter to specify the interface whose IP address is used as the source IP address while a TCP connection is made to the URL filter server (Websense or N2H2), use the ipurlfiltersource-interfacecommand in global configuration mode. To disable the option, use the no form of this command.
The interface type that is used as the source IP address.
vrfvrf-name
(Optional) Specifies the Virtual Routing and Forwarding (VRF) interface.
Command Default
The URL filter to specify a source interface for TCP is not defined.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.3(14)T
This command was introduced.
Usage Guidelines
The ipurlfiltersource-interface command is used to define the source interface from which the URL filter request is sent. This command is recommended to be configured if the URL filter server can only be routed through certain interfaces on the router.
Examples
The following example shows that the URL filtering server is routed to the Ethernet interface type:
Router(config)# ip urlfilter source-interface ethernet
Related Commands
Command
Description
debugipurlfilter
Enables debug information of URL filter subsystems.
ip urlfilter truncate
To allow the URL filter to truncate long URLs to the server, use the ipurlfiltertruncatecommand in global configuration mode. To disable the truncating option, use the no form of this command.
Specifies that only the URL up to the script options is sent.
For example, if the entire URL is http://www.cisco.com/dev/xxx.cgi?when=now, only the URL through http://www.cisco.com/dev/xxx.cgi is sent (if the maximum supported URL length is not exceeded).
hostname
Specifies that only the hostname is sent.
For example, if the entire URL is http://www.cisco.com/dev/xxx.cgi?when=now, only http://www.cisco.com is sent.
vrfvrf-name
(Optional) Specifies the Virtual Routing and Forwarding (VRF) interface.
Command Default
URLs that are longer than the maximum supported length are not truncated, and the HTTP request is rejected.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.4(6)T
This command was introduced.
Usage Guidelines
If both the script-parameters and hostname keywords are configured, the script-parameters keyword takes precedence over the hostname keyword. If both the keywords are configured and the script parameters URL is truncated and the maximum supported URL length is exceeded, the URL is truncated up to the hostname.
Note
If both script-parameters and hostname keywords are configured, they must be on separate lines as shown in the “Examples” section. They cannot be combined in one line.
Examples
The following example shows that the URL is to be truncated up to the script options:
ip urlfilter truncate script-parameters
The following example shows that the URL is to be truncated up to the hostname:
ip urlfilter truncate hostname
Related Commands
Command
Description
debugipurlfilter
Enables debug information of URL filter subsystems.
ip urlfilter urlf-server-log
To enable the logging of system messages on the URL filtering server, use the ipurlfilterurlf-server-log command in global configuration mode. To disable the logging of system messages, use the no form of this command.
ipurlfilterurlf-server-log
[ vrfvrf-name ]
noipurlfilterurlf-server-log
Syntax Description
vrfvrf-name
(Optional) Enables the logging of system messages on the URL filtering server only for the specified Virtual Routing and Forwarding (VRF) interface.
Command Default
This command is disabled.
Command Modes
Global configuration
Command History
Release
Modification
12.2(11)YU
This command was introduced.
12.2(15)T
This command was integrated into Cisco IOS Release 12.2(15)T.
12.3(14)T
The vrfvrf-namekeyword/argument pair was added.
Usage Guidelines
Use the ipurlfilterurlf-server-log command to enable Cisco IOS to send a log request immediately after the URL lookup request. The firewall will not make a URL lookup request if the destination IP address is in the cache, but it will still make a log request to the server. (The log request contains the URL, hostname, source IP address, and the destination IP address.) The server records the log request into its own log server so your can view this information as necessary.
Examples
The following example shows how to enable system message logging on the URL filter server:
ip urlfilter urlf-server-log
ip verify drop-rate compute interval
To configure the interval of time between Unicast Reverse Path Forwarding (RPF) drop rate computations, use the ipverifydrop-ratecomputeintervalcommand in global configuration mode. To reset the interval to the default value, use the no form of this command.
ipverifydrop-ratecomputeintervalseconds
noipverifydrop-ratecomputeinterval
Syntax Description
seconds
Interval, in seconds, between Unicast RPF drop rate computations. The range is from 30 to 300. The default is 30.
Command Default
The drop rate is not computed.
Command Modes
Global configuration (config)
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
The configured value applies for the computation of all Unicast RPF drop rates (global and per interface).
The value for the compute interval must be less than or equal to the value configured using the ipverifydrop-ratecomputewindowcommand. If you configure the no form of the ipverifydrop-ratecomputeintervalcommand while the cipUrpfDropRateWindow value is configured to be less than the default compute interval value, the following message appears on the console:
“urpf drop rate window < interval”
This error message means the command was not executed. The compute interval remains at the configured value rather than changing to the default value.
Examples
The following example shows how to configure a compute interval of 45 seconds:
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.
ipverifyunicastnotificationthreshold
Configures the threshold value used to determine whether to send a Unicast RPF drop rate notification.
ip verify drop-rate compute window
To configure the interval of time during which the Unicast Reverse Path Forwarding (RPF) drop count is collected for the drop rate computation, use the ipverifydrop-ratecomputewindowcommand in global configuration mode. To reset the window to the default value, use the no form of this command.
ipverifydrop-ratecomputewindowseconds
noipverifydrop-ratecomputewindow
Syntax Description
seconds
Interval, in seconds, during which the Unicast RPF drop count is accumulated for the drop rate computation. The range is from 30 to 300. The default is 300.
Command Default
The drop rate is not calculated.
Command Modes
Global configuration (config)
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 sliding window that begins the configured number of seconds prior to the computation and ends with the Unicast RPF drop rate computation. The configured value applies for the computation of all Unicast RPF drop rates (global and per interface).
The value configured for the “compute window” must be greater than or equal to the value configured using the ipverifydrop-ratecomputeintervalcommand. If you configure the no form of the ipverifydrop-ratecomputewindowcommand while the cipUrpfDropRateInterval value is configured to be greater than the default compute window value, the following message appears on the console:
“urpf drop rate window < interval”
This error message means that the command was not executed. The compute window remains at the configured value rather than changing to the default value.
Examples
The following example shows how to configure a compute window of 60 seconds:
Configures the interval between Unicast RPF drop rate computations.
ipverifydrop-ratenotifyhold-down
Configures the minimum time between Unicast RPF drop rate notifications.
ipverifyunicastnotificationthreshold
Configures the threshold value used to determine whether to send a Unicast RPF drop rate notification.
ip verify drop-rate notify hold-down
To configure the minimum time between Unicast Reverse Path Forwarding (RPF) drop rate notifications, use the ipverifydrop-ratenotifyhold-downcommand in global configuration mode. To reset the hold-down time to the default value, use the no form of this command.
ipverifydrop-ratenotifyhold-downseconds
noipverifydrop-ratenotifyhold-down
Syntax Description
seconds
Minimum time, in seconds, between Unicast RPF drop rate notifications. The range is from 30 to 300. The default is 300.
Command Default
No notifications are sent.
Command Modes
Global configuration (config)
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
The configured value applies for the computation of all Unicast RPF drop rates (global and per interface).
Examples
The following example shows how to configure a notify hold-down time of 40 seconds:
Configures the interval of time between Unicast RPF drop rate computations.
ipverifydrop-ratecomputewindow
Configures the interval of time over which the Unicast RPF drop count used in the drop rate computation is collected.
ipverifyunicastnotificationthreshold
Configures the threshold value used to determine whether to send a Unicast RPF drop rate notification.
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
Theipverifyunicastsourcereachable-via command replaced this command, and the following keywords were added to the ipverifyunicastsourcereachable-via command: allow-default,allow-self-ping,rx, and any.
12.1(8a)E
The ipverifyunicastreverse-pathcommand was integrated into Cisco IOS Release 12.1(8a)E.
12.2(14)S
The ipverifyunicastreverse-pathcommand was integrated into Cisco IOS Release 12.2(14)S.
12.2(14)SX
The ipverifyunicastreverse-path command was integrated into Cisco IOS Release 12.2(14)SX.
12.2(33)SRA
The ipverifyunicastreverse-pathcommand 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 virtual-reassembly
To enable virtual fragment reassembly (VFR) on an interface, use the
ipvirtual-reassembly command in interface configuration mode. To disable VFR on an interface, use the
no form of this command.
(Optional) Maximum number of IP datagrams that can be reassembled at any given time. Default value: 16.
If the maximum value is reached, all fragments within the following fragment set is dropped and an alert message is logged to the syslog server.
max-fragmentsnumber
(Optional) Maximum number of fragments that are allowed per IP datagram (fragment set). Default value: 32.
If an IP datagram that is being reassembled receives more than the maximum allowed fragments, the IP datagram is dropped and an alert message is logged to the syslog server.
timeoutseconds
(Optional) Timeout value, from 0 to 60 seconds, for an IP datagram that is being reassembled. Default value: 3 seconds.
If an IP datagram does not receive all of the fragments within the specified time, the IP datagram (and all of its fragments) are dropped.
drop-fragments
(Optional) Enables the VFR to drop all fragments that arrive on the configured interface. By default, this function is disabled.
Command Default
VFR is not enabled.
Command Modes
Interface configuration
Command History
Release
Modification
12.3(8)T
This command was introduced.
IOS XE 3.2S
This command was introduced in Cisco IOS XE Release 3.2S.
Usage Guidelines
A buffer overflow attack can occur when an attacker continuously sends a large number of incomplete IP fragments, causing the firewall to lose time and memory while trying to reassemble the fake packets.
The
max-reassembliesnumberoption and themax-fragmentsnumberoption allow you to configure maximum threshold values to avoid a buffer overflow attack and to control memory usage.
In addition to configuring the maximum threshold values, each IP datagram is associated with a managed timer. If the IP datagram does not receive all of the fragments within the specified time (which can be configured through the
timeoutseconds option), the timer expires and the IP datagram (and all of its fragments) is dropped.
Note
If you are upgrading to Cisco IOS XE Release 3.4 or later and the configured timeout was set to more than 60 seconds, then your configured timeout value is cleared and reset to the default value of 3 seconds.
Automatically Enabling or Disabling VFR
VFR is designed to work with any feature that requires fragment reassembly (such as Cisco IOS Firewall and NAT). Currently, NAT enables and disables VFR internally; that is, when NAT is enabled on an interface, VFR is automatically enabled on that interface.
If more than one feature attempts to automatically enable VFR on an interface, then the VFR maintains a reference count to keep track of the number of features that have enabled VFR. When the reference count is reduced to zero, VFR is automatically disabled
Examples
The following example shows how to configure VFR on interfaces ethernet2/1, ethernet2/2, and serial3/0 to facilitate the firewall that is enabled in the outbound direction on interface serial3/0. In this example, the firewall rules that specify the list of LAN1 and LAN2 originating protocols (FTP, HTTP and SMTP) are to be inspected.
ip inspect name INTERNET-FW ftp
ip inspect name INTERNET-FW http
ip inspect name INTERNET-FW smtp!
!
interface Loopback0
ip address 10.0.1.1 255.255.255.255
!
interface Ethernet2/0
ip address 10.4.21.9 255.255.0.0
no ip proxy-arp
no ip mroute-cache
duplex half
no cdp enable
!
interface Ethernet2/1
description LAN1
ip address 10.4.0.2 255.255.255.0
ip virtual-reassembly
duplex half
!
interface Ethernet2/2
description LAN2
ip address 10.15.0.2 255.255.255.0
ip virtual-reassembly
duplex half
!
interface Ethernet2/3
no ip address
no ip mroute-cache
shutdown
duplex half
!
interface Serial3/0
description Internet
ip unnumbered Loopback0
encapsulation ppp
ip access-group 102 in
ip inspect INTERNET-FW out
ip virtual-reassembly
serial restart-delay 0
Related Commands
Command
Description
showipvirtual-reassembly
Displays the configuration and statistical information of the VFR on a given interface.
ip virtual-reassembly-out
To enable virtual fragment reassembly (VFR) on outbound interface traffic after it was disabled by the
noipvirtual-reassembly command, use the
ipvirtual-reassembly-out command in interface configuration mode. To disable VFR on outbound interface traffic, use the
no form of this command.
(Optional) Specifies the maximum number of IP datagrams that can be reassembled at any given time. Default value: 16.
If the maximum value is reached, all fragments within the following fragment set will be dropped and an alert message will be logged to the syslog server.
max-fragmentsnumber
(Optional) Specifies the maximum number of fragments that are allowed per IP datagram (fragment set). Default value: 32.
If an IP datagram that is being reassembled receives more than the maximum number of allowed fragments, the IP datagram will be dropped and an alert message will be logged to the syslog server.
timeoutseconds
(Optional) Specifies the timeout value, in seconds, for an IP datagram that is being reassembled. Default value: 3.
If an IP datagram does not receive all of the fragments within the specified time, the IP datagram (and all of its fragments) will be dropped.
drop-fragments
(Optional) Enables the VFR to drop all fragments that arrive on the configured interface. By default, this function is disabled.
Command Default
VFR on outbound interface traffic is not enabled.
Command Modes
Interface configuration (config-if)
Command History
Release
Modification
Cisco IOS Release XE 3.2S
This command was introduced.
Usage Guidelines
You can use this command to reenable VFR on outbound interface traffic after it was disabled by the
noipvirtual-reassembly command. If VFR is enabled on both inbound and outbound interface traffic, you can use the
noipvirtual-reassembly-outcommand to disable it on only the outbound interface traffic.
Examples
The following example shows how to manually enable VFR on outbound traffic on interfaces GigabitEthernet0/0/1, GigabitEthernet0/0/0.773, and Serial 3/0:
interface Loopback 0
ip address 10.0.1.1 255.255.255.255
!
interface GigabitEthernet0/0/1
description LAN1
ip address 10.4.0.2 255.255.255.0
ip virtual-reassembly-out
!
interface GigabitEthernet0/0/0.773
encapsulation dot1Q 773
description LAN2
ip address 10.15.0.2 255.255.255.0
ip virtual-reassembly-out
!
interface Serial 3/0
description Internet
ip unnumbered Loopback0
encapsulation ppp
ip virtual-reassembly-out
serial restart-delay 0
Related Commands
Command
Description
ipvirtual-reassembly
Enables VFR on an interface.
showipvirtual-reassembly
Displays the configuration and statistical information of the VFR on a given interface.
ip vrf
To define a VPN
routing and forwarding (VRF) instance and to enter VRF configuration mode, use
the
ipvrf command in global configuration mode. To
remove a VRF instance, use the
no form of this
command.
ipvrfvrf-name
noipvrfvrf-name
Syntax Description
vrf-name
Name
assigned to a VRF.
Command Default
No VRFs are
defined. No import or export lists are associated with a VRF. No route maps are
associated with a VRF.
Command Modes
Global
configuration (config)
Command History
Release
Modification
12.0(5)T
This
command was introduced.
12.0(21)ST
This
command was integrated into Cisco IOS Release 12.0(21)ST.
12.0(22)S
This
command was integrated into Cisco IOS Release 12.0(22)S.
12.2(14)S
This
command was integrated into Cisco IOS 12.2(14)S.
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.
Cisco IOS
XE Release 2.1
This
command was integrated into Cisco IOS XE Release 2.1.
15.1(1)SY
This
command was integrated into Cisco IOS Release 15.1(1)SY.
Cisco IOS XE 3.3SE
This command was implemented in Cisco IOS XE Release 3.3SE.
Usage Guidelines
The
ipvrfvrf-name
command creates a VRF instance named
vrf-name. To
make the VRF functional, a route distinguisher (RD) must be created using the
rdroute-distinguisher command in VRF configuration
mode. The
rdroute-distinguisher command creates the routing
and forwarding tables and associates the RD with the VRF instance named
vrf-name.
The
ipvrfdefault command can be used to configure a VRF
instance that is a NULL value until a default VRF name can be configured. This
is typically before any VRF related AAA commands are configured.
Examples
The following
example shows how to import a route map to a VRF instance named VPN1:
Router(config)# ip vrf vpn1
Router(config-vrf)# rd 100:2
Router(config-vrf)# route-target both 100:2
Router(config-vrf)# route-target import 100:1
Related Commands
Command
Description
ipvrfforwarding(interfaceconfiguration)
Associates a VRF with an interface or subinterface.
rd
Creates
routing and forwarding tables for a VRF and specifies the default route
distinguisher for a VPN.
ip vrf forwarding
To associate a Virtual Private Network (VPN) routing and forwarding (VRF) instance with a Diameter peer, use the ipvrfforwarding command in Diameter peer configuration mode. To enable Diameter peers to use the global (default) routing table, use the no form of this command.
ipvrfforwardingname
noipvrfforwardingname
Syntax Description
name
Name assigned to a VRF.
Command Default
Diameter peers use the global routing table.
Command Modes
Diameter peer configuration (config-dia-peer)
Command History
Release
Modification
12.4(9)T
This command was introduced.
12.2(54)SG
This command was integrated into Cisco IOS Release 12.2(54)SG.
Usage Guidelines
Use the ipvrfforwarding command to specify a VRF for a Diameter peer. If a VRF name is not configured for a Diameter server, the global routing table will be used.
If the VRF associated with the specified name has not been configured, the command will have no effect and this error message will appear: NoVRFfoundwiththenamename
.
Examples
The following example shows how to configure the VRF for a Diameter peer:
Router (config-dia-peer)# ip vrf forwardingdiam_peer_1
Related Commands
Command
Description
diameterpeer
Configures a Diameter peer and enters Diameter peer configuration submode.
ip vrf forwarding (server-group)
Configures the VRF reference of an AAA RADIUS or TACACS+ server group.
ip vrf forwarding (server-group)
To configure the Virtual Private Network (VPN) routing and forwarding (VRF) reference of an authentication, authorization, and accounting (AAA) RADIUS or TACACS+ server group, use the ipvrfforwarding command in server-group configuration mode. To enable server groups to use the global (default) routing table, use the no form of this command.
ipvrfforwardingvrf-name
noipvrfforwardingvrf-name
Syntax Description
vrf-name
Name assigned to a VRF.
Command Default
Server groups use the global routing table.
Command Modes
Server-group configuration (server-group)
Command History
Release
Modification
12.2(2)DD
This command was introduced on the Cisco 7200 series and Cisco 7401ASR.
12.2(4)B
This command was integrated into Cisco IOS Release 12.2(4)B.
12.2(13)T
This command was integrated into Cisco IOS Release 12.2(13)T.
12.3(7)T
Functionality was added for TACACS+ servers.
12.2(28)SB
This command was integrated into Cisco IOS Release 12.2(28)SB.
12.2(33)SRA1
This command was integrated into Cisco IOS Release 12.2(33)SRA1.
12.2(33)SXH
This command was integrated into Cisco IOS Release 12.2(33)SXH.
12.2(33)SXI
This command was integrated into Cisco IOS Release 12.2(33)SXI.
Usage Guidelines
Use the ipvrfforwarding command to specify a VRF for a AAA RADIUS or TACACS+ server group. This command enables dial users to utilize AAA servers in different routing domains.
Examples
The following example shows how to configure the VRF user to reference the RADIUS server in a different VRF server group:
aaa group server radius sg_global
server-private 172.16.0.0 timeout 5 retransmit 3
!
aaa group server radius sg_water
server-private 10.10.0.0 timeout 5 retransmit 3 key water
ip vrf forwarding water
The following example shows how to configure the VRF user to reference the TACACS+ server in the server group tacacs1:
aaa group server tacacs+tacacs1
server-private 10.1.1.1 port 19 key cisco
ip vrf forwarding cisco
ip tacacs source-interface Loopback0
ip vrf cisco
rd 100:1
interface Loopback0
ip address 10.0.0.2 255.0.0.0
ip vrf forwarding cisco
Related Commands
Command
Description
aaagroupserverradius
Groups different RADIUS server hosts into distinct lists and distinct methods.
iptacacssource-interface
Uses the IP address of a specified interface for all outgoing TACACS+ packets.
ipvrfforwarding(server-group)
Configures the VRF reference of an AAA RADIUS or TACACS+ server group.
server-private
Configures the IP address of the private RADIUS server for the group server.
ip wccp web-cache accelerated
To enable the hardware acceleration for WCCP version 1, use the
ipwccpweb-cacheaccelerated command in global configuration mode. To disable hardware acceleration, use the
no form of this command.
(Optional) Directs the router to use a specified multicast IP address for communication with the WCCP service group. See the “Usage Guidelines” section for additional information.
redirect-listaccess-list
(Optional) Directs the router to use an access list to control traffic that is redirected to this service group. See the “Usage Guidelines” section for additional information.
group-listaccess-list
(Optional) Directs the router to use an access list to determine which cache engines are allowed to participate in the service group. See the “Usage Guidelines” section for additional information.
passwordpassword
(Optional) Specifies a string that directs the router to apply MD5 authentication to messages received from the service group specified by the service name given. See the “Usage Guidelines” section for additional information.
Command Default
When this command is not configured, hardware acceleration for WCCPv1 is not enabled.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(17d)SXB
Support for this command on the Supervisor Engine 2 was extended to Cisco IOS Release 12.2(17d)SXB.
12.2(18)SXD1
This command was changed to support the Supervisor Engine 720.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
Usage Guidelines
The
group-addressgroup-address option requires a multicast address that is used by the router to determine which cache engine should receive redirected messages. This option instructs the router to use the specified multicast IP address to coalesce the “I See You” responses for the “Here I Am” messages that it has received on this group address. In addition, the response is sent to the group address. The default is for no
group-address to be configured, so that all “Here I Am” messages are responded to with a unicast reply.
The
redirect-listaccess-list option instructs the router to use an access list to control the traffic that is redirected to the cache engines of the service group that is specified by the service-name given. The
access-list argument specifies either a number from 1 to 99 to represent a standard or extended access list number, or a name to represent a named standard or extended access list. The access list itself specifies the traffic that is permitted to be redirected. The default is for no
redirect-list to be configured (all traffic is redirected).
The
group-listaccess-list option instructs the router to use an access list to control the cache engines that are allowed to participate in the specified service group. The
access-list argument specifies either a number from 1 to 99 to represent a standard access list number, or a name to represent a named standard access list. The access list specifies which cache engines are permitted to participate in the service group. The default is for no
group-list to be configured, so that all cache engines may participate in the service group.
The password can be up to seven characters. When you designate a password, the messages that are not accepted by the authentication are discarded. The password name is combined with the HMAC MD5 value to create security for the connection between the router and the cache engine.
Examples
The following example shows how to enable the hardware acceleration for WCCP version 1:
Router(config)# ip wccp web-cache accelerated
Related Commands
Command
Description
ipwccpversion
Specifies which version of WCCP to configure on your router.
ips signature update cisco
To initiate a one-time download of Cisco IOS Intrusion Prevention System (IPS) signatures from Cisco.com, use the ipssignatureupdatecisco command in Privileged EXEC mode.
Specifies the next signature file version from the current signature file on the router.
latest
Specifies the IOS IPS to search for the latest signature file.
signature
This argument specifies a specific signature file on Cisco.com.
usernamename
Defines the username for the automatic signature update function.
passwordpassword
Defines the password for the automatic signature update function.
Command Default
Privileged EXEC mode (#)
Command History
Release
Modification
15.1(1)T
This command was introduced.
Usage Guidelines
The ipssignatureupdateciscocommand is used to initiate a one-time download of IPS signatures from Cisco.com. If you want IPS signatures to be periodically downloaded from Cisco.com, use the ipipsauto-update command in global configuration mode and subsequently the cisco command in IPS-auto-update configuration mode to enable automatic signature updates from Cisco.com.
If the username and password is not specified, then the username and password that is specified in the IPS auto update configuration is used. A user name and password must be configured for updating signatures directly from Cisco.com.
Examples
The following example shows how to get the latest automatic signature update from Cisco.com:
Router# ips signature update cisco latest
Related Commands
Command
Description
ipipsauto-update
Enables automatic signature updates for Cisco IOS IPS.
cisco
Enables automatic signature updates from Cisco.com.
ipv4 (ldap)
To create an IPv4 address within a Lightweight Directory Access Protocol (LDAP) server address pool, use the ipv4 command in LDAP server configuration mode. To delete an IPv4 address within an LDAP server address pool, use the no form of this command.
ipv4ipv4-address
noipv4ipv4-address
Syntax Description
ipv4-address
IPv4 address of the LDAP server.
Command Default
No IPv4 addresses are created in the LDAP server address pool.
Command Modes
LDAP server configuration (config-ldap-server)
Command History
Release
Modification
15.1(1)T
This command was introduced.
Examples
The following example shows how to create an IPv4 address in an LDAP server address pool:
Router(config)# ldap server server1
Router(config-ldap-server)# ipv4 10.0.0.1
Related Commands
Command
Description
ldapserver
Defines an LDAP server and enters LDAP server configuration mode.
transportport(ldap)
Configures the transport protocol for establishing a connection with the LDAP server.
ipv6 crypto map
To enable an IPv6 crypto map on an interface, use the ipv6cryptomap command in interface configuration mode. To disable, use the no form of this command.
ipv6cryptomapmap-name
noipv6cryptomap
Syntax Description
map-name
Identifies the crypto map set.
Command Default
No IPv6 crypto maps are enabled on the interface.
Command Modes
Interface configuration (config-if)
Command History
Release
Modification
15.1(4)M
This command was introduced.
Usage Guidelines
This command differentiates IPv6 and IPv4 crypto maps.
Examples
The following example shows how to enable an IPv6 crypto map on an interface:
To generate an IPv6 cryptographically generated address (CGA) modifier for a specified Rivest, Shamir, and Adelman (RSA) key pair, use the
ipv6cgamodifierrsakeypaircommand in global configuration mode. To disable this function, use the
no form of this command.
ipv6cgamodifierrsakeypairkey-labelsec-levelsec-level-value
[ max-iterations value | cga-modifier ]
noipv6cgamodifierrsakeypair
Syntax Description
key-label
The name to be used for RSA key pair
sec-levelsec-level-value
Specifies the security level, which can be a number from 0 through 3. The most secure level is 1.
max-iterationsvalue
(Optional) Maximum iteration for modifier generation. The
value can be a number from 0 through 40000000.
cga-modifier
(Optional) An IPv6 address used as a CGA modifier.
Command Default
No CGA exists for an RSA key.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.4(24)T
This command was introduced.
15.1(3)T
The
max-iterations keyword and
cga-modifier argument were added.
Usage Guidelines
Use this command to generate the CGA modifier for a specified RSA key pair, which enables the key to be used by Secure Neighbor Discovery (SeND).
Once the RSA key is generated, the modifier must be generated as well, using the
ipv6cgamodifierrsakeypair command.
A CGA has a security parameter that determines its strength against brute-force attacks. The security level can be either 0 or 1.
Examples
The following example enables the specified key to be used by SeND (that is, generates the modifier):
Generates the CGA modifier for a specified RSA key.
ipv6 cga modifier rsakeypair (interface)
Binds a SeND key to a specified interface.
ipv6cgarsakeypair
Specifies which RSA key should be used on an interface.
ipv6 cga rsakeypair
To bind a Secure Neighbor Discovery (SeND) key to a specified interface, use the ipv6cgarsakeypaircommand in interface configuration mode. To disable this function, use the no form of this command.
ipv6cgarsakeypairkey-label
noipv6cgarsakeypair
Syntax Description
key-label
The name to be used for the Rivest, Shamir, and Adelman (RSA) key pair.
Command Default
A SeND key is not bound to an interface.
Command Modes
Interface configuration (config-if)
Command History
Release
Modification
12.4(24)T
This command was introduced.
Usage Guidelines
The SeND key is used to generate an IPv6 modifier for a specified Rivest, Shamir and Adelman (RSA) key pair. A SeND key must be bound to the interface prior to its being used in the ipv6address command. Use the ipv6cgarsakeypair command to bind a SeND key to a specified interface.
You can then use the ipv6address command to add the Cryptographic Addresses (CGA).
Examples
The following example binds a SeND key to Ethernet interface 0/0:
Specifies which RSA key should be used on an interface.
ipv6 inspect
To apply a set of inspection rules to an interface, use the ipv6inspect
command in
interface configuration mode. To remove the set of rules from the interface, use
the no form of this command.
ipv6inspectinspection-name
{ in | out }
noipv6inspectinspection-name
{ in | out }
Syntax Description
inspection-name
Identifies which set of inspection rules to apply.
in
Applies the inspection rules to inbound traffic.
out
Applies the inspection rules to outbound traffic.
Command Default
If no set of inspection rules is applied to an interface, no traffic will be inspected by Context-Based Access Control (CBAC).
Command Modes
Interface configuration
Command History
Release
Modification
12.3(7)T
This command was introduced.
Usage Guidelines
Use this command to apply a set of inspection rules to an interface.
Typically, if the interface connects to the external network, you apply the inspection rules to outbound traffic; alternately, if the interface connects to the internal network, you apply the inspection rules to inbound traffic.
If you apply the rules to outbound traffic, then return inbound packets will be permitted if they belong to a valid connection with existing state information. This connection must be initiated with an outbound packet.
If you apply the rules to inbound traffic, then return outbound packets will be permitted if they belong to a valid connection with existing state information. This connection must be initiated with an inbound packet.
Examples
The
following example applies a set of inspection rules named "outboundrules" to an external interface’s outbound traffic. This causes inbound IP traffic to be permitted only if the traffic is part of an existing session, and to be denied if the traffic is not part of an existing session.
interface serial0
ipv6 inspect outboundrules out
Related Commands
Command
Description
ipv6inspectname
Defines a set of inspection rules.
ipv6 inspect alert-off
To disable Context-based Access Control (CBAC) alert messages, which are displayed on the console, use the ipv6 inspect alert off command in global configuration mode. To enable Cisco IOS firewall alert messages, use the no form of this command.
ipv6inspectalert-off
noipv6inspectalert-off
Syntax Description
This command has no arguments or keywords.
Command Default
Alert messages are displayed.
Command Modes
Global configuration
Command History
Release
Modification
12.3(7)T
This command was introduced.
Examples
The
following example turns off CBAC alert messages:
ipv6 inspect alert-off
Related Commands
Command
Description
ipv6inspectaudittrail
Turns on CBAC audit trail messages, which will be displayed on the console after each CBAC session close.
ipv6inspectname
Applies a set of inspection rules to an interface.
ipv6 inspect audit trail
To turn on Context-based Access Control (CBAC) audit trail messages, which will be displayed on the console after each Cisco IOS firewall session closes, use the ipv6 inspect audit trail command in global configuration mode. To turn off Cisco IOS firewall audit trail message, use the no form of this command.
ipv6inspectaudittrail
noipv6inspectaudittrail
Syntax Description
This command has no arguments or keywords.
Command Default
Audit trail messages are not displayed.
Command Modes
Global configuration
Command History
Release
Modification
12.3(7)T
This command was introduced.
Usage Guidelines
Use this command to turn on CBAC audit trail messages.
Examples
The following example turns on CBAC audit trail messages:
ipv6 inspect audit trail
Afterward, audit trail messages such as the following are displayed:
%FW-6-SESS_AUDIT_TRAIL: tcp session initiator (192.168.1.13:33192) sent 22 bytes -- responder (192.168.129.11:25) sent 208 bytes
%FW-6-SESS_AUDIT_TRAIL: ftp session initiator 192.168.1.13:33194) sent 336 bytes -- responder (192.168.129.11:21) sent 325 bytes
These messages are examples of audit trail messages. To determine which protocol was inspected, refer to the responder’s port number. The port number follows the responder’s IP address.
Related Commands
Command
Description
ipv6inspectalert-off
Disables CBAC alert messages.
ipv6inspectname
Applies a set of inspection rules to an interface.
ipv6 inspect max-incomplete high
To define the number of existing half-open sessions that will cause the software to start deleting half-open sessions, use the ipv6 inspect max-incomplete high command in global configuration mode. To reset the threshold to the default of 500 half-open sessions, use the no form of this command.
ipv6inspectmax-incompletehighnumber
noipv6inspectmax-incompletehigh
Syntax Description
number
Specifies the rate of new unestablished TCP sessions that will cause the software to start deleting half-open sessions. The default is 500 half-open sessions. The value range is 1 through 4294967295.
Command Default
The default is 500 half-open sessions.
Command Modes
Global configuration
Command History
Release
Modification
12.3(7)T
This command was introduced.
Usage Guidelines
An unusually high number of half-open sessions (either absolute or measured as the arrival rate) could indicate that a denial-of-service attack is occurring. For
TCP, "half-open" means that the session has not reached the established state. For User Datagram Protocol, "half-open" means that the firewall has detected traffic from one direction only.
Context-based Access Control (CBAC) measures both the total number of existing half-open sessions and the rate of session establishment attempts. Both TCP and UDP half-open sessions are counted in the total number and rate measurements. Measurements are made once a minute.
When the number of existing half-open sessions rises above a threshold (the max-incompletehigh number), the software will delete half-open sessions as required to accommodate new connection requests. The software will continue to delete half-open requests as necessary, until the number of existing half-open sessions drops below another threshold (the max-incompletelow number).
The global value specified for this threshold applies to all TCP and UDP connections inspected by CBAC.
Examples
The following example causes the software to start deleting half-open sessions when the number of existing half-open sessions rises above 900, and to stop deleting half-open sessions when the number drops below 800:
ipv6 inspect max-incomplete high 900
ipv6 inspect max-incomplete low 800
Related Commands
Command
Description
ipv6inspectmax-incompletelow
Defines the number of existing half-open sessions that will cause the software to stop deleting half-open sessions.
ipv6inspectone-minutehigh
Defines the rate of new unestablished sessions that will cause the software to start deleting half-open sessions.
ipv6inspectone-minutelow
Defines the rate of new unestablished TCP sessions that will cause the software to stop deleting half-open sessions.
ipv6inspecttcpmax-incompletehost
Specifies the threshold and blocking time values for TCP host-specific denial-of-service detection and prevention.
ipv6 inspect max-incomplete low
To
define the number of existing half-open sessions that will cause the software to stop deleting half-open sessions, use the ipv6inspectmax-incompletelowcommand in
global configuration mode. To reset the threshold to the default of 400 half-open sessions, use the no form of this command.
ipv6inspectmax-incompletelownumber
noipv6inspectmax-incompletelow
Syntax Description
number
Specifies the number of existing half-open sessions that will cause the software to stop deleting half-open sessions
. The default is
400 half-open sessions. Value range is 1 through 4294967295.
Command Default
The default is 400 half-open sessions.
Command Modes
Global configuration
Command History
Release
Modification
12.3(7)T
This command was introduced.
Usage Guidelines
An unusually high number of half-open sessions (either absolute or measured as the arrival rate) could indicate that a denial-of-service attack is occurring. For TCP, "half-open" means that the session has not reached the established state. For User Datagram Protocol, "half-open" means that the firewall has detected traffic from one direction only.
Context-based Access Control (CBAC) measures both the total number of existing half-open sessions and the rate of session establishment attempts. Both TCP and UDP half-open sessions are counted in the total number and rate measurements. Measurements are made once a minute.
When the number of existing half-open sessions rises above a threshold (the max-incompletehigh number), the software will delete half-open sessions as required to accommodate new connection requests. The software will continue to delete half-open requests as necessary, until the number of existing half-open sessions drops below another threshold (the max-incompletelow number).
The global value specified for this threshold applies to all TCP and UDP connections inspected by CBAC.
Examples
The following example causes the software to start deleting half-open sessions when the number of existing half-open sessions rises above 900, and to stop deleting half-open sessions when the number drops below 800:
ipv6 inspect max-incomplete high 900
ipv6 inspect max-incomplete low 800
Related Commands
Command
Description
ipv6inspectmax-incompletehigh
Defines the number of existing half-open sessions that will cause the software to start deleting half-open sessions.
ipv6inspectone-minutehigh
Defines the rate of new unestablished sessions that will cause the software to start deleting half-open sessions.
ipv6inspectone-minutelow
Defines the rate of new unestablished TCP sessions that will cause the software to stop deleting half-open sessions.
ipv6inspecttcpmax-incompletehost
Specifies the threshold and blocking time values for TCP host-specific denial-of-service detection and prevention.
ipv6 inspect name
To define a set of ipv6 inspection rules, use the
ipv6inspectname command in global configuration mode. To remove the inspection rule for a protocol or to remove the entire set of inspection rules, use the
no form of this command.
ipv6inspectnameinspection-nameprotocol
[ alert
{ on | off } ]
[ audit-trail
{ on | off } ]
[ timeoutseconds ]
noipv6inspectnameinspection-name [protocol]
Syntax Description
inspection-name
Names the set of inspection rules. If you want to add a protocol to an existing set of rules, use the same inspection name as the existing set of rules.
protocol
A specified protocol. Possible protocol values are
icmp,
udp,
tcp, and
ftp. This value is optional in the
no version of this command.
alert {on |
off}
(Optional) For each inspected protocol, the generation of alert messages can be set be on or off. If no option is selected, alerts are generated based on the setting of the ipv6 inspect alert-off command.
audit-trail{on |
off}
(Optional) For each inspected protocol, the audit trail can be set on or off. If no option is selected, audit trail messages are generated based on the setting of the
ipv6inspectaudit-trail command.
timeoutseconds
(Optional) Specifies the number of seconds for a different idle timeout to override the global TCP or User Datagram Protocol (UDP) idle timeouts for the specified protocol.
This timeout overrides the global TCP and UPD timeouts but will not override the global Domain Name System (DNS) timeout.
timeout seconds (fragmentation)
Configures the number of seconds that a packet state structure remains active. When the
timeout value expires, the router drops the unassembled packet, freeing that structure for use by another packet. The default
timeout value is 1 second.
If this number is set to a value greater than 1 second, it will be automatically adjusted by the Cisco IOS software when the number of free state structures goes below certain thresholds: when the number of free states is less than 32, the timeout will be divided by 2. When the number of free states is less than 16, the timeout will be set to 1 second.
Command Default
No set of inspection rules is defined.
Command Modes
Global configuration
Command History
Release
Modification
12.3(7)T
This command was introduced.
12.3(11)T
FTP protocol support was added.
Usage Guidelines
To define a set of inspection rules, enter this command for each protocol that you want the Cisco IOS firewall to inspect, using the same
inspection-name. Give each set of inspection rules a unique
inspection-name, which should not exceed the 16-character limit. Define either one or two sets of rules per interface--you can define one set to examine both inbound and outbound traffic, or you can define two sets: one for outbound traffic and one for inbound traffic.
To define a single set of inspection rules, configure inspection for all the desired application-layer protocols, and for TCP, UDP, or Internet Control Message Protocol (ICMP) as desired. This combination of TCP, UDP, and application-layer protocols join together to form a single set of inspection rules with a unique name. (There are no application-layer protocols associated with ICMP.)
To remove the inspection rule for a protocol, use the
no form of this command with the specified inspection name and protocol. To remove the entire set of named inspection rules, use the
no form of this command with the specified inspection name.
In general, when inspection is configured for a protocol, return traffic entering the internal network will be permitted only if the packets are part of a valid, existing session for which state information is being maintained.
TCP and UDP Inspection
You can configure TCP and UDP inspection to permit TCP and UDP packets to enter the internal network through the firewall, even if the application-layer protocol is not configured to be inspected. However, TCP and UDP inspection do not recognize application-specific commands, and therefore might not permit all return packets for an application, particularly if the return packets have a different port number from the previous exiting packet.
Any application-layer protocol that is inspected will take precedence over the TCP or UDP packet inspection. For example, if inspection is configured for FTP, all control channel information will be recorded in the state table, and all FTP traffic will be permitted back through the firewall if the control channel information is valid for the state of the FTP session. The fact that TCP inspection is configured is irrelevant.
With TCP and UDP inspection, packets entering the network must exactly match an existing session: the entering packets must have the same source or destination addresses and source or destination port numbers as the exiting packet (but reversed). Otherwise, the entering packets will be blocked at the interface.
ICMP Inspection
An ICMP inspection session is on the basis of the source address of the inside host that originates the ICMP packet. Dynamic access control lists (ACLs) are created for return ICMP packets of the allowed types (destination unreachable, echo-reply, time-exceeded, and packet too big) for each session. There are no port numbers associated with an ICMP session, and the permitted IP address of the return packet is wild-carded in the ACL. The wild-card address is because the IP address of the return packet cannot be known in advance for time-exceeded and destination-unreachable replies. These replies can come from intermediate devices rather than the intended destination.
FTP Inspection
Cisco IOS Firewall uses layer 7 support for application modules such as FTP.
Cisco IOS IPv6 Firewall uses RFC 2428 to garner IPv6 addresses and corresponding ports. If an address other than an IPv6 address is present, the FTP data channel is not opened.
IPv6-specific port-to-application mapping (PAM) provides FTP inspection. PAM translates TCP or UDP port numbers into specific network services or applications. By mapping port numbers to network services or applications, an administrator can force firewall inspection on custom configurations not defined by well-known ports. PAM delivers with the standard well-known ports defined as defaults.
The table below describes the transport-layer and network-layer protocols.
Table 1 Protocol Keywords--Transport-Layer and Network-Layer Protocols
Protocol
Keyword
ICMP
icmp
TCP
tcp
UDP
udp
FTP
ftp
Use of the
timeout Keyword
If you specify a timeout for any of the transport-layer or application-layer protocols, the timeout will override the global idle timeout for the interface to which the set of inspection rules is applied.
If the protocol is TCP or a TCP application-layer protocol, the timeout will override the global TCP idle timeout. If the protocol is UDP or a UDP application-layer protocol, the timeout will override the global UDP idle timeout.
If you do not specify a timeout for a protocol, the timeout value applied to a new session of that protocol will be taken from the corresponding TCP or UDP global timeout value valid at the time of session creation.
The default ICMP timeout is deliberately short (10 seconds) due to the security hole that is opened by allowing ICMP packets with a wild-carded source address back into the inside network. The timeout will occur 10 seconds after the last outgoing packet from the originating host. For example, if you send a set of 10 ping packets spaced one second apart, the timeout will expire in 20 seconds or 10 seconds after the last outgoing packet. However, the timeout is not extended for return packets. If a return packet is not seen within the timeout window, the hole will be closed and the return packet will not be allowed in. Although the default timeout can be made longer if desired, it is recommended that this value be kept relatively short.
Examples
The following example causes the software to inspect TCP sessions and UDP sessions:
ipv6 inspect name myrules tcp
ipv6 inspect name myrules udp audit-trail on
Related Commands
Command
Description
ipv6inspectalert-off
Disables CBAC alert messages.
ipv6inspectaudittrail
Turns on CBAC audit trail messages, which will be displayed on the console after each CBAC session close.
ipv6 inspect one-minute high
To
define the rate of new unestablished sessions that will cause the software to start deleting half-open sessions, use the ipv6inspectone-minutehighcommand in
global configuration mode. To reset the threshold to the default of 500 half-open sessions, use the no form of this command.
ipv6inspectone-minutehighnumber
noipv6inspectone-minutehigh
Syntax Description
number
Specifies the rate of new unestablished TCP sessions that will cause the software to start deleting half-open sessions
. The default is
500 half-open sessions. Value range is 1 through 4294967295
Command Default
The default is 500 half-open sessions.
Command Modes
Global configuration
Command History
Release
Modification
12.3(7)T
This command was introduced.
Usage Guidelines
An unusually high number of half-open sessions (either absolute or measured as the arrival rate) could indicate that a denial-of-service attack is occurring. For TCP, "half-open" means that the session has not reached the established state. For User Datagram Protocol, "half-open" means that the firewall has detected traffic from one direction only.
Context-based Access Control (CBAC) measures both the total number of existing half-open sessions and the rate of session establishment attempts. Both TCP and UDP half-open sessions are included in the total number and rate measurements. Measurements are made once a minute.
When the rate of new connection attempts rises above a threshold (the one-minutehigh number), the software will delete half-open sessions as required to accommodate new connection attempts. The software will continue to delete half-open sessions as necessary, until the rate of new connection attempts drops below another threshold (the one-minutelow number). The rate thresholds are measured as the number of new session connection attempts detected in the last one-minute sample period. (The rate is calculated as an exponentially-decayed rate.)
The global value specified for this threshold applies to all TCP and UDP connections inspected by CBAC.
Examples
The following example causes the software to start deleting half-open sessions when more than 1000 session establishment attempts have been detected in the last minute, and to stop deleting half-open sessions when fewer than 950 session establishment attempts have been detected in the last minute:
ipv6 inspect one-minute high 1000
ipv6 inspect one-minute low 950
Related Commands
Command
Description
ipv6inspectone-minutelow
Defines the rate of new unestablished TCP sessions that will cause the software to stop deleting half-open sessions.
ipv6inspectmax-incompletehigh
Defines the number of existing half-open sessions that will cause the software to start deleting half-open sessions.
ipv6inspectmax-incompletelow
Defines the number of existing half-open sessions that will cause the software to stop deleting half-open sessions.
ipv6inspecttcpmax-incompletehost
Specifies the threshold and blocking time values for TCP host-specific denial-of-service detection and prevention.
ipv6 inspect one-minute low
To
define the rate of new unestablished TCP sessions that will cause the software to stop deleting half-open sessions, use the ipv6inspectone-minutelowcommand in
global configuration mode. To reset the threshold to the default of 400 half-open sessions, use the no form of this command.
ipv6inspectone-minutelownumber
noipv6inspectone-minutelow
Syntax Description
number
Specifies the rate of new unestablished TCP sessions that will cause the software to stop deleting half-open sessions
. The default is
400 half-open sessions. Value range is 1 through 4294967295.
Command Default
The default is 400 half-open sessions.
Command Modes
Global configuration
Command History
Release
Modification
12.3(7)T
This command was introduced.
Usage Guidelines
An unusually high number of half-open sessions (either absolute or measured as the arrival rate) could indicate that a denial-of-service attack is occurring. For TCP, "half-open" means that the session has not reached the established state. For User Datagram Protocol, "half-open" means that the firewall has detected traffic from one direction only.
Context-based Access Control (CBAC) measures both the total number of existing half-open sessions and the rate of session establishment attempts. Both TCP and UDP half-open sessions are included in the total number and rate measurements. Measurements are made once a minute.
When the rate of new connection attempts rises above a threshold (the one-minutehigh number), the software will delete half-open sessions as required to accommodate new connection attempts. The software will continue to delete half-open sessions as necessary, until the rate of new connection attempts drops below another threshold (the one-minutelow number). The rate thresholds are measured as the number of new session connection attempts detected in the last one-minute sample period. (The rate is calculated as an exponentially decayed rate.)
The global value specified for this threshold applies to all TCP and UDP connections inspected by CBAC.
Examples
The following example causes the software to start deleting half-open sessions when more than 1000 session establishment attempts have been detected in the last minute, and to stop deleting half-open sessions when fewer than 950 session establishment attempts have been detected in the last minute:
ipv6 inspect one-minute high 1000
ipv6 inspect one-minute low 950
Related Commands
Command
Description
ipv6inspectmax-incompletehigh
Defines the number of existing half-open sessions that will cause the software to start deleting half-open sessions.
ipv6inspectmax-incompletelow
Defines the number of existing half-open sessions that will cause the software to stop deleting half-open sessions.
ipv6inspectone-minutehigh
Defines the rate of new unestablished sessions that will cause the software to start deleting half-open sessions.
ipv6inspecttcpmax-incompletehost
Specifies the threshold and blocking time values for TCP host-specific denial-of-service detection and prevention.
ipv6 inspect routing-header
To specify whether Context-based Access Control (CBAC) should inspect packets containing an IPv6 routing header, use the ipv6inspectrouting-header command. To drop packets containing an IPv6 routing header, use the no form of this command.
ipv6inspectrouting-header
noipv6inspectrouting-header
Syntax Description
This command has no arguments or keywords.
Command Default
Packets containing IPv6 routing header are dropped.
Command Modes
Global configuration
Command History
Release
Modification
12.3(7)T
This command was introduced.
Usage Guidelines
An IPv6 source uses the routing header to list one or more intermediate nodes to be visited between the source and destination of the packet. The Cisco IOS firewall uses this header to retrieve the destination host address. Cisco IOS firewall will establish the appropriate inspection session based on the retrieved address from the routing header.
The originating node lists all intermediate nodes that the packet must traverse. The source and destination address pair in the IPv6 header identifies the hop between the originating node and the first intermediate node. Once the first intermediate node receives the packet, it looks for a routing header. If the routing header is present, the next intermediate node address is swapped with the destination address in the IPv6 header and the packet is forwarded to the next intermediate node. This sequence continues for each intermediate node listed in the routing until no more entries exist in the routing header. The last entry in the routing header is the final destination address.
Examples
The following example causes the software to inspect TCP sessions and UDP sessions:
ip inspect routing-header
Related Commands
Command
Description
ipv6inspectalert-off
Disables CBAC alert messages.
ipv6inspectaudittrail
Turns on CBAC audit trail messages, which will be displayed on the console after each CBAC session close.
ipv6inspectname
Applies a set of inspection rules to an interface.
ipv6 inspect tcp idle-time
To specify the TCP idle timeout (the length of time a TCP session will still be managed while there is no activity), use the
ipv6inspecttcpidle-time command in global configuration mode. To reset the timeout to the default of 3600 seconds (1 hour), use the
no form of this command.
ipv6inspecttcpidle-timeseconds
noipv6inspecttcpidle-time
Syntax Description
seconds
Specifies the length of time, in seconds, for which a TCP session will still be managed while there is no activity. The default is 3600 seconds (1 hour).
Command Default
The default is 3600 seconds (1 hour)
Command Modes
Global configuration
Command History
Release
Modification
12.3(7)T
This command was introduced.
Usage Guidelines
When the software detects a valid TCP packet that is the first in a session, and if Context-based Access Control (CBAC) inspection is configured for the packet’s protocol, the software establishes state information for the new session.
If the software detects no packets for the session for a time period defined by the TCP idle timeout, the software will not continue to manage state information for the session.
The global value specified for this timeout applies to all TCP sessions inspected by CBAC. This global value can be overridden for specific interfaces when you define a set of inspection rules with the
ipv6inspectname (global configuration) command.
Note
This command does not affect any of the currently defined inspection rules that have explicitly defined timeouts. Sessions created based on these rules still inherit the explicitly defined timeout value. If you change the TCP idle timeout with this command, the new timeout will apply to any new inspection rules you define or to any existing inspection rules that do not have an explicitly defined timeout. That is, new sessions based on these rules (having no explicitly defined timeout) will inherit the global timeout value.
Examples
The following example sets the global TCP idle timeout to 1800 seconds (30 minutes):
ipv6 inspect tcp idle-time 1800
The following example sets the global TCP idle timeout back to the default of 3600 seconds (one hour):
no ipv6 inspect tcp idle-time
Related Commands
Command
Description
ipv6inspectname
Defines a set of IPv6 inspection rules.
ipv6 inspect tcp max-incomplete host
To
specify threshold and blocking time values for TCP host-specific denial-of-service detection and prevention, use the ipv6inspecttcpmax-incompletehostcommand in
global configuration mode. To reset the threshold and blocking time to the default values, use the no form of this command.
Specifies how many half-open TCP sessions with the same host destination address can exist at a time, before the software starts deleting half-open sessions to the host. Use a number from 1 to 250. The default is 50 half-open sessions. Value range is 1 through 4294967295
block-time
Specifies blocking of connection initiation to a host. Value range is 0 through 35791.
minutes
Specifies how long the software will continue to delete new connection requests to the host. The default is 0 minutes.
Command Default
The default is 50 half-open sessions and 0 minutes.
Command Modes
Global configuration
Command History
Release
Modification
12.3(7)T
This command was introduced.
Usage Guidelines
An unusually high number of half-open sessions with the same destination host address could indicate that a denial-of-service attack is being launched against the host. For TCP, "half-open" means that the session has not reached the established state.
Whenever the number of half-open sessions with the same destination host address rises above a threshold (the max-incompletehost number), the software will delete half-open sessions according to one of the following methods:
If the block-timeminutes timeout is 0 (the default):
The software will delete the oldest existing half-open session for the host for every new connection request to the host. This ensures that the number of half-open sessions to a given host will never exceed the threshold.
If the block-timeminutes timeout is greater than 0:
The software will delete all existing half-open sessions for the host, and then block all new connection requests to the host. The software will continue to block all new connection requests until the block-time expires.
The software also sends syslog messages whenever the max-incompletehost number is exceeded and when blocking of connection initiations to a host starts or ends.
The global values specified for the threshold and blocking time apply to all TCP connections inspected by Context-based Access Control (CBAC).
Examples
The following example changes the max-incompletehost number to 40 half-open sessions, and changes the block-time timeout to 2 minutes (120 seconds):
The following example resets the defaults (50 half-open sessions and 0 seconds):
no ipv6 inspect tcp max-incomplete host
Related Commands
Command
Description
ipv6inspectmax-incompletehigh
Defines the number of existing half-open sessions that will cause the software to start deleting half-open sessions.
ipv6inspectmax-incompletelow
Defines the number of existing half-open sessions that will cause the software to stop deleting half-open sessions.
ipv6inspectone-minutehigh
Defines the rate of new unestablished sessions that will cause the software to start deleting half-open sessions.
ipv6inspectone-minutelow
Defines the rate of new unestablished TCP sessions that will cause the software to stop deleting half-open sessions.
ipv6 inspect tcp synwait-time
To
define how long the software will wait for a TCP session to reach the established state before dropping the session, use the ipv6inspecttcpsynwait-timecommand in
global configuration mode. To reset the timeout to the default of 30 seconds, use the no form of this command.
ipv6inspecttcpsynwait-timeseconds
noipv6inspecttcpsynwait-time
Syntax Description
seconds
Specifies how long, in seconds, the software will wait for a TCP session to reach the established state before dropping the session
. The default is
30 seconds. Value range is 1 through 2147483
Command Default
The default is 30 seconds.
Command Modes
Global configuration
Command History
Release
Modification
12.3(7)T
This command was introduced.
Usage Guidelines
Use this command to define how long Cisco IOS software will wait for a TCP session to reach the established state before dropping the session. The session is considered to have reached the established state after the session’s first SYN bit is detected.
The global value specified for this timeout applies to all TCP sessions inspected by Context-based Access Control (CBAC).
Examples
The following example changes the "synwait" timeout to 20 seconds:
ipv6 inspect tcp synwait-time 20
The following example changes the "synwait" timeout back to the default (30 seconds):
no ipv6 inspect tcp synwait-time
Related Commands
Command
Description
ipv6inspectudpidle-time
Specifies the User Datagram Protocol idle timeout (the length of time for which a UDP "session" will still be managed while there is no activity).
ipv6 inspect udp idle-time
To
specify the User Datagram Protocol idle timeout (the length of time for which a UDP "session" will still be managed while there is no activity), use the ipv6inspectudpidle-time
command in
global configuration mode. To reset the timeout to the default of 30 seconds, use the no form of this command.
ipv6inspectudpidle-timeseconds
noipv6inspectudpidle-time
Syntax Description
seconds
Specifies the length of time a UDP "session" will still be managed while there is no activity
. The default is
30 seconds. Value range is 1 through 2147483
Command Default
The default is 30 seconds.
Command Modes
Global configuration
Command History
Release
Modification
12.3(7)T
This command was introduced.
Usage Guidelines
When the software detects a valid UDP packet, if Context-based Access Control (CBAC) inspection is configured for the packet’s protocol, the software establishes state information for a new UDP "session." Because UDP is a connectionless service, there are no actual sessions, so the software approximates sessions by examining the information in the packet and determining if the packet is similar to other UDP packets (for example, it has similar source or destination addresses) and if the packet was detected soon after another similar UDP packet.
If the software detects no UDP packets for the UDP session for the a period of time defined by the UDP idle timeout, the software will not continue to manage state information for the session.
The global value specified for this timeout applies to all UDP sessions inspected by CBAC. This global value can be overridden for specific interfaces when you define a set of inspection rules with the ipv6inspectnamecommand.
Note
This command does not affect any of the currently defined inspection rules that have explicitly defined timeouts. Sessions created based on these rules still inherit the explicitly defined timeout value. If you change the UDP idle timeout with this command, the new timeout will apply to any new inspection rules you define or to any existing inspection rules that do not have an explicitly defined timeout. That is, new sessions based on these rules (having no explicitly defined timeout) will inherit the global timeout value.
Examples
The following example sets the global UDP idle timeout to 120 seconds (2 minutes):
ipv6 inspect udp idle-time 120
The following example sets the global UDP idle timeout back to the default of 30 seconds:
no ipv6 inspect udp idle-time
ipv6 nd inspection
To apply the Neighbor Discovery Protocol (NDP) Inspection feature, use the
ipv6ndinspection command in interface configuration mode. To remove the NDP Inspection feature, use the
no form of this command.
(Optional) Applies the ND Inspection feature to a VLAN on the interface.
add
(Optional) Adds a VLAN to be inspected.
except
(Optional) Inspects all VLANs except the one specified.
none
(Optional) Specifies that no VLANs are inspected.
remove
(Optional) Removes the specified VLAN from NDP inspection.
all
(Optional) Inspects NDP traffic from all VLANs on the port.
vlan-id
(Optional) A specific VLAN on the interface. More than one VLAN can be specified. The VLAN number that can be used is from 1 to 4094.
Command Default
All NDP messages are inspected. Secure Neighbor Discovery (SeND) options are ignored. Neighbors are probed based on the criteria defined in the Neighbor Tracking feature. Per-port IPv6 address limit enforcement is disabled. Layer 2 header source MAC address validations are disabled. Per-port rate limiting of the NDP messages in software is disabled.
Command Modes
Interface configuration (config-if)
Command History
Release
Modification
12.2(50)SY
This command was introduced.
15.0(2)SE
This command was integrated into Cisco IOS Release 15.0(2)SY.
Cisco IOS XE Release 3.2SE
This command was integrated into Cisco IOS XE Release 3.2SE.
Usage Guidelines
The
ipv6ndinspection command applies the NDP Inspection feature on a specified interface. If you enable the optional
attach-policy or
vlan keywords, NDP traffic is inspected by policy or by VLAN. If no VLANs are specified, NDP traffic from all VLANs on the port is inspected (which is equivalent to using the
vlanall keywords).
If no policy is specified in this command, the default criteria are as follows:
All NDP messages are inspected.
SeND options are ignored.
Neighbors are probed based on the criteria defined in neighbor tracking feature.
Per-port IPv6 address limit enforcement is disabled.
Layer 2 header source MAC address validations are disabled.
Per-port rate limiting of the NDP messages in software is disabled.
If a VLAN is specified, its parameter is either a single VLAN number from 1 to 4094 or a range of VLANs described by two VLAN numbers, the lesser one first, separated by a dash (for example,
vlan1-100,200,300-400). Do not enter any spaces between comma-separated VLAN parameters or in dash-specified ranges.
Examples
The following example enables NDP inspection on a specified interface:
Router(config-if)# ipv6 nd inspection
ipv6 nd inspection policy
To define the neighbor discovery (ND) inspection policy name and enter ND inspection policy configuration mode, use the
ipv6ndinspection command in ND inspection configuration mode. To remove the ND inspection policy, use the
no form of this command.
This command was integrated into Cisco IOS Release 15.0(2)SE.
Cisco IOS XE Release 3.2SE
This command was integrated into Cisco IOS XE Release 3.2SE.
Usage Guidelines
The
ipv6ndinspectionpolicy command defines the ND inspection policy name and enters ND inspection policy configuration mode. Once you are in ND inspection policy configuration mode, you can use any of the following commands:
device-role
drop-unsecure
limitaddress-count
sec-levelminimum
tracking
trusted-port
validatesource-mac
Examples
The following example defines an ND policy name as policy1:
Specifies the role of the device attached to the port.
drop-unsecure
Drops messages with no or invalid options or an invalid signature.
limitaddress-count
Limits the number of IPv6 addresses allowed to be used on the port.
sec-levelminimum
Specifies the minimum security level parameter value when CGA options are used.
tracking
Overrides the default tracking policy on a port.
trusted-port
Configures a port to become a trusted port.
validatesource-mac
Checks the source MAC address against the link-layer address.
ipv6 nd prefix framed-ipv6-prefix
To add the prefix in a received RADIUS framed IPv6 prefix attribute to the interface’s neighbor discovery prefix queue, use the ipv6ndprefixframed-ipv6-prefixcommand in interface configuration mode. To disable this feature, use the no form of this command.
ipv6ndprefixframed-ipv6-prefix
noipv6ndprefixframed-ipv6-prefix
Syntax Description
This command has no arguments or keywords.
Command Default
Prefix is sent in the router advertisements (RAs).
Command Modes
Interface configuration
Command History
Release
Modification
12.3(14)T
This command was introduced.
12.2(18)SXE
This command was integrated into Cisco IOS Release 12.2(18)SXE.
12.2(33)SRA
This command was integrated into Cisco IOS Release 12.2(33)SRA.
Usage Guidelines
Use the ipv6ndprefixframed-ipv6-prefixcommand to add the prefix in a received RADIUS framed IPv6 prefix attribute to the interface’s neighbor discovery prefix queue and include it in RAs sent on the interface’s link. By default, the prefix is sent in RAs. If the prefix in the attribute should be used by other applications such as the Dynamic Host Configuration Protocol (DHCP) for IPv6 server, administrators can disable the default behavior with the no form of the command.
Examples
The following example adds the prefix in a received RADIUS framed IPv6 prefix attribute to the interface’s neighbor discovery prefix queue:
ipv6 nd prefix framed-ipv6-prefix
ipv6 nd raguard attach-policy
To apply the IPv6 router advertisement (RA) guard feature on a specified interface, use the
ipv6ndraguardattach-policy command in interface configuration mode.
(Optional) Applies the IPv6 RA guard feature to a VLAN on the interface.
add
Adds a VLAN to be inspected.
except
All VLANs are inspected except the one specified.
none
No VLANs are inspected.
remove
Removes the specified VLAN from RA guard inspection.
all
ND traffic from all VLANs on the port is inspected.
vlan
(Optional) A specific VLAN on the interface. More than one VLAN can be specified (vlan1,
vlan2,
vlan3...). The range of available VLAN numbers is from 1 through 4094.
Command Default
An IPv6 RA guard policy is not configured.
Command Modes
Interface configuration (config-if)
Command History
Release
Modification
12.2(50)SY
This command was introduced.
15.2(4)S
This command was integrated into Cisco IOS Release 15.2(4)S.
15.0(2)SE
This command was integrated into Cisco IOS Release 15.0(2)SE.
Cisco IOS XE Release 3.2SE
This command was integrated into Cisco IOS XE Release 3.2SE.
Usage Guidelines
If no policy is specified using the
policy-name argument, the port device role is set to host and all inbound router traffic (for example, RA and redirect messages) is blocked.
If no VLAN is specified (which is equal to entering the
vlanall keywords after the
policy-name argument), RA guard traffic from all VLANs on the port is analyzed.
If specified, the VLAN parameter is either a single VLAN number from 1 through 4094 or a range of VLANs described by two VLAN numbers, the lesser one first, separated by a dash. Do not enter any spaces between comma-separated vlan parameters or in dash-specified ranges; for example, vlan 1-100,200,300-400.
Examples
In the following example, the IPv6 RA guard feature is applied on GigabitEthernet interface 0/0:
To define the router advertisement (RA) guard policy name and enter RA guard policy configuration mode, use the
ipv6ndraguardpolicy command in global configuration mode.
ipv6ndraguardpolicypolicy-name
Syntax Description
policy-name
IPv6 RA guard policy name.
Command Default
An RA guard policy is not configured.
Command Modes
Global configuration (config)#
Command History
Release
Modification
12.2(50)SY
This command was introduced.
15.2(4)S
This command was integrated into Cisco IOS Release 15.2(4)S.
15.0(2)SE
This command was integrated into Cisco IOS Release 15.0(2)SE.
Cisco IOS XE Release 3.2SE
This command was integrated into Cisco IOS XE Release 3.2SE.
Usage Guidelines
Use the
ipv6ndraguardpolicy command to configure RA guard globally on a router. Once the device is in ND inspection policy configuration mode, you can use any of the following commands:
device-role
drop-unsecure
limitaddress-count
sec-levelminimum
trusted-port
validatesource-mac
After IPv6 RA guard is configured globally, you can use the
ipv6ndraguardattach-policy command to enable IPv6 RA guard on a specific interface.
Examples
The following example shows how to define the RA guard policy name as policy1 and place the device in policy configuration mode:
Specifies the role of the device attached to the port.
drop-unsecure
Drops messages with no or invalid options or an invalid signature.
ipv6ndraguardattach-policy
Applies the IPv6 RA guard feature on a specified interface.
limitaddress-count
Limits the number of IPv6 addresses allowed to be used on the port.
sec-levelminimum
Specifies the minimum security level parameter value when CGA options are used.
trusted-port
Configures a port to become a trusted port.
validatesource-mac
Checks the source MAC address against the link layer address.
ipv6 nd secured certificate-db
To configure the maximum number of entries in an IPv6 Secure Neighbor Discovery (SeND) certificate database, use the ipv6ndsecuredcertificate-dbcommand in global configuration mode. To disable any maximum number of entries set for a SeND certificate database, use the no form of this command.
Specifies the maximum number of entries in the certificate database. The range is from 1 to 1000.
Command Default
No SeND certificate database is configured.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.4(24)T
This command was introduced.
Usage Guidelines
This command allows you to set up a maximum size for the certificate database (DB), to protect against denial of service (DoS) certificate flooding. When the limit is reached, new certificates are dropped.
The certificate DB is relevant on a router in host mode only, because it stores certificates received from routers.
Examples
The following example configures a SeND certificate database with a maximum number of 500 entries:
Enables SeND security mode on a specified interface.
ipv6ndsecuredkey-length
Configures SeND key-length options.
ipv6ndsecuredtimestamp
Configures the SeND time stamp.
ipv6ndsecuredtimestamp-db
Configures the maximum number of entries that did not reach the destination in a SeND time-stamp database.
ipv6 nd secured full-secure
To enable the secure mode for IPv6 Secure Neighbor Discovery (SeND) on a router, use the ipv6ndsecuredfull-securecommand in global configuration mode. To disable SeND security mode, use the no form of this command.
ipv6ndsecuredfull-secure
noipv6ndsecuredfull-secure
Syntax Description
This command has no arguments or keywords.
Command Default
Non-SeND neighbor discovery messages are accepted by the router.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.4(24)T
This command was introduced.
Usage Guidelines
The ipv6ndsecuredfull-secure command in global configuration mode allows you to configure the router to accept or reject non-SeND neighbor discovery messages. If this command is enabled, non-SeND messages are rejected by the specified router.
Examples
The following example enables SeND security mode on a router:
Router(config)# ipv6 nd secured full-secure
Related Commands
Command
Description
ipv6ndsecuredfull-secure(interfaceconfiguration)
Enables SeND security mode on a specified interface.
ipv6 nd secured full-secure (interface)
To enable the secure mode for IPv6 Secure Neighbor Discovery (SeND) on a specified interface, use the ipv6ndsecuredfull-securecommand in interface configuration mode. To provide the co-existence mode for secure and nonsecure neighbor discovery messages on an interface, use the no form of this command.
ipv6ndsecuredfull-secure
noipv6ndsecuredfull-secure
Syntax Description
This command has no arguments or keywords.
Command Default
Non-SeND messages are accepted by the interface.
Command Modes
Interface configuration (config-if)
Command History
Release
Modification
12.4(24)T
This command was introduced.
Usage Guidelines
The ipv6ndsecuredfull-secure command in interface configuration mode allows you to configure a specified interface to accept or reject non-SeND neighbor discovery messages. If this command is enabled, non-SeND messages are rejected by the interface. If this command is not enabled, secure and nonsecure neighbor discovery messages can coexist on the same interface.
Examples
The following example enables SeND security mode on an interface:
To configure IPv6 Secure Neighbor Discovery (SeND) key-length options, use the ipv6ndsecuredkey-lengthcommand in global configuration mode. To disable the key length, use the no form of this command.
ipv6ndsecuredkey-length
[ [ minimum | maximum ]
value ]
noipv6ndsecuredkey-length
Syntax Description
minimum value
(Optional) Sets the minimum key-length value, which should be at least 384 bits. The range is from 384 to 2048 bits, and the default key-length value is 1024 bits.
maximum value
(Optional) Sets the maximum key-length value. The range is from 384 to 2048 bits, and the default key-length value is 1024 bits.
Command Default
The key length is 1024 bits.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.4(24)T
This command was introduced.
Usage Guidelines
When used by SeND, the key length is checked against the key-length value, as set in the ipv6ndsecuredkey-length command. When packets are received from a neighbor with a key length that is out of the configured boundaries, the packets are treated as unsecure.
Examples
The following example sets the minimum key-length value to 512 bits and the maximum value to 1024 bits:
Configures the maximum number of entries in a SeND certificate database.
ipv6ndsecuredfull-secure(globalconfiguration)
Enables SeND security mode on a specified router.
ipv6ndsecuredfull-secure(interfaceconfiguration)
Enables SeND security mode on a specified interface.
ipv6ndsecuredtimestamp
Configures the SeND time stamp.
ipv6ndsecuredtimestamp-db
Configures the maximum number of entries in a SeND time-stamp database.
ipv6 nd secured sec-level
To configure the minimum security value that IPv6 Secure Neighbor Discovery (SeND) will accept from its peer, use the
ipv6ndsecuredsec-levelcommand in global configuration mode. To disable the security level, use the
no form of this command.
ipv6ndsecuredsec-level
[ minimumvalue ]
noipv6ndsecuredsec-level
Syntax Description
minimum
value
(Optional) Sets the minimum security level, which is a value from 0 through 7. The default security level is 1.
Command Default
The default security level is 1.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.4(24)T
This command was introduced.
Usage Guidelines
The
ipv6ndsecuredsec-level command allows the user to configure the minimum security value the router will accept from its peer.
Examples
The following example sets the minimum security level to 2:
Router(config)# ipv6 nd secured sec-level 2
Related Commands
Command
Description
ipv6ndsecuredcertificate-db
Configures the maximum number of entries in a SeND certificate database.
ipv6ndsecuredfull-secure(globalconfiguration)
Enables SeND security mode on a specified router.
ipv6ndsecuredfull-secure(interfaceconfiguration)
Enables SeND security mode on a specified interface.
ipv6ndsecuredkey-length
Configures SeND key-length options.
ipv6ndsecuredtimestamp
Configures the SeND time stamp.
ipv6ndsecuredtimestamp-db
Configures the maximum number of unreached entries in a SeND time-stamp database.
ipv6 nd secured timestamp
To configure the IPv6 Secure Neighbor Discovery (SeND) time stamp, use the ipv6ndsecuredtimestampcommand in interface configuration mode. To return to the default settings, use the no form of this command.
ipv6ndsecuredtimestamp
{ deltavalue | fuzzvalue }
noipv6ndsecuredtimestamp
Syntax Description
deltavalue
Specifies the maximum time difference accepted between the sender and the receiver. Default value is 300 seconds.
fuzzvalue
Specifies the maximum age of the message, when the delta is taken into consideration; that is, the amount of time, in seconds, that a packet can arrive after the delta value before being rejected. Default value is 1 second.
Command Default
Default time-stamp values are used.
Command Modes
Interface configuration (config-if)
Command History
Release
Modification
12.4(24)T
This command was introduced.
Usage Guidelines
The ipv6ndsecuredtimestamp command configures the amount of time the router waits before it accepts or rejects packets it has received.
Examples
The following example configures the SeND time stamp to be 600 seconds:
Configures the maximum number of entries in a SeND certificate database.
ipv6ndsecuredfull-secure(globalconfiguration)
Enables SeND security mode on a specified router.
ipv6ndsecuredfull-secure(interfaceconfiguration)
Enables SeND security mode on a specified interface.
ipv6ndsecuredkey-length
Configures SeND key-length options.
ipv6ndsecuredtimestamp-db
Configures the maximum number of unreached entries in a SeND time-stamp database.
ipv6 nd secured timestamp-db
To configure the maximum number of unreached entries in an IPv6 Secure Neighbor Discovery (SeND) time-stamp database, use the ipv6ndsecuredtimestamp-dbcommand in global configuration mode. To return to the default settings, use the no form of this command.
Configures the maximum number of entries in a SeND certificate database.
ipv6ndsecuredfull-secure(globalconfiguration)
Enables SeND security mode on a specified router.
ipv6ndsecuredfull-secure(interfaceconfiguration)
Enables SeND security mode on a specified interface.
ipv6ndsecuredkey-length
Configures SeND key-length options.
ipv6ndsecuredtimestamp
Configures the SeND time stamp.
ipv6 nd secured trustanchor
To specify an IPv6 Secure Neighbor Discovery (SeND) trusted anchor on an interface, use the ipv6ndsecuredtrustanchorcommand in interface configuration mode. To remove a trusted anchor, use the no form of this command.
ipv6ndsecuredtrustanchortrustanchor-name
noipv6ndsecuredtrustanchortrustanchor-name
Syntax Description
trustanchor-name
The name to be found in the certificate of the trustpoint.
Command Default
No trusted anchor is defined.
Command Modes
Interface configuration (config-if)
Command History
Release
Modification
12.4(24)T
This command was introduced.
Usage Guidelines
The ipv6ndsecuredtrustanchorcommand is used to select the certificate authority (CA) you want to authenticate. The trusted anchors configured by this command act as as references to the trustpoints configured.
A crypto Public Key Infrastructure (PKI) trustpoint can be a self-signed root CA or a subordinate CA. The trustpoint-nameargument refers to the name to be found in the certificate of the trustpoint.
The ipv6ndsecuredtrustanchorand ipv6ndsecuredtrustpointcommands both generate an entry in the SeND configuration database that points to the trustpoint provided. More than one trustpoint can be provided for each command, and the same trustpoint can be used in both commands.
Examples
The following example specifies trusted anchor anchor1 on Ethernet interface 0/0:
Declares the trustpoint that your router should use.
ipv6ndsecuredtrustpoint
Specifies which trustpoint should be used for selecting the certificate to advertise.
ipv6 nd secured trustpoint
To specify which trustpoint should be used in the ipv6 Secure Neighbor Discovery (SeND) protocol for selecting the certificate to advertise, use the ipv6ndsecuredtrustpointcommand in interface configuration mode. To disable the trustpoint, use the no form of this command.
ipv6ndsecuredtrustpointtrustpoint-name
noipv6ndsecuredtrustpointtrustpoint-name
Syntax Description
trustpoint-name
The name to be found in the certificate of the trustpoint.
Command Default
SeND is not enabled on a specified interface.
Command Modes
Interface configuration (config-if)
Command History
Release
Modification
12.4(24)T
This command was introduced.
Usage Guidelines
The ipv6ndsecuredtrustpoint command enables SeND on an interface and specifies which trustpoint should be used. The trustpoint points to the Rivest, Shamir, and Adelman (RSA) key pair and the trusted anchor (which is the certificate authority [CA] signing your certificate).
The ipv6ndsecuredtrustpoint and ipv6ndsecuredtrustanchorcommands both generate an entry in the SeND configuration database that points to the trustpoint provided. More than one trustpoint can be provided for each command, and the same trustpoint can be used in both commands. However, the trustpoint provided in the ipv6ndsecuredtrustpoint command must include a router certificate and the signing CA certificate. It may also include the certificate chain up to the root certificate provided by a CA that hosts (connected to the router) will trust.
The trustpoint provided in the ipv6ndsecuredtrustanchor command must only include a CA certificate.
Examples
The following example specifies trusted anchor anchor1 on Ethernet interface 0/0:
Declares the trustpoint that your router should use.
ipv6ndsecuredtrustanchor
Specifies a trusted anchor on an interface.
ipv6 nd suppress-ra
Note
Effective with Cisco IOS Release 12.4(2)T, the ipv6ndsuppress-ra command is replaced by the ipv6ndrasuppress command. See the ipv6ndrasuppress command for more information.
To suppress IPv6 router advertisement transmissions on a LAN interface, use the ipv6ndsuppress-racommand in interface configuration mode. To reenable the sending of IPv6 router advertisement transmissions on a LAN interface, use the no form of this command.
ipv6ndsuppress-ra
noipv6ndsuppress-ra
Syntax Description
This command has no arguments or keywords.
Command Default
IPv6 router advertisements are automatically sent on Ethernet and FDDI interfaces if IPv6 unicast routing is enabled on the interfaces. IPv6 router advertisements are not sent on other types of interfaces.
Command Modes
Interface configuration
Command History
Release
Modification
12.2(2)T
This command was introduced.
12.0(21)ST
This command was integrated into Cisco IOS Release 12.0(21)ST.
12.0(22)S
This command was integrated into Cisco IOS Release 12.0(22)S.
12.2(14)S
This command was integrated into Cisco IOS Release 12.2(14)S.
12.4(2)T
This command was replaced by the ipv6ndrasuppresscommand.
Usage Guidelines
Use the no ipv6ndsuppress-racommand to enable the sending of IPv6 router advertisement transmissions on non-LAN interface types (for example, serial or tunnel interfaces).
Examples
The following example suppresses IPv6 router advertisements on Ethernet interface 0/0:
The following example enables the sending of IPv6 router advertisements on serial interface 0/1:
Router(config)# interface serial 0/1
Router(config-if)# no ipv6 nd suppress-ra
Related Commands
Command
Description
showipv6interface
Displays the usability status of interfaces configured for IPv6.
ipv6 neighbor binding
To change the defaults of neighbor binding entries in a binding table, use the ipv6neighborbinding command in global configuration mode. To return the networking device to its default, use the no form of this command.
(Optional) The maximum time, in seconds, an entry is considered reachable without getting a proof of reachability (direct reachability through tracking, or indirect reachability through Neighbor Discovery protocol [NDP] inspection). After that, the entry is moved to stale. The range is from 1 through 3600 seconds, and the default is 300 seconds (or 5 minutes).
stale-lifetimevalue
(Optional) The maximum time, in seconds, a stale entry is kept in the binding table before the entry is deleted or proof is received that the entry is reachable.
The default is 24 hours (86,400 seconds).
down-lifetimevalue
(Optional) The maximum time, in seconds, an entry learned from a down interface is kept in the binding table before the entry is deleted or proof is received that the entry is reachable.
The default is 24 hours (86,400 seconds).
Command Default
Reachable lifetime: 300 seconds
Stale lifetime: 24 hours
Down lifetime: 24 hours
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(50)SY
This command was introduced.
Usage Guidelines
Use the ipv6neighborbinding command to configure information about individual entries in a binding table. If no keywords or arguments are configured, the IPv6 neighbor binding entry defaults are used.
If the trackingreachable-lifetime command is configured, it overrides ipv6neighborbindingreachable-lifetime configuration. If the trackingstale-lifetime command is configured, it overrides ipv6neighborbindingstale-lifetime configuration.
Examples
The following example shows how to change the reachable lifetime for binding entries to 100 seconds:
To change the default of a neighbor binding entry’s down lifetime, use the ipv6neighborbindingdown-lifetimecommand in global configuration mode. To return the networking device to its default, use the no form of this command.
ipv6neighborbindingdown-lifetime
{ value | infinite }
noipv6neighborbindingdown-lifetime
Syntax Description
value
The maximum time, in minutes, an entry learned from a down interface is kept in the table before deletion. The range is from 1 to 3600 minutes.
The default is 24 hours (86,400 seconds).
infinite
Keeps an entry in the binding table for an infinite amount of time.
Command Default
A neighbor binding entry is down for 24 hours before it is deleted from the binding table.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(50)SY
This command was introduced.
Usage Guidelines
Use the ipv6neighborbindingdown-lifetimecommand to change the amount of time a neighbor binding is down before that binding is removed from the binding table.
Examples
The following example shows how to change a binding entry’s down lifetime to 2 minutes before it is deleted from the binding table:
To enable the logging of binding table main events, use the
ipv6neighborbindinglogging command in global configuration mode. To disable this function, use the
no form of this command.
ipv6neighborbindinglogging
noipv6neighborbindinglogging
Syntax Description
This command has no arguments or keywords.
Command Default
Binding table events are not logged.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(50)SY
This command was introduced.
15.0(2)SE
This command was integrated into Cisco IOS Release 15.0(2)SE.
15.3(1)S
This command was integrated into Cisco IOS Release 15.3(1)S.
Cisco IOS XE Release 3.2SE
This command was integrated into Cisco IOS XE Release 3.2SE.
Usage Guidelines
Theipv6neighborbindinglogging command enables the logging of the following binding table events:
An entry is inserted into the binding table.
A binding table entry was updated.
A binding table entry was deleted from the binding table.
A binding table entry was not inserted into the binding table, possibly because of a collision with an existing entry, or because the maximum number of entries has been reached.
Examples
The following example shows how to enable binding table event logging:
Router(config)# ipv6 neighbor binding logging
Related Commands
Command
Description
ipv6neighborbindingvlan
Adds a static entry to the binding table database.
ipv6 neighbor tracking
Tracks entries in the binding table.
ipv6snoopingloggingpacketdrop
Configures IPv6 snooping security logging.
ipv6 neighbor binding max-entries
To specify the maximum number of entries that are allowed to be inserted in the binding table cache, use the
ipv6neighborbindingmax-entries command in global configuration mode. To return to the default, use the
no form of this command.
Number of entries that can be inserted into the cache.
vlan-limitnumber
(Optional) Specifies a neighbor binding limit per number of VLANs.
interface-limitnumber
(Optional) Specifies a neighbor binding limit per interface.
mac-limitnumber
(Optional) Specifies a neighbor binding limit per number of Media Access Control (MAC) addresses.
Command Default
This command is disabled.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(50)SY
This command was introduced.
15.0(2)SE
This command was integrated into Cisco IOS Release 15.0(2)SE.
15.3(1)S
This command was integrated into Cisco IOS Release 15.3(1)S.
Cisco IOS XE Release 3.2SE
This command was integrated into Cisco IOS XE Release 3.2SE.
Usage Guidelines
The
ipv6neighborbindingmax-entries command is used to control the content of the binding table. This command specifies the maximum number of entries that are allowed to be inserted in the binding table cache. Once this limit is reached, new entries are refused, and the Neighbor Discovery Protocol (NDP) traffic source with the new entry is dropped.
If the maximum number of entries specified is lower than the current number of entries in the database, no entries are cleared, and the new threshold is reached after normal cache attrition.
The maximum number of entries can be set globally per VLAN, interface, or MAC addresses.
Examples
The following example shows how to specify globally the maximum number of entries inserted into the cache:
Adds a static entry to the binding table database.
ipv6 neighbor tracking
Tracks entries in the binding table.
ipv6 neighbor binding stale-lifetime
To set the length of time a stale entry is kept in the binding table, use the ipv6neighborbindingstale-lifetimecommand in global configuration mode. To return to the default setting, use the no form of this command.
ipv6neighborbindingstale-lifetime
{ value | infinite }
noipv6neighborbinding
Syntax Description
value
The maximum time, in minutes, a stale entry is kept in the table before it is deleted or some proof of reachability is seen. The range is from 1 to 3600 minutes, and the default is 24 hours (or 1440 minutes).
infinite
Keeps an entry in the binding table for an infinite amount of time.
Command Default
Stale lifetime: 1440 minutes (24 hours)
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(50)SY
This command was introduced.
Usage Guidelines
Use the ipv6neighborbindingstale-lifetimecommand to configure the length of time a stale entry is kept in the binding table before it is removed.
Examples
The following example shows how to change the stale lifetime for a binding entry to 720 minutes (or 12 hours):
Router(config)# ipv6 neighbor binding stale lifetime 720
Related Commands
Command
Description
ipv6neighborbinding
Changes the defaults of neighbor binding entries in a binding table.
ipv6 neighbor binding vlan
To add a static entry to the binding table database, use the
ipv6neighborbindingvlan command in global configuration mode. To remove the static entry, use the
no form of this command.
Adds static entries by the specified interface type and number.
ipv6-address
IPv6 address of the static entry.
mac-address
Media Access Control (MAC) address of the static entry.
tracking
(Optional) Verifies a static entry’s reachability directly.
disable
(Optional) Disables tracking for a particular static entry.
enable
(Optional) Enables tracking for a particular static entry.
retry-intervalvalue
(Optional) Verifies a static entry’s reachability, in seconds, at the configured interval. The range is from 1 to 3600, and the default is 300.
reachable-lifetimevalue
(Optional) Specifies the maximum time, in seconds, an entry is considered reachable without getting a proof of reachability (direct reachability through tracking, or indirect reachability through Neighbor Discovery Protocol [NDP] inspection). After that, the entry is moved to stale. The range is from 1 to 3600 seconds, and the default is 300 seconds.
Command Default
Retry interval: 300 seconds
Reachable lifetime: 300 seconds
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(50)SY
This command was introduced.
15.0(2)SE
This command was integrated into Cisco IOS Release 15.0(2)SE.
15.3(1)S
This command was integrated into Cisco IOS Release 15.3(1)S.
Cisco IOS XE Release 3.2SE
This command was integrated into Cisco IOS XE Release 3.2SE.
Usage Guidelines
The
ipv6neighborbindingvlan command is used to control the content of the binding table. Use this command to add a static entry in the binding table database. The binding table manager is responsible for aging out entries and verifying their reachability directly by probing them (if the
tracking keyword is enabled). Use of the
tracking keyword overrides any general behavior provided globally by the
ipv6neighbortracking command for this static entry. The
disable keyword disables tracking for this static entry. The
stale-lifetime keyword defines the maximum time the entry will be kept once it is determined to be not reachable (or stale).
Examples
The following example shows how to change the reachable lifetime for binding entries to 100 seconds:
Specifies the maximum number of entries that are allowed to be inserted in the cache.
ipv6 neighbor tracking
Tracks entries in the binding table.
ipv6 neighbor tracking
To track entries in the binding table, use the
ipv6neighbortracking command in global configuration mode. To disable entry tracking, use the
no form of this command.
ipv6neighbortracking
[ retry-intervalvalue ]
noipv6neighbortracking
[ retry-intervalvalue ]
Syntax Description
retry-intervalvalue
(Optional) Verifies a static entry’s reachability at the configured interval time, in seconds, between two probings. The range is from 1 to 3600, and the default is 300.
Command Default
Entries in the binding table are not tracked.
Command Modes
Global configuration (config)
Command History
Release
Modification
12.2(50)SY
This command was introduced.
15.0(2)SE
This command was integrated into Cisco IOS Release 15.0(2)SE.
15.3(1)S
This command was integrated into Cisco IOS Release 15.3(1)S.
Cisco IOS XE Release 3.2SE
This command was integrated into Cisco IOS XE Release 3.2SE.
Usage Guidelines
The
ipv6neighbortracking command enables the tracking of entries in the binding table. Entry reachability is tested at every interval configured by the optional
retry-interval keyword (or every 300 seconds, which is the default retry interval) using the neighbor unreachability detection (NUD) mechanism used for directly tracking neighbor reachability.
Reachability can also be established indirectly by using Neighbor Discovery Protocol (NDP) inspection up to the VERIFY_MAX_RETRIES value (the default is 10 seconds). When there is no response, entries are considered stale and are deleted after the stale lifetime value is reached (the default is 1440 minutes).
When the
ipv6neighbortracking command is disabled, entries are considered stale after the reachable lifetime value is met (the default is 300 seconds) and deleted after the stale lifetime value is met.
To change the default values of neighbor binding entries in a binding table, use the
ipv6neighborbinding command.
Examples
The following example shows how to track entries in a binding table:
Router(config)# ipv6 neighbor tracking
Related Commands
Command
Description
ipv6 neighbor binding
Changes the defaults of neighbor binding entries in a binding table.
ipv6 port-map
To establish port-to-application mapping (PAM) for the system, use the
ipv6port-map command in global configuration mode. To delete user-defined PAM entries, use the
no form of this command.
Specifies the predefined application that requires port mapping.
portport-num
Specifies a port number. The range is from 1 to 65535.
listacl-name
(Optional) Specifies the name of the IPv6 access list (ACL) associated with the port mapping.
Command Default
None
Command Modes
Global configuration
Command History
Release
Modification
12.3(11)T
This command was introduced.
Usage Guidelines
The
ipv6port-map command associates TCP or User Datagram Protocol (UDP) port numbers with applications or services, establishing a table of default port mapping information at the firewall. This information is used to support network environments that run services using ports that are different from the registered or well-known ports associated with a service or application.
The port mapping information in the PAM table is of one of three types:
System-defined
User-defined
Host-specific
System-Defined Port Mapping
Initially, PAM creates a set of system-defined entries in the mapping table using well-known or registered port mapping information set up during the system start-up. The Cisco IOS Firewall Context-Based Access Control feature requires the system-defined mapping information to function properly. System-defined mapping information cannot be deleted or changed; that is, you cannot map HTTP services to port 21 (FTP) or FTP services to port 80 (HTTP).
The table below lists the default system-defined services and applications in the PAM table.
Table 2 System-Defined Port Mapping
Application Name
Well-Known or Registered Port Number
Protocol Description
cuseeme
7648
CU-SeeMe Protocol
exec
512
Remote Process Execution
ftp
21
File Transfer Protocol (control port)
h323
1720
H.323 Protocol (for example, MS NetMeeting, Intel Video Phone)
http
80
Hypertext Transfer Protocol
login
513
Remote login
msrpc
135
Microsoft Remote Procedure Call
netshow
1755
Microsoft NetShow
real-audio-video
7070
RealAudio and RealVideo
sccp
2000
Skinny Client Control Protocol (SCCP)
smtp
25
Simple Mail Transfer Protocol (SMTP)
sql-net
1521
SQL-NET
streamworks
1558
StreamWorks Protocol
sunrpc
111
SUN Remote Procedure Call
tftp
69
Trivial File Transfer Protocol
vdolive
7000
VDOLive Protocol
Note
You can override the system-defined entries for a specific host or subnet using the
list keyword in the
ipv6port-map command.
User-Defined Port Mapping
Network applications that use non-standard ports require user-defined entries in the mapping table. Use the
ipv6port-map command to create default user-defined entries in the PAM table.
To map a range of port numbers with a service or application, you must create a separate entry for each port number.
Note
If you try to map an application to a system-defined port, a message appears warning you of a mapping conflict.
Use the
no form of the
ipv6port-map command to delete user-defined entries from the PAM table.
To overwrite an existing user-defined port mapping, use the
ipv6port-map command to associate another service or application with the specific port.
Host-Specific Port Mapping
User-defined entries in the mapping table can include host-specific mapping information, which establishes port mapping information for specific hosts or subnets. In some environments, it might be necessary to override the default port mapping information for a specific host or subnet, including a system-defined default port mapping information. Use the
list keyword for the
ipv6port-map command to specify an ACL for a host or subnet that uses PAM.
Note
If the host-specific port mapping information is the same as existing system-defined or user-defined default entries, host-specific port changes have no effect.
Examples
The following user-defined port-mapping configuration map port 8080 to the HTTP application:
ipv6 port-map http port 8080
Host-specific port-mapping configuration maps port 2121 to the FTP application from a particular set of host. First, the user needs to create a permit IPv6 access list for the allowed host(s). In the following example, packets from the hosts in the 2001:0DB8:1:7 subset destined for port 2121 will be mapped to the FTP application:
Router(config)# ipv6 access-list ftp-host
Router(config-ipv6-acl)# permit 2001:0DB8:1:7::/64 any
The port-map configuration is then configured as follows:
Router(config)# ipv6 port-map ftp port 2121 list ftp-host
Related Commands
Command
Description
showipv6port-map
Displays IPv6 port-mapping information.
ipv6 routing-enforcement-header loose
To provide backward compatibility with legacy IPv6 inspection, use the ipv6 routing-enforcement-header loose command in parameter map type inspect configuration mode. To disable this feature, use the no form of this command.
ipv6routing-enforcement-headerloose
noipv6routing-enforcement-headerloose
Syntax Description
This command has no arguments or keywords.
Command Default
Backward compatibility is not provided.
Command Modes
parameter map type inspect configuration mode (config-profile)
Command History
Release
Modification
15.1(2)T
This command was introduced.
Usage Guidelines
The ipv6routing-enforcement-headerloose command provides backward compatibility with legacy IPv6 inspection. Enabling this command ensures that the firewall will not drop IPv6 traffic with routing headers. The default firewall behavior is to drop all IPv6 traffic without a routing header.
Examples
The following example enables backward compatibility with legacy IPv6 inspection on an inspect type parameter map named v6-param-map:
Router(config)# parameter-map type inspect v6-param-map
Router (config-profile)# ipv6 routing-header-enforcement loose
Related Commands
Command
Description
parameter-maptypeinspect
Configures an inspect type parameter map for connecting thresholds, timeouts, and other parameters pertaining to the inspect action.
ipv6 snooping logging packet drop
To enable the logging of dropped packets by the IPv6 first-hop security feature, use the ipv6snoopingloggingpacketdropcommand in global configuration mode. To disable the logging of dropped packets by the IPv6 first-hop security feature, use the no form of this command.
ipv6snoopingloggingpacketdrop
noipv6snoopingloggingpacketdrop
Syntax Description
This command has no arguments or keywords.
Command Default
Snooping security logging is not enabled.
Command Modes
Global configuration (config)#
Command History
Release
Modification
12.2(50)SY
This command was introduced.
Usage Guidelines
Use the ipv6snoopingloggingpacketdropcommand to log packets that are dropped when they are received on an unauthorized port. For example, this command will log RA packets that are dropped because of the RA guard feature.
Related Commands
Command
Description
ipv6neighborbindinglogging
Enables the logging of binding table main events.
ipv6 tacacs source-interface
To specify an interface to use for the source address in TACACS packets, use the ipv6tacacssource-interfacecommand
in global configuration mode. To remove the specified interface from the configuration, use the no form of this command.
ipv6tacacssource-interfaceinterface
noipv6tacacssource-interfaceinterface
Syntax Description
interface
Interface to be used for the source address in TACACS packets.
Command Default
No interface is specified.
Command Modes
Global configuration (config)
Command History
Release
Modification
Cisco IOS XE Release 3.2S
This command was introduced.
Usage Guidelines
The ipv6tacacssource-interfacecommand specifies an interface to use for the source address in TACACS packets.
Examples
The following example shows how to configure the Gigabit Ethernet interface to be used as the source address in TACACS packets:
Configures the TACACS+ server for IPv6 or IPv4 and enters TACACS+ server configuration mode.
ipv6 virtual-reassembly
To enable Virtual Fragment Reassembly (VFR) on an interface, use the ipv6virtual-reassembly
command in
global configuration mode. To remove VFR configuration, use the no form of this command.
ipv6virtual-reassembly
[ in | out ]
[ max-reassembliesmaxreassemblies ]
[ max-fragmentsmax-fragments ]
[ timeoutseconds ]
[drop-fragments]
noipv6virtual-reassembly
[ in | out ]
[ max-reassembliesmaxreassemblies ]
[ max-fragmentsmax-fragments ]
[ timeoutseconds ]
[drop-fragments]
Syntax Description
in
(Optional) Enables VFR on the ingress direction of the interface.
out
(Optional) Enables VFR on the egress direction of the interface.
max-reassemblies maxreassemblies
(Optional) Sets the maximum number of concurrent reassemblies (fragment sets) that the Cisco IOS software can handle at a time. The default value is 64.
max-fragments max-fragments
(Optional) Sets the maximum number of fragments allowed per datagram (fragment set). The default is 16.
timeout seconds
(Optional) Sets the timeout value of the fragment state. The default timeout value is 2 seconds. If a datagram does not receive all its fragments within 2 seconds, all of the fragments received previously will be dropped and the fragment state will be deleted.
drop-fragments
(Optional) Turns the drop fragments feature on or off.
Command Default
Max-reassemblies = 64
Fragments = 16
If neither the in or out keyword is specified, VFR is enabled on the ingress direction of the interface only.drop-fragments keyword is not enabled.
Command Modes
Interface configuration (config-if)
Command History
Release
Modification
12.3(7)T
This command was introduced.
15.1(1)T
The in and out keywords were added.
The out keyword must be used to configure or disable the egress direction of the interface.
Cisco IOS XE Release 3.4S
The drop-fragments keyword was added.
Usage Guidelines
When the ipv6virtual-reassembly command is configured on an interface without using one of the command keywords, VFR is enabled on the ingress direction of the interface only. In Cisco IOS XE Release 3.4S, all VFR-related alert messages are suppressed by default.
Maximum Number of Reassemblies
Whenever the maximum number of 256 reassemblies (fragment sets) is crossed, all the fragments in the forthcoming fragment set will be dropped and an alert message VFR-4-FRAG_TABLE_OVERFLOW will be logged to the syslog server.
Maximum Number of Fragments per Fragment Set
If a datagram being reassembled receives more than eight fragments then, tall fragments will be dropped and an alert message VFR-4-TOO_MANY_FRAGMENTS will be logged to the syslog server.
Explicit Removal of Egress Configuration
As of the Cisco IOS 15.1(1)T release, the noipv6virtual-reassembly command, when used without keywords, removes ingress configuration only. To remove egress interface configuration, you must enter the out keyword.
Examples
The following example configures the ingress direction on the interface. It sets the maximum number of reassemblies to 32, maximum fragments to 4, and the timeout to 7 seconds:
The following example enables the VFR on the ingress direction of the interface. Note that even if the in keyword is not used, the configuration default is to configure the ingress direction on the interface:
Router(config)# interface Ethernet 0/0
Router(config-if)# ipv6 virtual-reassembly
Router(config-if)# end
Router# show run interface Ethernet 0/0
interface Ethernet0/0
no ip address
ipv6 virtual-reassembly in
The following example enables egress configuration on the interface. Note that the out keyword must be used to enable and disable egress configuration on the interface:
Router(config)# interface Ethernet 0/0
Router(config-if)# ipv6 virtual-reassembly out
Router(config-if)# end
Router# show run interface Ethernet 0/0
interface Ethernet0/0
no ip address
ipv6 virtual-reassembly out
end
The following example disables egress configuration on the interface:
Router(config)# interface Ethernet 0/0
Router(config-if)# noipv6 virtual-reassembly out
Router(config-if)# end
ipv6 virtual-reassembly drop-fragments
To drop all fragments on an interface, use the ipv6virtual-reassemblydrop-fragments
command in
global configuration mode. Use the no form of this command to remove the packet-dropping behavior.
ipv6virtual-reassemblydrop-fragments
noipv6virtual-reassemblydrop-fragments
Syntax Description
This command has no arguments or keywords.
Command Default
Fragments on an interface are not dropped.
Command Modes
Global configuration
Command History
Release
Modification
12.3(7)T
This command was introduced.
Examples
The following example causes all fragments on an interface to be dropped:
ipv6 virtual-reassembly drop-fragments
isakmp authorization list
To configure an Internet Key Exchange (IKE) shared secret using the authentication, authorization, and accounting (AAA) server in an Internet Security Association and Key Management Protocol (ISAKMP) profile, use the isakmpauthorizationlistcommand in
ISAKMP
profile configuration mode. To disable the shared secret, use the no form of this command.
isakmpauthorizationlistlist-name
noisakmpauthorizationlistlist-name
Syntax Description
list-name
AAA authorization list used for configuration mode attributes or preshared keys for aggresive mode.
Command Default
No default behaviors or values
Command Modes
ISAKMP profile configuration (config-isa-prof)
Command History
Release
Modification
12.2(15)T
This command was introduced.
12.2(18)SXD
This command was integrated into Cisco IOS Release 12.2(18)SXD.
12.2(33)SRA
This command was integrated into Cisco IOS release 12.2(33)SRA.
Cisco IOS XE Release 2.6
This command was integrated into Cisco IOS XE Release 2.6.
Usage Guidelines
This command allows you to retrieve a shared secret from an AAA server.
Examples
The following example shows that an IKE shared secret is configured using an AAA server on a router:
crypto isakmp profile vpnprofile
isakmp authorization list ikessaaalist
Related Commands
Command
Description
aaaauthorization
Sets parameters that restrict user access to a network.
issuer-name
To specify the distinguished name (DN) as the certification authority (CA) issuer name for the certificate server, use the
issuer-name command in certificate server configuration mode. To clear the issuer name and return to the default, use the
no form of this command.
issuer-nameDN-string
noissuer-nameDN-string
Syntax Description
DN-string
Name of the DN string.
Command Default
If the issuer name is not configured, the DN string is the certificate server name.
Command Modes
Certificate server configuration (cs-server)
Command History
Release
Modification
12.3(4)T
This command was introduced.
Usage Guidelines
You must configure the
crypto pki server command with the name of the certificate server in order to enter certificate server configuration mode and configure this command.
The DN-string value cannot be changed after the certificate server generates its signed certificate.
Examples
The following example shows how to define an issuer name for the certificate server “mycertserver”:
Router(config)# ip http server
Router(config)# crypto pki server mycertserver
Router(cs-server)# database level minimal
Router(cs-server)# database url nvram:
Router(cs-server)# issuer-name CN = ipsec_cs,L = My Town,C = US
Related Commands
Command
Description
auto-rollover
Enables the automated CA certificate rollover functionality.
cdp-url
Specifies a CDP to be used in certificates that are issued by the certificate server.
crl (cs-server)
Specifies the CRL PKI CS.
crypto pki server
Enables a CS and enters certificate server configuration mode, or immediately generates shadow CA credentials
database archive
Specifies the CA certificate and CA key archive format--and the password--to encrypt this CA certificate and CA key archive file.
database level
Controls what type of data is stored in the certificate enrollment database.
database url
Specifies the location where database entries for the CS is stored or published.
database username
Specifies the requirement of a username or password to be issued when accessing the primary database location.
default (cs-server)
Resets the value of the CS configuration command to its default.
grant auto rollover
Enables automatic granting of certificate reenrollment requests for a Cisco IOS subordinate CA server or RA mode CA.
grant auto trustpoint
Specifies the CA trustpoint of another vendor from which the Cisco IOS certificate server automatically grants certificate enrollment requests.
grant none
Specifies all certificate requests to be rejected.
grant ra-auto
Specifies that all enrollment requests from an RA be granted automatically.
hash (cs-server)
Specifies the cryptographic hash function the Cisco IOS certificate server uses to sign certificates issued by the CA.
lifetime (cs-server)
Specifies the lifetime of the CA or a certificate.
mode ra
Enters the PKI server into RA certificate server mode.
mode sub-cs
Enters the PKI server into sub-certificate server mode
redundancy (cs-server)
Specifies that the active CS is synchronized to the standby CS.
serial-number (cs-server)
Specifies whether the router serial number should be included in the certificate request.
show (cs-server)
Displays the PKI CS configuration.
shutdown (cs-server)
Allows a CS to be disabled without removing the configuration.
ivrf
To specify a user-defined VPN routing and forwarding (VRF) or use the global VRF, use the
ivrf command in IKEv2 profile configuration mode. To delete the VRF specification, use the
no form of this command.
This command was integrated into Cisco IOS XE Release 3.3S.
15.2(4)S
This command was integrated into Cisco IOS Release 15.2(4)S.
Usage Guidelines
Use this command to specify a user-defined VRF or a global VRF, which should be attached to static and dynamic crypto maps. The inside VRF (IVRF) for a tunnel interface should be configured on the tunnel interface. IVRF specifies the VRF for cleartext packets. The default value for IVRF is Forward VRF (FVRF).