Configuring IS-IS

This chapter describes how to configure Integrated Intermediate System-to-Intermediate System (IS-IS) on the Cisco NX-OS device.

This chapter includes the following sections:

About IS-IS

IS-IS is an Interior Gateway Protocol (IGP) based on Standardization (ISO)/International Engineering Consortium (IEC) 10589. Cisco NX-OS supports Internet Protocol version 4 (IPv4) and IPv6. IS-IS is a dynamic link-state routing protocol that can detect changes in the network topology and calculate loop-free routes to other nodes in the network. Each router maintains a link-state database that describes the state of the network and sends packets on every configured link to discover neighbors. IS-IS floods the link-state information across the network to each neighbor. The router also sends advertisements and updates on the link-state database through all the existing neighbors.

IS-IS Overview

IS-IS sends a hello packet out every configured interface to discover IS-IS neighbor routers. The hello packet contains information, such as the authentication, area, and supported protocols, which the receiving interface uses to determine compatibility with the originating interface. The hello packets are also padded to ensure that IS-IS establishes adjacencies only with interfaces that have matching maximum transmission unit (MTU) settings. Compatible interfaces form adjacencies, which update routing information in the link-state database through link-state update messages (LSPs). By default, the router sends a periodic LSP refresh every 10 minutes and the LSPs remain in the link-state database for 20 minutes (the LSP lifetime). If the router does not receive an LSP refresh before the end of the LSP lifetime, the router deletes the LSP from the database.

The LSP interval must be less than the LSP lifetime or the LSPs time out before they are refreshed.

IS-IS sends periodic hello packets to adjacent routers. If you configure transient mode for hello packets, these hello packets do not include the excess padding used before IS-IS establishes adjacencies. If the MTU value on adjacent routers changes, IS-IS can detect this change and send padded hello packets for a period of time. IS-IS uses this feature to detect mismatched MTU values on adjacent routers. For more information, see the Configuring the Transient Mode for Hello Padding section.

IS-IS Areas

You can design IS-IS networks as a single area that includes all routers in the network or as multiple areas that connect into a backbone or Level 2 area. Routers in a nonbackbone area are Level 1 routers that establish adjacencies within a local area (intra-area routing). Level 2 area routers establish adjacencies to other Level 2 routers and perform routing between Level 1 areas (inter-area routing). A router can have both Level 1 and Level 2 areas configured. These Level 1/Level 2 routers act as area border routers that route information from the local area to the Level 2 backbone area (see the figure below).

Within a Level 1 area, routers know how to reach all other routers in that area. The Level 2 routers know how to reach other area border routers and other Level 2 routers. Level 1/Level 2 routers straddle the boundary between two areas, routing traffic to and from the Level 2 backbone area. Level1/Level2 routers use the attached (ATT) bit signal Level 1 routers to set a default route to this Level1/Level2 router to connect to the Level 2 area.

In some instances, such as when you have two or more Level1/Level 2 routers in an area, you may want to control which Level1/Level2 router that the Level 1 routers use as the default route to the Level 2 area. You can configure which Level1/Level2 router sets the attached bit. For more information, see the Verifying the IS-IS Configuration section.

Each IS-IS instance in Cisco NX-OS supports either a single Level 1 or Level 2 area, or one of each. By default, all IS-IS instances automatically support Level 1 and Level 2 routing.

Figure 1. IS-IS Network Divided into Areas


An autonomous system boundary router (ASBR) advertises external destinations throughout the IS-IS autonomous system. External routes are the routes redistributed into IS-IS from any other protocol.

NET and System ID

Each IS-IS instance has an associated network entity title (NET). The NET is comprised of the IS-IS system ID, which uniquely identifies this IS-IS instance in the area and the area ID. For example, if the NET is 47.0004.004d.0001.0001.0c11.1111.00, the system ID is 0000.0c11.1111.00 and the area is ID 47.0004.004d.0001.

Designated Intermediate System

IS-IS uses a designated intermediate system (DIS) in broadcast networks to prevent each router from forming unnecessary links with every other router on the broadcast network. IS-IS routers send LSPs to the DIS, which manages all the link-state information for the broadcast network. You can configure the IS-IS priority that IS-IS uses to select the DIS in an area.


Note


No DIS is required on a point-to-point network.


IS-IS Authentication

You can configure authentication to control adjacencies and the exchange of LSPs. Routers that want to become neighbors must exchange the same password for their configured level of authentication. IS-IS blocks a router that does not have the correct password. You can configure IS-IS authentication globally or for an individual interface for Level 1, Level 2, or both Level 1/Level 2 routing.

IS-IS supports the following authentication methods:

  • Clear text—All packets exchanged carry a cleartext 128-bit password.

  • MD5 digest—All packets exchanged carry a message digest that is based on a 128-bit key.

To provide protection against passive attacks, IS-IS never sends the MD5 secret key as cleartext through the network. In addition, IS-IS includes a sequence number in each packet to protect against replay attacks.

You can use also keychains for hello and LSP authentication. See the Cisco Nexus 9000 Series NX-OS Security Configuration Guide for information on keychain management.

Mesh Groups

A mesh group is a set of interfaces in which all routers reachable over the interfaces have at least one link to every other router. Many links can fail without isolating one or more routers from the network.

In normal flooding, an interface receives a new LSP and floods the LSP out over all other interfaces on the router. With mesh groups, when an interface that is part of a mesh group receives a new LSP, the interface does not flood the new LSP over the other interfaces that are part of that mesh group.


Note


You may want to limit LSPs in certain mesh network topologies to improve network scalability. Limiting LSP floods might also reduce the reliability of the network (in case of failures). For this reason, we recommend that you use mesh groups only if specifically required, and then only after you make a careful network design.


You can also configure mesh groups in block mode for parallel links between routers. In this mode, all LSPs are blocked on that interface in a mesh group after the routers initially exchange their link-state information.

Overload Bit

IS-IS uses the overload bit to tell other routers not to use the local router to forward traffic but to continue routing traffic destined for that local router.

