Configuring IS-IS with CLI

This section provides information to configure the Intermediate System-to-Intermediate System (IS-IS) protocol using the command line interface.

Topics in this section include:

IS-IS Configuration Overview

The 7705 SAR supports multi-instance IS-IS (MI-IS-IS). For IS-IS to operate on 7705 SAR routers, IS-IS must be explicitly enabled for each instance, and at least one area address and interface must be configured for the instance. If IS-IS is enabled but no area address or interface is configured, no routes are exchanged. When at least one area address and interface are configured, adjacencies can be formed and routes exchanged.

This section contains the following topics:

Router Levels

The router’s IS-IS level capability can be configured globally and on a per-interface basis. The interface level parameters specify the interface’s routing level. The neighbor capability and parameters define the adjacencies that are established.

When an IS-IS instance is enabled, the global default level capability is level 1/2, which enables the router to operate as either a level 1 and/or a level 2 router with the associated databases. The router runs separate shortest path first (SPF) calculations for the level 1 area routing and for the level 2 multi-area routing to create the IS-IS routing table for the IS-IS instance.

The level value can be modified on both or either of the global and interface levels to be only level 1-capable, only level 2-capable, or both level 1- and level 2-capable.

If the default value is not modified on any routers in the area, the routers try to form both level 1 and level 2 adjacencies on all IS-IS interfaces. If the default values are modified to level 1 or level 2, the number of adjacencies formed are limited to that level only.

Area Addresses

The area-id command specifies the area address portion of the NET, which is used to define the IS-IS area to which the router will belong. At least one area ID must be configured per instance for each router participating in IS-IS. A maximum of three area IDs can be configured per router instance.

The area address identifies a point of connection to the network, such as a router interface, and is called a network service access point (NSAP). The routers in an area manage routing tables of destinations within the area. The Network Entity Title (NET) value is used to identify the IS-IS area to which the router belongs.

NSAP addresses are divided into three parts. Only the area ID portion is configurable:

  1. area ID – a variable-length field between 1 and 13 bytes that identifies the area to which the router belongs. This field includes the Authority and Format Identifier (AFI) as the first (most significant byte) and the area identifier.
  2. system ID – A 6-byte system identifier. This value is not configurable. The system ID is derived from the system or router ID and uniquely identifies the router.
  3. selector ID – A 1-byte selector identifier that is always 00 for an NET. This value is not configurable.

The area ID portion of the NET can be manually configured with 1 to 13 bytes. If fewer than 13 bytes are entered, the rest of the field is padded with zeros.

Interface Level Capability

The level capability value configured on the interface level is compared to the level capability value configured on the global level to determine the type of adjacencies that can be established. The default value for 7705 SAR routers and interfaces is level 1/2. Table 38 lists capability combinations and the potential adjacencies that can be formed.

Table 38:  Potential Adjacency Capabilities  

Global Level

Interface Level

Potential Adjacency

Level 1/2

Level 1/2

Level 1 and/or level 2

Level 1/2

Level 1

Level 1 only

Level 1/2

Level 2

Level 2 only

Level 2

Level 1/2

Level 2 only

Level 2

Level 2

Level 2 only

Level 2

Level 1

None

Level 1

Level 1/2

Level 1 only

Level 1

Level 2

None

Level 1

Level 1

Level 1 only

Route Leaking

An autonomous system running IS-IS can be divided into level 1 areas with a level 2-connected subset (backbone) of the topology that interconnects all of the level 1 areas. Within each level 1 area, the routers exchange link-state information. Level 2 routers also exchange level 2 link-state information to compute routes between areas.

Routers in a level 1 area typically only exchange information within the level 1 area. For IP destinations not found in the prefixes in the level 1 database, the level 1 router forwards PDUs to the nearest level 1/2 router with the attachment bit set in its level 1 link-state PDU.

Routing to the closest level 1/2 router may lead to sub-optimal routing, because the shortest path to the destination is not always through the closest router. To reduce sub-optimal routing, route leaking provides a mechanism to leak (or redistribute) level 2 information into level 1 areas. By distributing more detailed information into the level 1 area, a level 1 router is able to make a better decision as to which level 1/2 router should forward the packet.

The Alcatel-Lucent implementation of IS-IS route leaking is in compliance with RFC 2966, Domain-wide Prefix Distribution with Two-Level IS-IS.

Basic IS-IS Configuration

The basic IS-IS configuration tasks that must be performed are:

  1. enable IS-IS
  2. modify the level capability on the global level from the default level 1/2 (if required)
  3. define area addresses
  4. configure IS-IS interfaces

