This section details the output of some of the key troubleshooting commands discussed in the previous section. The Cisco IOS show commands provide information about activities occurring on the router and serve as excellent tools for diagnosing problems.
The output of the following commands are examined based on the topology and configuration of the routers in Figure 10-1:
show clns
show clns protocol
show clns neighbors
show clns interface
show isis database
show isis topology
show isis spf-log
Figure 10-1 shows a simple topology of an IS-IS domain consisting of two areas (49.0001 and 49.0002), each with two routers. This topology provides practical significance to the output of the commands that will be studied. The router configurations are provided as well.
RT5 interface Loopback0 ip address 11.1.1.5 255.255.255.255 ! interface Ethernet0/0 ip address 10.1.1.5 255.255.255.0 ip router isis ! router isis passive-interface Loopback0 net 49.0001.0000.0000.0005.00 is-type level-1 metric-style wide RT1 interface Loopback0 ip address 11.1.1.1 255.255.255.255 ! interface Ethernet0/0 ip address 10.1.1.1 255.255.255.0 ip router isis ! interface Serial0/0 ip address 192.168.1.1 255.255.255.252 ip router isis ! router isis passive-interface Loopback0 net 49.0001.0000.0000.0001.00 metric-style wide log-adjacency-changes RT2 interface Loopback0 ip address 11.1.1.2 255.255.255.255 ! interface Ethernet0/0 ip address 10.1.2.1 255.255.255.0 ip router isis ! interface Serial0/0 ip address 192.168.1.2 255.255.255.252 ip router isis ! router isis passive-interface Loopback0 net 49.0002.0000.0000.0002.00 metric-style wide log-adjacency-changes RT6 interface Loopback0 ip address 11.1.1.6 255.255.255.255 ! interface Ethernet0/0 ip address 10.1.2.6 255.255.255.0 ip router isis ! router isis passive-interface Loopback0 net 49.0002.0000.0000.0006.00 is-type level-1 metric-style wide
The IS-IS routing protocol operates within the CLNP framework even when used in pure IP environments. Therefore, to verify the operation of IS-IS routers or troubleshoot problems, often you must use IOS CLNP- related commands. The show clns command, which is the base of the CLNP-related show commands, supports several arguments that enable you to query specific attributes and status information on an IS-IS router about the ISO CLNS environment. The following are examples of these command arguments:
interface ” Provides CLNP interface status and configuration
is-neighbors ” Provides information about router adjacencies
neighbors ” Provides information about router and end-system adjacencies
protocol ” Provides information about the routing process for the CLNP protocol
route ” Displays routing information for CLNP prefixes
traffic ” Displays CLNP statistics
The output of show clns with some of the preceding arguments is discussed in detail later in this section. Example 10-2 shows the output of show clns without any arguments as issued on RT1 and RT2. The command displays concise information regarding the mode of operation and the NSAP address of an IS-IS router. The area prefix in the NSAP address is also delineated. For example, output from RT1 shows RT1 is a Level 1-2 router with 49.0001.0000.0000.0001.00 as the NSAP and 49.0001 as the area ID. The output also shows that CLNS forwarding, which in this case implies IS-IS routing, is enabled on two interfaces. This is confirmed from the configuration of RT1 in Example 10-1, which shows IS-IS is enabled on Serial0/0 and Ethernet0/0.
RT1# show clns Global CLNS Information: 2 Interfaces Enabled for CLNS NET: 49.0001.0000.0000.0001.00 Configuration Timer: 60, Default Holding Timer: 300, Packet Lifetime 64 ERPDU's requested on locally generated packets Intermediate system operation enabled (forwarding allowed) IS-IS level-1-2 Router: Routing for Area: 49.0001 RT2# show clns Global CLNS Information: 2 Interfaces Enabled for CLNS NET: 49.0002.0000.0000.0002.00 Configuration Timer: 60, Default Holding Timer: 300, Packet Lifetime 64 ERPDU's requested on locally generated packets Intermediate system operation enabled (forwarding allowed) IS-IS level-1-2 Router: Routing for Area: 49.0002
The show clns command proves useful for troubleshooting problems that relate to adjacency formation. For example, it enables you to quickly verify whether a router is configured for the appropriate area. The command provides a concise snapshot of the IS-IS configuration and key parameters. Configuration timer information shown in this output pertains to both ESHs and ISHs. ESHs are related to ES-IS, which is an auxiliary protocol that supports the ISO CLNS environment.
Current Cisco IOS releases offers a show <layer 3> protocol command for any of the Layer 3 protocols supported on Cisco routers. The show ip protocol command is popular and used frequently to troubleshoot IP routing problems. The show clns protocol command has similar importance and displays similar information for the CLNS environment. Example 10-3 shows the output of the familiar show ip protocol command for purposes of comparison with the output of the show clns protocol command shown in Example 10-3.
The show ip protocol command shows IP routing protocols enabled on the router and also the neighbor routers that have supplied routing information (for IS-IS in this case). The administrative distances associated with each neighbor and the last time it provided an update are also shown. As shown in Figure 10-1, the neighbors of RT1 are RT5 and RT2. Their loopback addresses to identify them.
RT1# show ip protocol Routing Protocol is "isis" Invalid after 0 seconds, hold down 0, flushed after 0 Outgoing update filter list for all interfaces is Incoming update filter list for all interfaces is Redistributing: isis Address Summarization: None Routing for Networks: Ethernet0/0 Serial0/0 Passive Interface(s): Loopback0 Routing Information Sources: Gateway Distance Last Update 11.1.1.2 115 00:02:25 11.1.1.5 115 00:02:15
Although similar to the IP equivalent, the output of the show clns protocol command features slightly different content. The output in Example 10-4 shows that IS-IS is enabled without any tag associated with the IS-IS process. The mode of operation, the system ID, and the area prefixes are shown. The output also shows the system ID 0000.0000.0001.00 with the pseudonode number (00) appended. Unlike the show clns command, the show clns protocol command is explicit about which interfaces are enabled for IS-IS routing (in this case Serial0/0 and Ethernet0/0). It also shows that IS-IS is configured for IP only on these interfaces. The administrative distance of 110 pertains to IS-IS for CLNP. The default administrative distance of 115 is used for IP routing. This value is correctly shown in the output of the show ip protocols command in Figure 10-3.
You might recall that the notion of administrative distance is used in Cisco IOS Software to indicate the relative degree of preference between different routing information sources for the same Layer 3 protocol. The administrative distance of IP routes is 0 for connected routes, for example, 1 for static routes, 110 for OSPF routes, and 115 for IS-IS.
Some lines in the following output (the last few) pertain to the format style of IS-IS metrics, and they are displayed as a result of the metric-style wide command in the configuration. Wide metrics are particularly relevant for MPLS traffic engineering, which was named by Cisco as Routing with Resource Reservation (RRR) before standardization efforts started in the IETF.
RT1# show clns protocol IS-IS Router: <Null Tag> System Id: 0000.0000.0001.00 IS-Type: level-1-2 Manual area address(es): 49.0001 Routing for area address(es): 49.0001 Interfaces supported by IS-IS: Serial0/0 - IP Ethernet0/0 - IP Redistributing: static Distance: 110 RRR level: none Generate narrow metrics: none Accept narrow metrics: none Generate wide metrics: level-1-2 Accept wide metrics: level-1-2
The show clns neighbors command is discussed in Chapter 9, where it is used to verify the proper operation of IS-IS and the status of adjacencies with directly connected IS-IS routers. The show clns neighbors command is syntactically similar to commands such as show ip ospf neighbors and show ip eigrp neighbors, which check the status of adjacencies in OSPF and EIGRP, respectively. However, there is no reference to a Layer 3 routing protocol in the show clns neighbors command.
Example 10-5 shows an output of the show clns neighbors command, captured from RT1 (refer to Figure 10-1). Adding the detail option to the command displays more information about each known neighbor, such as the area ID and IP address.
RT1# show clns neighbors System Id Interface SNPA State Holdtime Type Proto RT2 Se0/0 *HDLC* Up 27 L2 IS-IS RT5 Et0/0 00d0.58eb.ff01 Up 25 L1 IS-IS RT1# show clns neighbors detail System Id Interface SNPA State Holdtime Type Proto RT2 Se0/0 *HDLC* Up 24 L2 IS-IS Area Address(es): 49.0002 IP Address(es): 192.168.1.2* Uptime: 02:15:11 RT5 Et0/0 00d0.58eb.ff01 Up 23 L1 IS-IS Area Address(es): 49.0001 IP Address(es): 10.1.1.5* Uptime: 02:15:11
Generally, the output shows the following for each neighbor:
System ID ” System identifier of the neighbor.
Interface ” Physical interface where the neighbor is connected.
SNPA (Subnetwork Point of Attachment) ” This is the data-link type or address (HDLC or PPP for serial and MAC address for LANs).
State ” State of the adjacency (up, down, or init).
Holdtime ” This is the interval before the adjacency expires . The holdtime is the product of the hello interval and hello multiplier . The default values of the latter two parameters are 10 and 3, respectively. The holdtime is reset to the maximum value every time a hello packet is received and decreases until the next reset.
Type ” The type of adjacency (Level 1, Level 2, or both).
Protocol ” Routing protocol source (IS-IS or ISO IGRP).
The show clns interface command is analogous to the show ip interface command. Both commands provide protocol information regarding specific status and parameter settings. Without any option, the show clns interface command spills out information about all interfaces on the router, indicating which interfaces are enabled for CLNS forwarding and which are not. An interface-specific option provides an output for only the named interface, as shown in Examples 10-6 through 10-8.
RT2# show clns interface Serial 0/0 (1)Serial0/0 is up, line protocol is up (2) Checksums enabled, MTU 1500, Encapsulation HDLC (3) ERPDUs enabled, min. interval 10 msec. (4) RDPDUs enabled, min. interval 100 msec., Addr Mask enabled (5) Congestion Experienced bit set at 4 packets (6) CLNS fast switching enabled (7) CLNS SSE switching disabled (8) DEC compatibility mode OFF for this interface (9) Next ESH/ISH in 2 seconds (10) Routing Protocol: IS-IS (11) Circuit Type: level-1-2 (12) Interface number 0x0, local circuit ID 0x100 (13) Level-1 Metric: 10, Priority: 64, Circuit ID: RT2.00 (14) Number of active level-1 adjacencies: 0 (15) Level-2 Metric: 10, Priority: 64, Circuit ID: RT2.00 (16) Number of active level-2 adjacencies: 1 (17) Next IS-IS Hello in 4 seconds
RT2# show clns interface ethernet0/0 (1) Ethernet0/0 is up, line protocol is up (2) Checksums enabled, MTU 1497, Encapsulation SAP (3) ERPDUs enabled, min. interval 10 msec. (4) RDPDUs enabled, min. interval 100 msec., Addr Mask enabled (5) Congestion Experienced bit set at 4 packets (6) CLNS fast switching enabled (7) CLNS SSE switching disabled (8) DEC compatibility mode OFF for this interface (9) Next ESH/ISH in 4 seconds (10) Routing Protocol: IS-IS (11) Circuit Type: level-1-2 (12) Interface number 0x2, local circuit ID 0x2 (13) Level-1 Metric: 10, Priority: 64, Circuit ID: RT6.01 (14) Number of active level-1 adjacencies: 1 (15) Level-2 Metric: 10, Priority: 64, Circuit ID: RT6.01 (16) Number of active level-2 adjacencies: 0 (17) 1Next IS-IS LAN Level-1 Hello in 4 seconds (18) Next IS-IS LAN Level-2 Hello in 3 seconds
RT2# show clns interface FastEthernet1/0 (1) FastEthernet1/0 is administratively down, line protocol is down (2) CLNS protocol processing disabled
Example 10-6 shows the output for a point-to-point serial interface, Example 10-7 for a broadcast interface, and Example 10-8 shows the corresponding output for an interface on which IS-IS routing is not enabled. The lines in the examples are numbered. Lines 3 through 9 in Examples 10-6 and 10-7 are not particularly important for troubleshooting IS-IS in IP environments. Table 10-1 compares the lines of interest in Examples 10-6 and 10-7.
Line | Example 10-6 Point-to-Point | Example 10-7 Broadcast |
---|---|---|
1 | Line up, protocol up, implies working interface. | Line up, protocol up, implies working interface. |
2 | Encapsulation is HDLC and the default CLNS MTU is 1500, matching the default of the physical MTU. | All OSI-related protocols (CLNP, ES-IS, IS-IS) are encapsulated 802.2(SAP), limiting the MTU to 1497 bytes compared to the 1500 MTU of the physical interface. |
10 | IS-IS routing is enabled on this interface. | IS-IS routing is enabled on this interface. |
11 | Level 1 and Level 2 adjacencies can be formed on this interface. | Level 1 and Level 2 adjacencies can be formed on this interface. |
12 | Interface number (0x0). Assigned by configuration turns. Used as an index by SRM and SSM flags for flooding. Local circuit ID is 0x100 for serial point-to-point. | Interface number (0x2). Assigned by configuration turns. Used as an index by SRM and SSM flags for flooding. Local circuit ID is 0x2, which is the same as the interface number for LAN-type interfaces. |
13 | Metric and priority for Level 1 (defaults). | Metric and priority for Level 1 (defaults). The circuit ID on the LAN is the system ID of DIS + the pseudonode number (RT6.01) |
14 | Zero Level 1 adjacencies over this interface. | One Level 1 adjacency (with RT6). |
15 | Metric and priority for Level 2 (defaults). | Metric and priority for Level 2 (defaults). |
16 | One Level 2 adjacency (with RT1) over this interface. | Zero Level 2 adjacencies over this interface. |
17 | Point-to-point IIH due in four seconds. | LAN Level 1 IIH due in four seconds. |
18 | No entry. | LAN Level 2 IIH due in three seconds. |
Use of 802.2 (SAP) Ethernet encapsulation for CLNS packets (CLNP, ES-IS, IS-IS) results in the CLNS maximum transmission unit (MTU) being three bytes shorter than the physical interface MTU. In the SAP encapsulation, one byte is used for the Destination Service Access Point (DSAP), one byte for the Source Service Access Point (SSAP), and one byte for the control fields. Table 10-1 elaborates on the key lines in the output of the show isis clns interface command that deserve attention when troubleshooting IS-IS adjacency problems. Certainly, the first thing to check is the status of the physical interface (lines 1 and 2). Next, check lines 10 and 11; these indicate whether IS-IS is enabled on the interfaces, as well as the adjacency count.
Most IS-IS-related routing failures are caused either by problems with adjacency formation or route installation. The previous sections of this chapter discuss IS-IS-related commands, such as show clns interface and show clns neighbors, for troubleshooting IS-IS adjacency problems. This section focuses on the show isis database command, which proves useful when troubleshooting route installation problems. In Chapter 9, the show isis database command is mentioned as an important tool for verifying the proper operation of IS-IS.
As you might recall from previous chapters, IS-IS routers exchange LSPs with their neighbors after forming adjacencies. The LSPs received from neighbors are then grouped into Level 1 and Level 2 Link-State databases based on the type of adjacencies existing on the router. LSPs contain relevant information about the originator's routing environment, such as IP prefix information, which is held in IP reachability TLVs. One of the important steps in troubleshooting routing problems is to check the Level 1 and Level 2 Link-State databases for the presence of all expected LSPs. This is done with the show isis database command. Example 10-9 features a sample output of this command, which displays a summary of all known LSPs in the Level 1 and Level 2 databases. The keyword options to the command , Level 1 (l1) or Level 2 (l2), display either of the two databases, respectively. Other command options, such as the lsp id and detail, can be used separately or combined, as in show isis database <lsp id> detail, to display details about a specific LSP (see Example 10-10). The details of the information in an LSP might provide clues about missing routing information. Understanding and correctly interpreting the information in an LSP is very critical to solving routing problems, such as missing or inaccurate routing information.
RT1# show isis database IS-IS Level-1 Link State Database LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL RT1.00-00 * 0x000000DD 0xE942 528 1/0/0 RT1.01-00 * 0x00000087 0xA810 1039 0/0/0 RT5.00-00 0x00000F6E 0xED30 1159 0/0/0 IS-IS Level-2 Link State Database LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL RT1.00-00 * 0x000000E5 0x7BFA 1041 0/0/0 RT2.00-00 0x00001C9C 0x5F3E 1135 0/0/0 RT1#
The output in Example 10-9 is taken from RT1, which is represented in Figure 10-1. This output displays the separate Level 1 and Level 2 databases and lists all known LSPs. Various attributes, such as LSP ID, LSP checksum, and so on, are listed for each LSP. The Level 1 database lists three known LSPs, two of which are generated by RT1 (also marked by an asterisk [*]). The third is generated by RT5. That both RT1 and RT5 have LSPs in the Level 1 database is an obvious indication that they are in the same area. One of the LSPs, RT1.01-00, is a pseudonode LSP because it has a non-zero LSP number in the LSP ID. This LSP is generated by RT1, which is the designated intermediate system (DIS).
Level 2 database shows only two LSPs, one each from RT1 and RT2. This means that RT2 is the only Level 2 neighbor of RT1. This also implies that RT1 has formed only a Level 1 adjacency with RT5 and only a Level 2 adjacency with RT2. This is because RT2 is in another area and RT5 is in the same area but has been configured to be a Level 1-only router.
All routers in the same area have the same set of LSPs in their Level 1 databases. Similarly, all Level 2 routers have an identical list of Level 2 LSPs. Any inconsistency in the Level 1 database for routers in the same area or the Level 2 database for routers connected to the Level 2 backbone surely flags a problem.
Level 1 LSPs generated by Level 2-capable routers need to be checked for the ATT bit setting. The ATT bit flags a default route to Level 1 routers in the area. In Example 10-6, RT1.00-00, originated by RT1, has the ATT bit set. This indicates to RT5 that RT1 is connected to the backbone and can provide connectivity to other areas. Example 10-10 shows the contents of RT2.00-00 as displayed on RT1. The output displays all IP prefixes advertised by RT2 to other Level 2 routers and can help you to troubleshoot any potential routing problems associated with RT2.
Note that 11.1.1.6 originates from RT6 (refer to Figure 10-1), but it is advertised through Level 2 to the rest of the network by RT2. The other IP prefixes in this LSP are directly connected networks.
RT1# show isis database level-1 RT2.00-00 detail IS-IS Level-2 LSP RT2.00-00 LSPID LSP Seq Num LSP Checksum LSP Holdtime ATT/P/OL RT2.00-00 0x00001C9C 0x5F3E 1015 0/0/0 Area Address: 49.0002 NLPID: 0xCC Hostname: RT2 IP Address: 11.1.1.2 Metric: 10 IS-Extended RT1.00 Metric: 10 IP 10.1.2.0/24 Metric: 0 IP 11.1.1.2/32 Metric: 10 IP 11.1.1.6/32 Metric: 10 IP 192.168.1.0/30
An output of the show isis topology command is shown in Example 10-11. This command provides a view of the relative location of all known routers in both the local area and the backbone. In Figure 10-2, RT5 is a Level 1 router and RT1 is a Level 1-2 router, both in area 49.0001. RT2 and RT6 are both Level 1-2 routers in area 49.0002. The Level 2 backbone expands across the largest shaded oval. The smaller ovals cover individual Level 1 areas. The output of show isis topology from RT1 indicates only one path to a Level 1 router (RT5) connects to Ethernet0/0 (see Example 10-11). The MAC address of RT5 is also provided. Two paths are in the backbone to Level 2 routers, both going through Serial0/0.
The show isis topology command is similar to the show isis route command, which provides, in essence, a Level 1 routing table for IS-IS nodes in an area. The show isis topology command extends show isis route to cover Level 2 nodes in pure IP environments and does not need the clns router command to be configured on IS-IS-enabled interfaces as in the case of the show isis route command.
RT1# show isis topology IS-IS paths to level-1 routers System Id Metric Next-Hop Interface SNPA RT1 -- RT5 10 RT5 Et0/0 00d0.58eb.ff01 IS-IS paths to level-2 routers System Id Metric Next-Hop Interface SNPA RT1 -- RT2 10 RT2 Se0/0 *HDLC* RT6 20 RT2 Se0/0 *HDLC*
In most Cisco routers, a route processor is responsible for running the IS-IS protocol and calculating IS-IS-specific routing information. IS-IS routes compete with similar information from other routing protocol sources, such as static routes and OSPF if enabled, for spots in the global IP routing table of the router. The route processor runs the SPF process for IS-IS by using the IS-IS Link-State database as input to calculate IS-IS routes. The SPF process is run periodically or triggered based on network activity, such as LSP content changes or receipt of a new LSP.
The show isis spf-log command logs events related to the SPF process providing information such as triggers and duration of events. Reviewing the SPF log can help you to troubleshoot a churn in the network. By studying the SPF log, for example, you can determine the reason for a high spike in CPU utilization at the route processor attributable to the IS-IS SPF process. A sample output of show isis spf-log is shown in Example 10-12. The output shows that at 1:56:08, the SPF process was triggered by some event relating to LSP RT1.01.00. The last column of this line shows the trigger was a TLVCONTENT on RT1.01-00. In Chapter 9, the spf-interval configuration command is discussed and a list of SPF event triggers is provided. An augmented list of triggers is provided in Table 10-2.
RT1# show isis spf-log Level 1 SPF log When Duration Nodes Count Last trigger LSP Triggers 03:40:08 0 3 1 PERIODIC 03:25:08 0 3 1 PERIODIC 03:10:07 0 3 1 PERIODIC 02:55:07 0 3 1 PERIODIC 02:40:07 0 3 1 PERIODIC 02:25:06 0 3 1 PERIODIC 02:10:06 0 3 1 PERIODIC 01:56:08 0 2 1 RT1.01-00 TLVCONTENT 01:55:06 0 2 1 PERIODIC 01:40:06 0 2 1 PERIODIC 01:36:31 0 2 1 RT5.00-00 LSPEXPIRED 01:28:31 0 2 2 RT1.01-00 NEWADJ TLVCONTENT 01:28:25 0 3 1 RT5.00-00 NEWLSP 01:25:06 0 3 1 PERIODIC 01:10:06 0 3 1 PERIODIC
Trigger Code | Description |
---|---|
AREASET | Area change |
ATTACHFLAG | Attached bit setting change |
CLEAR | Manual clear |
CONFIG | Configuration change |
DELADJ | Adjacency deletion |
DIS | DIS election |
ES | End system information change |
HIPPITY LSPDB | Overload bit state change |
IP_DEF_ORIG | Default information change |
IPDOWN | Connected IP prefix down |
IP_EXTERNAL | Route redistribution change |
IPIA | Interarea route change |
IPUP | Connected IP prefix up |
NEWADJ | New neighbor adjacency up |
NEWLEVEL | IS-IS process level changed |
NEWMETRIC | New metric assigned to an interface |
NEWSYSID | New system ID assigned |
PERIODIC | Periodic SPF process (LSPDB refresh interval) |
TLVCODE | LSP with a new TLV code field received |
TLVCONTENT | LSP with changed TLV contents received |