You may want to use the overload bit in these situations:

  • The router is in a critical condition.

  • Graceful introduction and removal of the router to/from the network.

  • Other (administrative or traffic engineering) reasons such as waiting for BGP convergence.

Route Summarization

You can configure a summary aggregate address. Route summarization simplifies route tables by replacing a number of more-specific addresses with an address that represents all the specific addresses. For example, you can replace 10.1.1.0/24, 10.1.2.0/24, and 10.1.3.0/24 with one summary address, 10.1.0.0/16.

If more specific routes are in the routing table, IS-IS advertises the summary address with a metric equal to the minimum metric of the more specific routes.


Note


Cisco NX-OS does not support automatic route summarization.


Route Redistribution

You can use IS-IS to redistribute static routes, routes learned by other IS-IS autonomous systems, or routes from other protocols. You must configure a route map with the redistribution to control which routes are passed into IS-IS. A route map allows you to filter routes based on attributes such as the destination, origination protocol, route type, route tag, and so on. For more information, see Configuring Route Policy Manager.

Whenever you redistribute routes into an IS-IS routing domain, Cisco NX-OS does not, by default, redistribute the default route into the IS-IS routing domain. You can generate a default route into IS-IS, which can be controlled by a route policy.

You also configure the default metric that is used for all imported routes into IS-IS.

Link Prefix Suppression

By default, IS-IS advertises the addresses of connected interfaces in the system LSP. By suppressing the advertisement of unwanted interface addresses, you can reduce the size of LSPs and reduce the number of routes that IS-IS maintains, improving convergence times.

Two prefix suppression methods are provided for reducing the number of routes in the LSP:

Load Balancing

You can use load balancing to allow a router to distribute traffic over all the router network ports that are the same distance from the destination address. Load balancing increases the utilization of network segments and increases the effective network bandwidth.

Cisco NX-OS supports the Equal Cost Multiple Paths (ECMP) feature with up to 16 equal-cost paths in the IS-IS route table and the unicast RIB. You can configure IS-IS to load balance traffic across some or all of those paths.

BFD

This feature supports bidirectional forwarding detection (BFD) for IPv4 and IPv6. BFD is a detection protocol designed to provide fast forwarding-path failure detection times. BFD provides subsecond failure detection between two adjacent devices and can be less CPU-intensive than protocol hello messages because some of the BFD load can be distributed onto the data plane on supported modules. See the Cisco Nexus 9000 Series NX-OS Interfaces Configuration Guide for more information.

Virtualization Support

Cisco NX-OS supports multiple process instances for IS-IS. Each IS-IS instance can support multiple virtual routing and forwarding (VRF) instances, up to the system limit. For the number of supported IS-IS instances, see the Cisco Nexus 9000 Series NX-OS Verified Scalability Guide.

High Availability and Graceful Restart

Cisco NX-OS provides a multilevel high-availability architecture. IS-IS supports stateful restart, which is also referred to as non-stop routing (NSR). If IS-IS experiences problems, it attempts to restart from its previous run-time state. The neighbors would not register any neighbor event in this case. If the first restart is not successful and another problem occurs, IS-IS attempts a graceful restart as per RFC 3847. A graceful restart, or non-stop forwarding (NSF), allows IS-IS to remain in the data forwarding path through a process restart. When the restarting IS-IS interface is operational again, it rediscovers its neighbors, establishes adjacency, and starts sending its updates again. At this point, the NSF helpers recognize that the graceful restart has finished.

A stateful restart is used in the following scenarios:

  • First recovery attempt after process experiences problems

  • User-initiated switchover using the system switchover command

A graceful restart is used in the following scenarios:

  • Second recovery attempt after the process experiences problems within a 4-minute interval

  • Manual restart of the process using the restart isis command

  • Active supervisor removal

  • Active supervisor reload using the reload module active-sup command


Note


Graceful restart is on by default, and we strongly recommend that you do not disable it.


Multiple IS-IS Instances

Cisco NX-OS supports multiple instances of the IS-IS protocol that run on the same node. You cannot configure multiple instances over the same interface. Every instance uses the same system router ID. For the number of supported IS-IS instances, see the Cisco Nexus 9000 Series NX-OS Verified Scalability Guide.

Prerequisites for IS-IS

IS-IS has the following prerequisites:

Guidelines and Limitations for IS-IS

IS-IS has the following configuration guidelines and limitations:

  • IS-IS Level-1 routes do not populate on the connecting Level-2-only switch if an explicit configuration is not added to the Level-1/Level-2 Cisco Nexus switch.

  • Because the default reference bandwidth is different for Cisco NX-OS and Cisco IOS, the advertised tunnel IS-IS metric is different for these two operating systems.

  • You can configure IS-IS over segment routing for all Cisco Nexus 9000 Series switches and the Cisco Nexus 3164Q and 31128PQ switches. For information, see the Cisco Nexus 9000 Series NX-OS Label Switching Configuration Guide.

Default Settings

The table lists the default settings for IS-IS parameters.

Table 1. Default IS-IS Parameters

Parameters

Default

Administrative distance

115

Area level

Level-1-2

DIS priority

64

Graceful restart

Enabled

Hello multiplier

3

Hello padding

Enabled

Hello time

10 seconds

IS-IS feature

Disabled

LSP interval

33

LSP MTU

1492

Maximum LSP lifetime

1200 seconds

Maximum paths

8

Metric

40

Reference bandwidth

40 Gbps

Configuring IS-IS

To configure IS-IS, follow these steps:

  1. Enable the IS-IS feature (see the Enabling the IS-IS Feature section).

  2. Create an IS-IS instance (see the Creating an IS-IS Instance section).

  3. Add an interface to the IS-IS instance (see the Configuring IS-IS on an Interface section).

  4. Configure optional features, such as authentication, mesh groups, and dynamic host exchange.


Note


If you are familiar with the Cisco IOS CLI, be aware that the Cisco NX-OS commands for this feature might differ from the Cisco IOS commands that you would use.


IS-IS Configuration Modes

The following sections show how to enter each of the configuration modes. You can enter the ? command to display the commands available in that mode.

Router Configuration Mode