The following output displays IS-IS default values:

ALU-A>config>router>isis# info detail
----------------------------------------------
    level-capability level-1/2
    no authentication-key
    no authentication-type
    authentication-check
    csnp-authentication
    lsp-lifetime 1200
    no export
    hello-authentication
    psnp-authentication
    no traffic-engineering
    no reference-bandwidth
    no disable-ldp-sync
    no multicast-import
    no unicast-import-disable
    spf-wait 10 1000 1000
    lsp-wait 5 0 1
    level 1
        no authentication-key
        no authentication-type
        csnp-authentication
        external-preference 160
        hello-authentication
        preference 15
        psnp-authentication
        no wide-metrics-only
    exit
    level 2
        no authentication-key
        no authentication-type
        csnp-authentication
        external-preference 165
        hello-authentication
        preference 18
        psnp-authentication
        no wide-metrics-only
    exit
    interface "system"
        level-capability level-1/2
        csnp-interval 10
        no hello-authentication-key
        no hello-authentication-type
        no interface-type
        lsp-pacing-interval 100
        retransmit-interval 5
        no bfd-enable ipv4
        no mesh-group
        no passive
        level 1
             no hello-authentication-key
             no hello-authentication-type
             hello-interval 9
             hello-multiplier 3
             no metric
             no passive
             priority 64
        exit
        level 2
             no hello-authentication-key
             no hello-authentication-type
             hello-interval 9
             hello-multiplier 3
             no metric
             no passive
             priority 64
        exit
        no shutdown
    exit
    no shutdown
----------------------------------------------
ALU-A>config>router>isis#

Configuring IS-IS Components

The following sections show the CLI syntax for:

Enabling IS-IS

An IS-IS instance must be enabled in order for the protocol to be active. If the isis command is used without an isis-instance is specified, the default (“base”) instance is used.

Note:

Careful planning is essential when implementing commands that can affect the behavior of global and interface levels.

To configure an IS-IS instance on a router, enter the following command:

CLI Syntax:
config
router router-name
isis [isis-instance]

Configuring an IS-IS Instance Level

When an IS-IS instance is enabled, the default level-capability is level 1/2. This means that the instance operates with both level 1 and level 2 routing capabilities. To change the default value in order for the instance to operate as a level 1 router or a level 2 router only, you must explicitly modify the level-capability value.

Select level-1 to route traffic only within an area. Select level-2 to route traffic to destinations outside an area, toward other eligible level 2 routers.

If the level-capability is modified, the protocol restarts, which likely affects adjacencies and routes.

The level-capability value can be configured on the global level and on the interface level. The level-capability value determines which level values can be assigned on the router instance level or on an interface level.

The level command lets you configure parameters for level 1 or level 2 instances (or both).

For more information on level and level-capability, see Router Levels and Interface Level Capability.

To configure the router instance level, enter the following command:

CLI Syntax:
config>router# isis [isis-instance]
level-capability {level-1 | level-2 | level-1/2}
level (1 | 2)

The following example displays a level configuration:

A:ALU-A>config>router>isis# info
----------------------------------------------
     level-capability level-1/2
     level 1
          no hello-authentication
          preference 150
     level 2
          preference 200
----------------------------------------------
A:ALU-A>config>router>isis#

Configuring ISO Area Addresses

Use the following syntax to configure an ISO area address. A maximum of three area addresses can be configured per router instance.

For more information on area addresses, see Area Addresses.

CLI Syntax:
config>router# isis [isis-instance]
area-id area-address

The following example shows the commands to configure the area ID.

Example:
config>router>isis#
config>router>isis# area-id 49.0180.0001
config>router>isis# area-id 49.0180.0002
config>router>isis# area-id 49.0180.0003

The following example displays an area ID configuration:

A:ALU-A>config>router>isis# info
----------------------------------------------
     area-id 49.0180.0001
     area-id 49.0180.0002
     area-id 49.0180.0003
----------------------------------------------
A:ALU-A>config>router>isis#

Configuring Global IS-IS Parameters

Commands and parameters configured on the global level are inherited by the interface levels. Parameters specified in the interface configuration override the global configuration for that interface.

Use the following syntax to configure global IS-IS parameters:

CLI Syntax:
config>router# isis [isis-instance]
level-capability {level-1 | level-2 | level-1/2}
[no] authentication-check
authentication-type {password | message-digest}
authentication-key {authentication-key | hash-key} [hash | hash2]
overload [timeout seconds]
traffic-engineering