This example shows how to enter router configuration mode:

switch#: configure terminal
switch(config)# router isis isp
switch(config-router)# 

Router Address Family Configuration Mode

This example shows how to enter router address family configuration mode:

switch(config)# router isis isp
switch(config-router)# address-family ipv4 unicast
switch(config-router-af)# 

Enabling the IS-IS Feature

You must enable the IS-IS feature before you can configure IS-IS.

Procedure

  Command or Action Purpose

Step 1

configure terminal

Example:

switch# configure terminal
switch(config)#

Enters global configuration mode.

Step 2

[no] feature isis

Example:

switch(config)# feature isis

Enables or disables the IS-IS feature.

Using the no option with this command disables the IS-IS feature and removes all associated configurations.

Step 3

(Optional) show feature

Example:

switch(config)# show feature 
(Optional)

Displays enabled and disabled features.

Step 4

(Optional) copy running-config startup-config

Example:

switch(config)# copy running-config
startup-config
(Optional)

Saves this configuration change.

Creating an IS-IS Instance

You can create an IS-IS instance and configure the area level for that instance.

Before you begin

You must enable IS-IS (see the Enabling the IS-IS Feature section).

Procedure

  Command or Action Purpose

Step 1

configure terminal

Example:

switch# configure terminal
switch(config)#

Enters global configuration mode.

Step 2

[no] router isis instance-tag

Example:

switch(config)# router isis Enterprise
switch(config-router)#

Creates a new IS-IS instance with the configured instance tag.

Use the no form of this command to delete the IS-IS instance and all associated configurations.

Note

 

You must also remove any IS-IS commands that are configured in interface mode to completely remove all configurations for the IS-IS instance.

Step 3

net network-entity-title

Example:

switch(config-router)# net
47.0004.004d.0001.0001.0c11.1111.00

Configures the NET for this IS-IS instance.

Step 4

(Optional) is-type {level-1 | level-2 | level-1-2}

Example:

switch(config-router)# is-type level-2
(Optional)

Configures the area level for this IS-IS instance. The default is level-1-2.

Step 5

(Optional) show isis [vrf vrf-name] process

Example:

switch(config-router)# show isis process
(Optional)

Displays a summary of IS-IS information for all IS-IS instances.

Step 6

(Optional) distance value

Example:

switch(config-router)# distance 30
(Optional)

Sets the administrative distance for IS-IS. The range is from 1 to 255. The default is 115.

Step 7

(Optional) log-adjacency-changes

Example:

switch(config-router)#
log-adjacency-changes 
(Optional)

Sends a system message whenever an IS-IS neighbor changes the state.

Step 8

(Optional) lsp-mtu size

Example:

switch(config-router)# lsp-mtu 600
(Optional)

Sets the MTU for LSPs in this IS-IS instance. The range is from 128 to 4352 bytes. The default is 1492.

Step 9

(Optional) maximum-paths number

Example:

switch(config-router)# maximum-paths 6
(Optional)

Configures the maximum number of equal-cost paths that IS-IS maintains in the route table. The range is from 1 to 64. The default is 8.

Step 10

(Optional) reference-bandwidth bandwidth-value {Mbps | Gbps}

Example:

switch(config-router)# reference-bandwidth
100 Gbps
(Optional)

Sets the default reference bandwidth used for calculating the IS-IS cost metric. The range is from 1 to 4000 Gbps. The default is 40 Gbps.

Step 11

(Optional) clear isis [instance-tag] adjacency [* | system-id | interface]

Example:

switch(config-router)# clear isis adjacency *
(Optional)

Clears neighbor statistics and removes adjacencies for this IS-IS instance.

Step 12

(Optional) copy running-config startup-config

Example:

switch(config-router)# copy running-config
startup-config
(Optional)

Saves this configuration change.

Example

The following example shows how to create an IS-IS instance in a level 2 area:

switch# configure terminal
switch(config)# router isis Enterprise
switch(config-router)# net 47.0004.004d.0001.0001.0c11.1111.00
switch(config-router)# is-type level-2
switch(config-router)# copy running-config startup-config

Restarting an IS-IS Instance

You can restart an IS-IS instance. This action clears all neighbors for the instance.

To restart an IS-IS instance and remove all associated neighbors, use the following command:

Procedure

Command or Action Purpose

restart isis instance-tag

Example:

switch(config)# restart isis Enterprise

Restarts the IS-IS instance and removes all neighbors.

Shutting Down IS-IS

You can shut down the IS-IS instance. This action disables this IS-IS instance and retains the configuration.

To shut down the IS-IS instance, use the following command in router configuration mode:

Procedure

Command or Action Purpose

shutdown

Example:

switch(config-router)# shutdown

Disables the IS-IS instance.

Configuring IS-IS on an Interface

You can add an interface to an IS-IS instance.

Before you begin

You must enable IS-IS (see the Enabling the IS-IS Feature section).

Procedure

  Command or Action Purpose

Step 1

configure terminal

Example:

switch# configure terminal
switch(config)#

Enters global configuration mode.

Step 2

interface interface-type slot/port

Example:

switch(config)# interface ethernet 1/2
switch(config-if)#

Enters interface configuration mode.

Step 3

(Optional) medium {broadcast | p2p}

Example:

switch(config-if)# medium p2p
(Optional)

Configures the broadcast or point-to-point mode for the interface. IS-IS inherits this mode.

Step 4

{ip | ipv6} router isis instance-tag

Example:

switch(config-if)# ip router isis
Enterprise

Associates this IPv4 or IPv6 interface with an IS-IS instance.

Step 5

(Optional) show isis [vrf vrf-name] [instance-tag] interface [interface-type slot/port]

Example:

switch(config-if)# show isis Enterprise
ethernet 1/2
(Optional)

Displays IS-IS information for an interface.

Step 6

(Optional) isis circuit-type {level-1 | level-2 | level-1-2}

Example:

switch(config-if)# isis circuit-type
level-2
(Optional)

Sets the type of adjacency that this interface participates in. Use this command only for routers that participate in both Level 1 and Level 2 areas.

Step 7

(Optional) isis metric value {level-1 | level-2}

Example:

switch(config-if)# isis metric 30
(Optional)

Sets the IS-IS metric for this interface. The range is from 1 to 16777214. The default is 10.

Step 8

(Optional) isis passive {level-1 | level-2 | level-1-2}

Example:

switch(config-if)# isis passive level-2
(Optional)

Prevents the interface from forming adjacencies but still advertises the prefix associated with the interface.

Step 9

(Optional) copy running-config startup-config

Example:

switch(config-if)# copy running-config
startup-config
(Optional)

Saves this configuration change.

Example

This example shows how to add the Ethernet 1/2 interface to an IS-IS instance:

switch# configure terminal
switch(config)# interface ethernet 1/2
switch(config-if)# ip router isis Enterprise
switch(config-if)# copy running-config startup-config

Shutting Down IS-IS on an Interface

You can gracefully shut down IS-IS on an interface. This action removes all adjacencies and stops IS-IS traffic on this interface but preserves the IS-IS configuration.

To disable IS-IS on an interface, use the following command in interface configuration mode:

Procedure

Command or Action Purpose

isis shutdown

Example:

switch(config-if)# isis shutdown

Disables IS-IS on this interface. The IS-IS interface configuration remains.

Configuring IS-IS Authentication in an Area

You can configure IS-IS to authenticate LSPs in an area.

Before you begin

You must enable IS-IS. See Enabling the IS-IS Feature.

You must configure the keychain in global configuration mode if you reference it from the IS-IS configuration. See "Configuring Keychain Management" in the Cisco Nexus 9000 Series NX-OS Security Configuration Guide.

Procedure

  Command or Action Purpose

Step 1

configure terminal

Example:

switch# configure terminal
switch(config)#

Enters global configuration mode.

Step 2

router isis instance-tag

Example:

switch(config)# router isis Enterprise
switch(config-router)#

Creates a new IS-IS instance with the configured instance tag.

Step 3

authentication-type {cleartext | md5} {level-1 | level-2}

Example:

switch(config-router)#
authentication-type cleartext level-2

Sets the authentication method used for a Level 1 or Level 2 area as cleartext or as an MD5 authentication digest.

Step 4

authentication key-chain key {level-1 | level-2}

Example:

switch(config-router)# authentication
key-chain ISISKey level-2

Configures the authentication key that is used for an IS-IS area-level authentication.

Step 5

(Optional) authentication-check {level-1 | level-2}

Example:

switch(config-router)#
authentication-check level-2
(Optional)

Enables checking the authentication parameters in a received packet.

Step 6

(Optional) copy running-config startup-config

Example:

switch(config-router)# copy running-config
startup-config
(Optional)

Saves this configuration change.

Example

This example shows how to configure cleartext authentication on an IS-IS instance:

switch# configure terminal
switch(config)# router isis Enterprise
switch(config-router)# authentication-type cleartext level-2
switch(config-router)# authentication key-chain ISISKey level-2
switch(config-router)# copy running-config startup-config

Configuring IS-IS Authentication on an Interface

You can configure IS-IS to authenticate Hello packets on an interface.

Before you begin

You must enable IS-IS (see the Enabling the IS-IS Feature section).

Procedure

  Command or Action Purpose

Step 1

configure terminal

Example:

switch# configure terminal
switch(config)#

Enters global configuration mode.

Step 2

interface interface-type slot/port

Example:

switch(config)# interface ethernet 1/2
switch(config-if)#

Enters interface configuration mode.

Step 3

isis authentication-type {cleartext | md5} {level-1 | level-2}

Example:

switch(config-if)# isis
authentication-type cleartext level-2

Sets the authentication type for IS-IS on this interface as cleartext or as an MD5 authentication digest.

Step 4

isis authentication key-chain key {level-1 | level-2}

Example:

switch(config-if)# isis
authentication-key ISISKey level-2

Configures the authentication key used for IS-IS on this interface.

Step 5

(Optional) isis authentication-check {level-1 | level-2}

Example:

switch(config-if)# isis
authentication-check
(Optional)

Enables checking the authentication parameters in a received packet.

Step 6

(Optional) copy running-config startup-config

Example:

switch(config-if)# copy running-config
startup-config
(Optional)

Saves this configuration change.

Example

This example shows how to configure cleartext authentication on an IS-IS instance:

switch# configure terminal
switch(config)# interface ethernet 1/2
switch(config-if)# isis authentication-type cleartext level-2
switch(config-if)# isis authentication key-chain ISISKey
switch(config-if)# copy running-config startup-config

Configuring a Mesh Group

You can add an interface to a mesh group to limit the amount of LSP flooding for interfaces in that mesh group. You can optionally block all LSP flooding on an interface in a mesh group.

To add an interface to a mesh group, use the following command in interface configuration mode:

Procedure

Command or Action Purpose

isis mesh-group {blocked | mesh-id}

Example:

switch(config-if)# isis mesh-group 1

Adds this interface to a mesh group. The range is from 1 to 4294967295.

Configuring a Designated Intermediate System

You can configure a router to become the designated intermediate system (DIS) for a multiaccess network by setting the interface priority.

To configure the DIS, use the following command in interface configuration mode:

Procedure

Command or Action Purpose

isis priority number {level-1 | level-2}

Example:

switch(config-if)# isis priority 100
level-1

Sets the priority for DIS selection. The range is from 0 to 127. The default is 64.

Configuring Dynamic Host Exchange

You can configure IS-IS to map between the system ID and the hostname for a router using dynamic host exchange.

To configure dynamic host exchange, use the following command in router configuration mode:

Procedure

Command or Action Purpose

hostname dynamic

Example:

switch(config-router)# hostname dynamic

Enables dynamic host exchange.

Setting the Overload Bit

You can configure the router to signal other routers not to use this router as an intermediate hop in their shortest path first (SPF) calculations. You can optionally configure the overload bit temporarily on startup, until BGP converges.

In addition to setting the overload bit, you might also want to suppress certain types of IP prefix advertisements from LSPs for Level 1 or Level 2 traffic.