The following example displays a global level configuration:

A:ALU-A>config>router>isis# info
----------------------------------------------
     level-capability level-2
     area-id 49.0180.0001
     area-id 49.0180.0002
     area-id 49.0180.0003
     authentication-key "H5vv6WrAAQU" hash
     authentication-type password
     overload timeout 90
     traffic-engineering
----------------------------------------------
A:ALU-A>config>router>isis#

Configuring Interface Parameters

By default, there are no interfaces associated with IS-IS. You must configure at least one IS-IS interface in order for IS-IS to work. An interface belongs to all areas configured on a router. Interfaces cannot belong to separate areas.

To enable IS-IS on an interface, first configure an IP interface in the config>router>interface context. Then, apply the interface in the config>router>isis>interface context.

You can configure both level 1 parameters and level 2 parameters on an interface. The level-capability value determines which level values are used.

Note:

For point-to-point interfaces, only the values configured under level 1 are used, regardless of the operational level of the interface.

Use the following syntax to configure interface parameters:

CLI Syntax:
config>router# isis [isis-instance]
level {1 | 2}
[no] wide-metrics-only
interface ip-int-name
level-capability {level-1 | level-2 | level-1/2}
mesh-group [value | blocked]
interface-type {broadcast | point-to-point}

The following example displays a global level and interface configuration:

----------------------------------------------
A:ALU-A>config>router>isis# info
     level-capability level-2
     area-id 49.0180.0001
     area-id 49.0180.0002
     area-id 49.0180.0003
     authentication-key "H5vv6WrAAQU" hash
     authentication-type password
     traffic-engineering
     level 1
          wide-metrics-only
     exit
     level 2
          wide-metrics-only
     exit
     interface "system"
     exit
     interface "ALU-1-2"
          level-capability level-2
          mesh-group 85
     exit
     interface "ALU-1-3"
          level-capability level-1
          interface-type point-to-point
          mesh-group 101
     exit
     interface "ALU-1-5"
          level-capability level-1
          interface-type point-to-point
          mesh-group 85
     exit
     interface "to-103"
          mesh-group 101
     exit
----------------------------------------------
A:ALU-A>config>router>isis#

Example 1: Configuring a Level 1 Area

Interfaces are configured in the config>router>interface context. Figure 12 shows a level 1 area configuration.

Figure 12:  Configuring a Level 1 Area 

The following example shows the commands to configure a level 1 area:

Example:
A:ALU-A>config>router# isis
..>isis# area-id 49.0180.0001
..>isis# level-capability level-1
..>isis# interface system
..>isis>if# exit
..>isis# interface “A-B”
..>isis>if# exit
..>isis# interface “A-C”
..>isis>if# exit
..>isis#
A:ALU-B>config>router# isis
..>isis# area-id 49.0180.0001
..>isis# level-capability level-1
..>isis# interface system
..>isis>if# exit
..>isis# interface “B-A”
..>isis>if# exit
..>isis# interface “B-C”
..>isis>if# exit
..>isis#
A:ALU-C>config>router# isis
..>isis# area-id 49.0180.0001
..>isis# level-capability level-1
..>isis# interface system
..>isis>if# exit
..>isis# interface "C-A"
..>isis>if# exit
..>isis# interface "C-B"
..>isis>if# exit

The following example displays a level 1 area configuration:

A:ALU-A>config>router>isis# info
----------------------------------------------
     level-capability level-1
     area-id 49.0180.0001
     interface "system"
     exit
     interface "A-B"
     exit
     interface "A-C"
     exit
----------------------------------------------
A:ALU-A>config>router>isis#
 
A:ALU-B>config>router>isis# info
----------------------------------------------
     level-capability level-1
     area-id 49.0180.0001
     interface "system"
     exit
     interface "B-A"
     exit
     interface "B-C"
     exit
----------------------------------------------
A:ALU-B>config>router>isis#
 
A:ALU-C>config>router>isis# info
#------------------------------------------
echo "ISIS"
----------------------------------------------
     level-capability level-1
     area-id 49.0180.0001
     interface "system"
     exit
     interface "C-A"
     exit
     interface "C-B"
     exit
----------------------------------------------
A:ALU-C>config>router>isis#

Example 2: Modifying Router Level Capability

In the previous example, ALU-A, ALU-B, and ALU-C are configured as level 1 systems. Level 1 systems communicate with other level 1 systems in the same area. In this example, ALU-A is modified to set the level capability to level 1/2. Now the level 1 systems in the area with NET 49.0180.0001 forward PDUs to ALU-A for destinations that are not in the local area, as shown in Figure 13.

Figure 13:  Configuring a Level 1/2 Area 

The following example shows the commands to configure a level 1/2 area for ALU-A:

Example:
A:ALU-A>config>router# isis
..>isis# level-capability level-1/2

Configuring Leaking

IS-IS allows a two-level hierarchy to route PDUs. Level 1 areas can be interconnected by a contiguous level 2 backbone.

The level 1 link-state database contains information only about that area. The level 2 link-state database contains information about the level 2 system and each of the level 1 systems in the area. A level 1/2 router contains information about both level 1 and level 2 databases. A level 1/2 router advertises information about its level 1 area toward the other level 1/2 or level 2 routers.

Packets with destinations outside the level 1 area are forwarded toward the closest level 1/2 router which, in turn, forwards the packets to the destination area.

Sometimes, the shortest path to an outside destination is not through the closest level 1/2 router, or the only level 1/2 router to forward packets out of an area is not operational. Route leaking provides a mechanism to leak level 2 information to level 1 routers to provide routing information regarding inter-area routes. Therefore, a level 1 router has more options to forward packets.

Configure a route policy to leak routes from level 2 into level 1 areas in the config> router>policy-options>policy-statement context. For more information on creating route policies, refer to the 7705 SAR OS Router Configuration Guide.

For more information on leaking, see Route Leaking.

The following example shows the commands to configure prefix list (“loops”) and policy statement (“leak”) parameters in the config>router context.

Example:
config>router>policy-options# prefix-list loops
..>policy-options>prefix-list# prefix 10.1.1.0/24 longer
..>policy-options>prefix-list# exit
..>policy-options# policy-statement leak
..>policy-options>policy-statement# entry 10
..>policy-options>policy-statement>entry# from
..>policy-options>policy-statement>entry>from# prefix-   list loops
..>policy-options>policy-statement>entry>from# level 2
..>policy-options>policy-statement>entry>from# exit
..>policy-options>policy-statement>entry# to
..>policy-options>policy-statement>entry>to# level 1
..>policy-options>policy-statement>entry>to# exit
..>policy-options>policy-statement>entry# action accept
..>policy-options>policy-statement>entry>action# exit
..>policy-options>policy-statement>entry# exit
..>policy-options>policy-statement# exit
..>policy-options# commit
..>policy-options#

The following example displays a prefix list and policy statement configuration:

A:ALU-A>config>router>policy-options# info
----------------------------------------------
     prefix-list "loops"
          prefix 10.1.1.0/24 longer
     exit
     policy-statement "leak"
          entry 10
               from
                    prefix-list "loop"
                    level 2
               exit
               to
                    level 1
               exit
               action accept
               exit
          exit
     exit
----------------------------------------------
A:ALU-A>config>router>policy-options#

Next, apply the policy in order to leak routes from level 2 into level 1 routers on ALU-A:

CLI Syntax:
config>router# isis [isis-instance]
export leak
A:ALU-A>config>router>isis# info
----------------------------------------------
     area-id 49.0180.0001
     area-id 49.0180.0002
     area-id 49.0180.0003
     authentication-key "//oZrvL4FPn06nyRIJ5E" hash
     authentication-type password
     no authentication-check
     export "leak"
...
----------------------------------------------
A:ALU-A>config>router>isis#

Then, after the policy is applied, create a policy statement (“isis-ext”) to redistribute external IS-IS routes from level 1 routers into the level 2 backbone (see Redistributing External IS-IS Routers). In the config>router context, configure the following policy statement parameters:

Example:
config>router>policy-options# begin
..>policy-options# policy-statement "isis-ext"
..>policy-options>policy-statement# entry 10
..>policy-options>policy-statement>entry$ from
..>policy-options>policy-statement>entry>from$ external
..>policy-options>policy-statement>entry>from# exit
..>policy-options>policy-statement>entry# to
..>policy-options>policy-statement>entry>to$ level 2
..>policy-options>policy-statement>entry>to# exit
..>policy-options>policy-statement>entry# action accept
..>policy-options>policy-statement>entry>action# exit
..>policy-options>policy-statement>entry# exit
..>policy-options>policy-statement# exit
..>policy-options# commit

Redistributing External IS-IS Routers

By default, IS-IS does not redistribute level 1 external routes into level 2. The policy to redistribute external IS-IS routes must be explicitly applied. Policies are created in the config>router>policy-options context. Refer to the 7705 SAR OS Router Configuration Guide for information on creating policies.