To set the overload bit, use the following command in router configuration mode:

Procedure

Command or Action Purpose

set-overload-bit {always | on-startup {seconds | wait-for bgp as-number}} [suppress [interlevel | external]]

Example:

switch(config-router)# set-overload-bit
on-startup 30

Sets the overload bit for IS-IS. The seconds range is from 5 to 86400.

Configuring the Attached Bit

You can configure the attached bit to control which Level 1/Level 2 router that the Level 1 routers use as the default route to the Level 2 area. If you disable setting the attached bit, the Level 1 routers do not use this Level 1/Level 2 router to reach the Level 2 area.

To configure the attached bit for a Level 1/Level 2 router, use the following command in router configuration mode:

Procedure

Command or Action Purpose

[no] set-attached-bit

Example:

switch(config-router)# no attached-bit

Configures the Level 1/Level 2 router to set the attached bit. This feature is enabled by default.

Configuring the Transient Mode for Hello Padding

You can configure the transient mode for hello padding to pad hello packets when IS-IS establishes adjacency and remove that padding after IS-IS establishes adjacency.

To configure the mode for hello padding, use the following command in interface configuration mode:

Procedure

Command or Action Purpose

[no] isis hello-padding

Example:

switch(config-if)# no isis hello-padding

Pads the hello packet to the full maximum transmission unit (MTU). The default is enabled. Use the no form of this command to configure the transient mode of hello padding.

Configuring a Summary Address

You can create aggregate addresses that are represented in the routing table by a summary address. One summary address can include multiple groups of addresses for a given level. Cisco NX-OS advertises the smallest metric of all the more-specific routes.

Before you begin

You must enable IS-IS (see the Enabling the IS-IS Feature section).

Procedure

  Command or Action Purpose

Step 1

configure terminal

Example:

switch# configure terminal
switch(config)#

Enters global configuration mode.

Step 2

router isis instance-tag

Example:

switch(config)# router isis Enterprise
switch(config-router)#

Creates a new IS-IS instance with the configured instance tag.

Step 3

address-family {ipv4 | ipv6} unicast

Example:


switch(config-router)# address-family
ipv4 unicast
switch(config-router-af)#

Enters address family configuration mode.

Step 4

summary-address ip-prefix/mask-len {level-1 | level-2 | level-1-2}

Example:

switch(config-router-af)#
summary-address 192.0.2.0/24 level-2

Configures a summary address for an IS-IS area for IPv4 or IPv6 addresses.

Step 5

(Optional) show isis [vrfvrf-name] {ip | ipv6} summary-address ip-prefix [longer-prefixes]

Example:

Example:
switch(config-router-af)# show isis ip
summary-address
(Optional)

Displays IS-IS IPv4 or IPv6 summary address information.

Step 6

(Optional) copy running-config startup-config

Example:

switch(config-router-af)# copy running-config
startup-config
(Optional)

Saves this configuration change.

Example

This example shows how to configure an IPv4 unicast summary address for IS-IS:

switch# configure terminal
switch(config)# router isis Enterprise
switch(config-router)# address-family ipv4 unicast
switch(config-router-af)# summary-address 192.0.2.0/24 level-2
switch(config-router-af)# copy running-config startup-config

Configuring Redistribution

You can configure IS-IS to accept routing information from another routing protocol and redistribute that information through the IS-IS network. You can optionally assign a default route for redistributed routes.

Before you begin

You must enable IS-IS (see the Enabling the IS-IS Feature section).

Procedure

  Command or Action Purpose

Step 1

configure terminal

Example:

switch# configure terminal
switch(config)#

Enters global configuration mode.

Step 2

router isis instance-tag

Example:

switch(config)# router isis Enterprise
switch(config-router)#

Creates a new IS-IS instance with the configured instance tag.

Step 3

address-family {ipv4 | ipv6} unicast

Example:

switch(config-router)# address-family
ipv4 unicast
switch(config-router-af)#

Enters address family configuration mode.

Step 4

redistribute {bgp as | {eigrp | isis | ospf | ospfv3 | rip} instance-tag | static | direct} route-map map-name

Example:

switch(config-router-af)# redistribute
eigrp 201 route-map ISISmap

Redistributes routes from other protocols into IS-IS.

Step 5

(Optional) default-information originate [always] [route-map map-name]

Example:

switch(config-router-af)#
default-information originate always
(Optional)

Generates a default route into IS-IS.

Step 6

(Optional) distribute {level-1 | level-2} into {level-1 | level-2} {route-map route-map | all}

Example:

switch(config-router-af)# distribute
level-1 into level-2 all
(Optional)

Redistributes routes from one IS-IS level to the other IS-IS level.

Step 7

(Optional) show isis [vrf vrf-name] {ip | ipv6} route ip-prefix [detail | longer-prefixes [summary | detail]]

Example:

switch(config-router-af)# show isis ip
route
(Optional)

Shows the IS-IS routes.

Step 8

(Optional) copy running-config startup-config

Example:

switch(config-router-af)# copy running-config
startup-config
(Optional)

Saves this configuration change.

Example

This example shows how to redistribute EIGRP into IS-IS:

switch# configure terminal
switch(config)# router isis Enterprise
switch(config-router)# address-family ipv4 unicast
switch(config-router-af)# redistribute eigrp 201 route-map ISISmap
switch(config-router-af)# copy running-config startup-config

Limiting the Number of Redistributed Routes

Route redistribution can add many routes to the IS-IS route table. You can configure a maximum limit to the number of routes accepted from external protocols. IS-IS provides the following options to configure redistributed route limits:

  • Fixed limit—Logs a message when IS-IS reaches the configured maximum. IS-IS does not accept any more redistributed routes. You can optionally configure a threshold percentage of the maximum where IS-IS logs a warning when that threshold is passed.

  • Warning only—Logs a warning only when IS-IS reaches the maximum. IS-IS continues to accept redistributed routes.

  • Withdraw—Starts the timeout period when IS-IS reaches the maximum. After the timeout period, IS-IS requests all redistributed routes if the current number of redistributed routes is less than the maximum limit. If the current number of redistributed routes is at the maximum limit, IS-IS withdraws all redistributed routes. You must clear this condition before IS-IS accepts more redistributed routes. You can optionally configure the timeout period.

Before you begin

You must enable IS-IS.

Procedure

  Command or Action Purpose

Step 1

configure terminal

Example:

switch# configure terminal
switch(config)#

Enters global configuration mode.

Step 2

router isis instance-tag

Example:

switch(config)# router isis Enterprise
switch(config-router)#

Creates a new IS-IS instance with the configured instance tag.

Step 3

redistribute {bgp id | direct | eigrpid | isis id | ospf id | rip id | static} route-map map-name

Example:

switch(config-router)# redistribute bgp
route-map FilterExternalBGP

Redistributes the selected protocol into IS-IS through the configured route map.

Step 4

redistribute maximum-prefix max [threshold] [warning-only | withdraw [num-retries timeout]]

Example:

switch(config-router)# redistribute
maximum-prefix 1000 75 warning-only

Specifies a maximum number of prefixes that IS-IS distributes. The range is from 1 to 65535. You can optionally specify the following:

  • threshold —Percent of maximum prefixes that triggers a warning message.

  • warning-only —Logs a warning message when the maximum number of prefixes is exceeded.

  • withdraw —Withdraws all redistributed routes. You can optionally try to retrieve the redistributed routes. The num-retries range is from 1 to 12. The timeout is 60 to 600 seconds. The default is 300 seconds. Use the clear isis redistribution command if all routes are withdrawn.

Step 5

(Optional) show running-config isis

Example:

switch(config-router)# show
running-config isis
(Optional)

Displays the IS-IS configuration.

Step 6

(Optional) copy running-config startup-config

Example:

switch(config-router)# copy
running-config startup-config
(Optional)

Saves this configuration change.

Example

This example shows how to limit the number of redistributed routes into IS-IS:

switch# configure terminal
switch(config)# router isis Enterprise
switch(config-router)# redistribute bgp route-map FilterExternalBGP
switch(config-router)# redistribute maximum-prefix 1000 75

Advertising Only Passive Interface Prefixes

You can specify that only prefixes belonging to passive interfaces are advertised in the system link-state packets (LSPs).

Procedure

  Command or Action Purpose

Step 1

configure terminal

Example:

switch# configure terminal
switch(config)#

Enters global configuration mode.

Step 2

router isis instance-tag

Example:

switch(config)# router isis 200
switch(config-router)#

Creates a new IS-IS instance with the configured instance tag.

Step 3

address-family {ipv4 | ipv6} unicast

Example:


switch(config-router)# address-family
ipv4 unicast
switch(config-router-af)#

Enters address family configuration mode.

Step 4

[no] advertise passive-only {level-1 | level-2}

Example:

switch(config-router-af)# advertise passive-only level-1
switch(config-router-af)#

Enables the advertisement of only those prefixes that belong to passive interfaces.

Example

This example shows how to enable only the advertising of prefixes belonging to passive interfaces:


switch# configure terminal
switch(config)# interface ethernet 1/2
switch(config-if)# address-family ipv4 unicast
switch(config-router-af)# advertise passive-only level-1

Suppressing Prefixes on an Interface

You can allow an IS-IS interface to participate in forming adjacencies without advertising connected prefixes in the system link-state packets (LSPs).

Procedure

  Command or Action Purpose

Step 1

configure terminal

Example:

switch# configure terminal
switch(config)#

Enters global configuration mode.

Step 2

interface interface-type slot/port

Example:

switch(config)# interface ethernet 1/2
switch(config-if)#

Enters interface configuration mode.

Step 3

[no] isis suppress

Example:

switch(config-if)# isis suppress
switch(config-if)#

Disables the advertisement of connected prefixes on the interface.

Example

This example shows how to suppress the advertising of an interface's connected prefixes in the system link-state packets (LSPs):


switch# configure terminal
switch(config)# interface ethernet 1/2
switch(config-if)# isis suppress

Disabling Strict Adjacency Mode

When both IPv4 and IPv6 address families are enabled, strict adjacency mode is enabled by default. In this mode, the device does not form an adjacency with any router that does not have both address families enabled. You can disable strict adjacency mode using the no adjacency-check command.

Before you begin

You must enable IS-IS (see the Enabling the IS-IS Feature section).

Procedure

  Command or Action Purpose

Step 1

configure terminal

Example:

switch# configure terminal
switch(config)#

Enters global configuration mode.

Step 2

router isis instance-tag

Example:

switch(config)# router isis Enterprise
switch(config-router)#

Creates a new IS-IS instance with the configured instance tag.

Step 3

address-family ipv4 unicast

Example:

switch(config-router)# address-family
ipv4 unicast
switch(config-router-af)#

Enters address family configuration mode.

Step 4

no adjacency-check

Example:

switch(config-router-af)# no
adjacency-check

Disables strict adjacency mode for the IPv4 address family.

Step 5

exit

Example:

switch(config-router-af)# exit
switch(config-router)#

Exits address family configuration mode.

Step 6

address-family ipv6 unicast

Example:

switch(config-router)# address-family
ipv6 unicast
switch(config-router-af)#

Enters address family configuration mode.

Step 7

no adjacency-check

Example:

switch(config-router-af)# no
adjacency-check

Disables strict adjacency mode for the IPv6 address family.

Step 8

(Optional) show running-config isis

Example:

switch(config-router-af)# show
running-config isis
(Optional)

Displays the IS-IS configuration.

Step 9

(Optional) copy running-config startup-config

Example:

switch(config-router-af)# copy
running-config startup-config
(Optional)

Saves this configuration change.

Configuring a Graceful Restart

You can configure a graceful restart for IS-IS.

Before you begin

You must enable IS-IS (see the Enabling the IS-IS Feature section).

Procedure

  Command or Action Purpose

Step 1

configure terminal

Example:

switch# configure terminal
switch(config)#

Enters global configuration mode.

Step 2

router isis instance-tag

Example:

switch(config)# router isis Enterprise
switch(config-router)#