The following example displays the policy statement configuration:

A:ALU-A>config>router>policy-options# info
----------------------------------------------
     prefix-list "loops"
          prefix 10.1.1.0/24 longer
     exit
     policy-statement "leak"
          entry 10
            from
                 prefix-list "loop"
                 level 2
            exit
            to
                 level 1
            exit
            action accept
            exit
          exit
     exit
     policy-statement "isis-ext"
          entry 10
            from
                 external
            exit
            to
                 level 2
            exit
            action accept
            exit
          exit
     exit
----------------------------------------------
A:ALU-A>config>router>policy-options#

IS-IS Configuration Management Tasks

This section discusses the following IS-IS configuration management tasks:

Disabling IS-IS

The shutdown command disables an IS-IS instance on the router. The configuration settings are not changed, reset, or removed.

Use the following CLI syntax to disable an IS-IS instance on a router:

CLI Syntax:
config>router# isis [isis-instance]
shutdown

Removing IS-IS

The no isis command deletes an IS-IS instance and reverts its configuration to default values for its next use.

Use the following CLI syntax to remove an IS-IS instance:

CLI Syntax:
config>router#
no isis [isis-instance]

Modifying Global IS-IS Parameters

You can modify, disable, or remove global IS-IS parameters without shutting down entities. The changes are applied immediately. Modifying the level capability on the global level causes the IS-IS instance to restart.

The following example displays an IS-IS global parameter modification.

Example:
config>router>isis# overload timeout 500
config>router>isis# level-capability level-1/2
config>router>isis# no authentication-check
config>router>isis# authentication-key raider123

The following example displays the IS-IS configuration with the modifications entered in the previous example:

A:ALU-A>config>router>isis# info
----------------------------------------------
     area-id 49.0180.0001
     area-id 49.0180.0002
     area-id 49.0180.0003
     authentication-key "//oZrvtvFPn06nyRIJ5E" hash
     authentication-type password
     no authentication-check
     overload timeout 500
     level 1
          wide-metrics-only
     exit
     level 2
          wide-metrics-only
     exit
     interface "system"
     exit
     interface "ALU-1-2"
          level-capability level-2
          mesh-group 85
     exit
     interface "ALU-1-3"
          level-capability level-1
          interface-type point-to-point
          mesh-group 101
     exit
     interface "ALU-1-5"
          level-capability level-1
          interface-type point-to-point
          mesh-group 85
     exit
     interface "to-103"
          mesh-group 101
     exit
     interface "A-B"
     exit
     interface "A-C"
     exit

Modifying IS-IS Interface Parameters

You can modify, disable, or remove interface level IS-IS parameters without shutting down entities. Changes take effect immediately. Modifying the level capability on the interface causes the IS-IS instance on the interface to restart.

To remove an interface, use the no interface ip-int-name command.

To disable an interface, use the shutdown command in the interface context.

The following example displays an IS-IS interface parameter modification.

Example:
config>router# isis
config>router>isis# interface ALU-1-3
config>router>isis>if# mesh-group 85
config>router>isis>if# passive
config>router>isis>if# lsp-pacing-interval 5000
config>router>isis>if# exit
config>router>isis# interface to-103
config>router>isis>if# hello-authentication-type message-digest
config>router>isis>if# hello-authentication-key 49ersrule
config>router>isis>if# exit

The following example displays the IS-IS configuration with the modifications entered in the previous example:

A:ALU-A>config>router>isis# info
----------------------------------------------
     area-id 49.0180.0001
     area-id 49.0180.0002
     area-id 49.0180.0003
     authentication-key "//oZrvtvFPn06nyRIJ5E" hash
     authentication-type password
     no authentication-check
     overload timeout 500
     level 1
          wide-metrics-only
     exit
     level 2
          wide-metrics-only
     exit
     interface "system"
     exit
     interface "ALU-1-2"
          level-capability level-2
          mesh-group 85
     exit
     interface "ALU-1-3"
          level-capability level-1
          interface-type point-to-point
          lsp-pacing-interval 5000
          mesh-group 85
          passive
     exit
     interface "ALU-1-5"
          level-capability level-1
          interface-type point-to-point
          mesh-group 85
     exit
     interface "to-103"
          hello-authentication-key "DvR5l2xxB6XMTvbAZ1mE" hash
          hello-authentication-type message-digest
          mesh-group 101
     exit
     interface "A-B"
     exit
----------------------------------------------
A:ALU-A>config>router>isis#