Creates a new IS-IS process with the configured name.

Step 3

graceful restart

Example:

switch(config-router)# graceful-restart

Enables a graceful restart and the graceful restart helper functionality. Enabled by default.

Step 4

graceful-restart t3 manual time

Example:

switch(config-router)# graceful-restart
t3 manual 300

Configures the graceful restart T3 timer. The range is from 30 to 65535 seconds. The default is 60.

Step 5

(Optional) show running-config isis

Example:

switch(config-router)# show
running-config isis
(Optional)

Displays the IS-IS configuration.

Step 6

(Optional) copy running-config startup-config

Example:

switch(config-router)# copy
running-config startup-config
(Optional)

Copies the running configuration to the startup configuration.

Example

This example shows how to enable a graceful restart:
switch# configure terminal
switch(config)# router isis Enterprise
switch(config-router)# graceful-restart
switch(config-router)# copy running-config startup-config

Configuring Virtualization

You can configure multiple IS-IS instances and multiple VRFs and use the same or multiple IS-IS instances in each VRF. You assign an IS-IS interface to a VRF.

You must configure a NET for the configured VRF.


Note


Configure all other parameters for an interface after you configure the VRF for an interface. Configuring a VRF for an interface deletes all the configuration for that interface.


Before you begin

You must enable IS-IS (see the Enabling the IS-IS Feature section).

Procedure

  Command or Action Purpose

Step 1

configure terminal

Example:

switch# configure terminal
switch(config)#

Enters global configuration mode.

Step 2

vrf context vrf-name

Example:

switch(config)# vrf context
RemoteOfficeVRF
switch(config-vrf)#

Creates a new VRF and enters VRF configuration mode.

Step 3

exit

Example:

switch(config-vrf)# exit
switch(config)#

Exits VRF configuration mode.

Step 4

router isis instance-tag

Example:

switch(config)# router isis Enterprise
switch(config-router)#

Creates a new IS-IS instance with the configured instance tag.

Step 5

(Optional) vrf vrf-name

Example:

switch(config-router)# vrf
RemoteOfficeVRF
switch(config-router-vrf)#
(Optional)

Enters router VRF configuration mode.

Step 6

net network-entity-title

Example:

switch(config-router-vrf)# net
47.0004.004d.0001.0001.0c11.1111.00

Configures the NET for this IS-IS instance.

Step 7

exit

Example:

switch(config-router-vrf)# exit
switch(config-router)#

Exits router VRF configuration mode.

Step 8

exit

Example:

switch(config-router)# exit
switch(config)#

Exits router configuration mode.

Step 9

interface ethernet slot/port

Example:

switch(config)# interface ethernet 1/2
switch(config-if)#

Enters interface configuration mode.

Step 10

vrf member vrf-name

Example:

switch(config-if)# vrf member
RemoteOfficeVRF

Adds this interface to a VRF.

Step 11

{ip | ipv6) address ip-prefix/length

Example:

switch(config-if)# ip address
192.0.2.1/16

Configures an IP address for this interface. You must complete this step after you assign this interface to a VRF.

Step 12

{ip | ipv6) router isis instance-tag

Example:

switch(config-if)# ip router isis
Enterprise

Associates this IPv4 or IPv6 interface with an IS-IS instance.

Step 13

(Optional) show isis [vrf vrf-name] [instance-tag] interface [interface-type slot/port]

Example:

switch(config-if)# show isis Enterprise
ethernet 1/2
(Optional)

Displays IS-IS information for an interface in a VRF.

Step 14

(Optional) copy running-config startup-config

Example:

switch(config-if)# copy running-config
startup-config
(Optional)

Saves this configuration change.

Example

This example shows how to create a VRF and add an interface to the VRF:

switch# configure terminal
switch(config)# vrf context NewVRF
switch(config-vrf)# exit
switch(config)# router isis Enterprise
switch(config-router)# vrf NewVRF
switch(config-router-vrf)# net 47.0004.004d.0001.0001.0c11.1111.00
switch(config-router-vrf)# exit
switch(config-router)# exit
switch(config)# interface ethernet 1/2
switch(config-if)# vrf member NewVRF
switch(config-if)# ip address 192.0.2.1/16
switch(config-if)# ip router isis Enterprise
switch(config-if)# copy running-config startup-config

Tuning IS-IS

You can tune IS-IS to match your network requirements.

You can use the following optional commands to tune IS-IS:

Procedure

  Command or Action Purpose

Step 1

(Optional) lsp-gen-interval [level-1 | level-2] lsp-max-wait [lsp-initial-wait lsp-second-wait]

Example:

switch(config-router)# lsp-gen-interval
level-1 500 500 500
(Optional)

Configures the IS-IS throttle for LSP generation. The optional parameters are as follows:

  • lsp-max-wait —The maximum wait between the trigger and LSP generation. The range is from 500 to 65535 milliseconds.

  • lsp-initial-wait —The initial wait between the trigger and LSP generation. The range is from 50 to 65535 milliseconds.

  • lsp-second-wait —The second wait used for LSP throttle during backoff. The range is from 50 to 65535 milliseconds.

Step 2

(Optional) max-lsp-lifetime lifetime

Example:

switch(config-router)# max-lsp-lifetime
500
(Optional)
Sets the maximum LSP lifetime in seconds. The range is from 1 to 65535. The default is 1200.

Step 3

(Optional) metric-style transition

Example:

switch(config-router)# metric-style
transition
(Optional)
Enables IS-IS to generate and accept both narrow metric-style Type Length Value (TLV) objects and wide metric-style TLV objects. The default is disabled.

Step 4

(Optional) spf-interval [level-1 | level-2] spf-max-wait [spf-initial-wait spf-second-wait]

Example:

switch(config-router)# spf-interval
level-2 500 500 500
(Optional)

Configures the interval between LSA arrivals. The optional parameters are as follows:

  • lsp-max-wait —The maximum wait between the trigger and SPF computation. The range is from 500 to 65535 milliseconds.

  • lsp-initial-wait —The initial wait between the trigger and SPF computation. The range is from 50 to 65535 milliseconds.

  • lsp-second-wait —The second wait used for SPF computation during backoff. The range is from 50 to 65535 milliseconds.

Step 5

(Optional) adjacency-check

Example:

switch(config-router-af)# adjacency-check
(Optional)
Performs an adjacency check to verify that an IS-IS instance forms an adjacency only with a remote IS-IS entity that supports the same address family. This command is enabled by default.

Step 6

(Optional) isis csnp-interval seconds [level-1 | level-2]

Example:

switch(config-if)# isis csnp-interval 20
(Optional)
Sets the complete sequence number PDU (CNSP) interval in seconds for IS-IS. The range is from 1 to 65535. The default is 10.

Step 7

(Optional) isis hello-interval seconds [level-1 | level-2]

Example:

switch(config-if)# isis hello-interval 20
(Optional)
Sets the hello interval in seconds for IS-IS. The range is from 1 to 65535. The default is 10.

Step 8

(Optional) isis hello-multiplier num [level-1 | level-2]

Example:

switch(config-if)# isis hello-multiplier 20
(Optional)
Specifies the number of IS-IS hello packets that a neighbor must miss before the router tears down an adjacency. The range is from 3 to 1000. The default is 3.

Step 9

(Optional) isis lsp-interval milliseconds

Example:

switch(config-if)# isis lsp-interval 20
(Optional)
Sets the interval in milliseconds between LSPs sent on this interface during flooding. The range is from 10 to 65535. The default is 33.

Verifying the IS-IS Configuration

To display the IS-IS configuration, perform one of the following tasks:

Command Purpose
show isis [instance-tag] adjacency [interface] [detail | summary] [vrf vrf-name]

Displays the IS-IS adjacencies. Use the clear isis adjacency command to clear these statistics.

Note

 

If the hostname is less than 14 characters, the show isis adjacency command displays the hostname. Otherwise, the System ID is displayed.

show isis [instance-tag] database [level-1 | level-2] [detail | summary] [lsp-id] [{ip | ipv6} prefixip-prefix] | [router-id router-id] | [adjacency node-id] | [zero-sequence]} [vrf vrf-name]

Displays the IS-IS LSP database.

show isis [instance-tag] hostname [vrf vrf-name]

Displays the dynamic host exchange information.

show isis [instance-tag] interface [brief | interface] [level-1 | level-2] [vrfvrf-name]

Displays the IS-IS interface information.

show isis [instance-tag] mesh-group [mesh-id] [vrfvrf-name]

Displays the mesh group information.

show isis [instance-tag] protocol [vrf vrf-name]

Displays information about the IS-IS protocol.

show isis [instance-tag] {ip | ipv6} redistribute route [ip-address | summary] [ip-prefix] [longer-prefixes [summary]] [vrf vrf-name]

Displays the IS-IS route redistribution information.

show isis [instance-tag] {ip | ipv6} route [ip-address | summary] [ip-prefix] [longer-prefixes [summary]] [detail] [vrf vrf-name]

Displays the IS-IS route table.

show isis [instance-tag] rrm [interface] [vrf vrf-name]

Displays the IS-IS interface retransmission information.

show isis [instance-tag] srm [interface] [vrf vrf-name]

Displays the IS-IS interface flooding information.

show isis [instance-tag] ssn [interface] [vrf vrf-name]

Displays the IS-IS interface PSNP information.

show isis [instance-tag] {ip | ipv6} summary-address] [ip-address] | [ip-prefix] [vrf vrf-name]

Displays the IS-IS summary address information.

show running-configuration isis

Displays the current running IS-IS configuration.

show tech-support isis [detail]

Displays the technical support details for IS-IS.

Monitoring IS-IS

To display IS-IS statistics, use the following commands:

Command Purpose
show isis [instance-tag] adjacency [interface] [system-ID] [detail] [summary] [vrf vrf-name]

Displays the IS-IS adjacency statistics.

show isis [instance-tag] database [level-1 | level-2] [detail] | summary] [lsip] {[adjacency id {ip | ipv6} prefix prefix] [router-id id] [zero-sequence]} [vrf vrf-name]

Displays the IS-IS database statistics.

show isis [instance-tag] statistics [interface] [vrf vrf-name]

Displays the IS-IS interface statistics.

show isis {ip | ipv6} route-map statistics redistribute {bgp id | eigrp id | isis id | ospf id | rip id | static} [vrf vrf-name]

Displays the IS-IS redistribution statistics.

show isis ip route-map statistics distribute {level-1 | level-2} into {level-1 | level-2} [vrf vrf-name]

Displays IS-IS distribution statistics for routes distributed between levels.

show isis [instance-tag] spf-log [detail] [vrf vrf-name]

Displays the IS-IS SPF calculation statistics.

show isis [instance-tag] traffic [interface] [vrf vrf-name]

Displays the IS-IS traffic statistics.

To clear IS-IS configuration statistics, perform one of the following tasks:

Command Purpose
clear isis [instance-tag] adjacency [* | [interface] [system-id id]] [vrf vrf-name]

Clears the IS-IS adjacency statistics.

clear isis {ip | ipv6} route map statistics redistribute {bgp id | direct | eigrp id | isis id | ospf id | rip id | static} [vrf vrf-name]

Clears the IS-IS redistribution statistics

clear isis route-map statistics distribute {level-1 | level-2} into {level-1 | level-2} [vrf vrf-name]

Clears IS-IS distribution statistics for routes distributed between levels.

clear isis [instance-tag] statistics [* | interface] [vrf vrf-name]

Clears the IS-IS interface statistics.

clear isis [instance-tag] traffic [* | interface] [vrf vrf-name]

Clears the IS-IS traffic statistics.

Configuration Examples for IS-IS

This example shows how to configure IS-IS:

router isis Enterprise
 is-type level-1
 net 49.0001.0000.0000.0003.00
 graceful-restart
 address-family ipv4 unicast
  default-information originate 

interface ethernet 2/1
 ip address 192.0.2.1/24
 isis circuit-type level-1
 ip router isis Enterprise