Step-by-Step Troubleshooting for IS-IS on Cisco Routers

Follow a safe, layered workflow to isolate Cisco IS-IS failures from the physical link and adjacency through the link-state database, SPF calculation, and final route installation.

IS-ISCisco IOSRouting TroubleshootingService Provider
Lesson overview

In This Lesson

Move from the lowest failure domain to the highest so each command answers one question and you avoid clearing a healthy process before finding the real fault.

  1. Understand IS-IS failure domains and adjacency states
  2. Verify interfaces, neighbors, NETs, and levels
  3. Check interface parameters, MTU, and authentication
  4. Use targeted IS-IS debugging safely
  5. Validate the LSDB, route installation, and metric style
  6. Recover safely and apply long-term best practices
From link to route

Quick Learning Map

Use three checkpoints to keep the investigation ordered and evidence based.

1

Prove the local link

Confirm the interface is up, the intended Layer 2 service works, and IS-IS is enabled on the correct circuit.

2

Prove protocol agreement

Validate hellos, NET identity, levels, MTU, timers, network type, and authentication on both peers.

3

Prove topology and routes

Inspect LSPs, overload state, SPF results, metric style, filters, and the routing table before resetting anything.

IS-IS Troubleshooting at a Glance

Integrated IS-IS is a scalable link-state protocol used in service-provider backbones, MPLS cores, data-center underlays, and large enterprise networks. It carries its control traffic directly over Layer 2 with CLNS, so troubleshooting begins below IP reachability and moves upward.

IS-IS troubleshooting cheat sheet for Cisco routers showing Level-1 and Level-2 architecture, packet flow, adjacency states, twelve diagnostic steps, common errors, and recommended fixes
Use the cheat sheet as a fast command map; the sections below explain what each check proves, what mismatches mean, and which actions can disrupt routing.

Understand the IS-IS Failure Domains First

An IS-IS routing failure usually belongs to one of four layers: the physical or Layer 2 path, adjacency formation, link-state flooding and SPF, or route installation. Starting at the bottom prevents misleading conclusions higher in the stack.

1. Link and circuit

The interface, VLAN, or transport must carry CLNS frames. An IP ping is useful context, but it does not by itself prove that IS-IS PDUs can cross the link.

2. Adjacency

Compatible hellos must agree on circuit level, area requirements, authentication, and other interface parameters before the neighbor reaches Up.

3. LSDB and SPF

Up neighbors exchange LSPs. Each router builds a level-specific link-state database and runs SPF to derive paths.

4. Routing table

A path can exist in the IS-IS topology yet remain absent from the IP routing table because of filtering, metric style, leaking, overload, or route preference.

Adjacency states and types

State or typeMeaningPrimary checks
DownNo usable hello has been received from the neighbor.Interface state, VLAN or transport, CLNS enablement, ACLs, circuit type.
InitA hello was received, but bidirectional adjacency formation is incomplete.Reverse path, MTU and padding, authentication, hello compatibility.
UpThe adjacency is established.Move to LSDB, topology, SPF, and route checks if reachability is still wrong.
Level-1Area adjacency between routers that share an area address.Matching area portion of the NET and Level-1 circuit support.
Level-2Backbone adjacency; matching area addresses are not required.Both sides must support Level 2 on that circuit.
Level-1-2The router can participate at both levels.Confirm the intended topology and avoid accidental dual-level operation.

Steps 1–4: Verify Interfaces, Neighbors, NETs, and Levels

These checks establish whether the local circuit works, whether hellos form a neighbor relationship, and whether both routers agree on identity and topology level.

show ip interface brief — confirm operational state

Use: Find the expected link and verify that both interface and line protocol are up.

R1# show ip interface brief

Troubleshooting: An administratively down or line-protocol-down interface is a lower-layer fault. Resolve shutdown, optics, cabling, VLAN, encapsulation, or remote-port issues before blaming IS-IS.

show interfaces status — inspect Layer 2 port state

Use: On platforms that support it, confirm port status, VLAN placement, duplex, speed, and interface identity.

R1# show interfaces status

Troubleshooting: Verify that the connected switchport, subinterface, or transport service matches the design on both ends.

show clns interface — prove IS-IS is active on the circuit

Use: Display CLNS and IS-IS interface state, circuit type, metrics, hello timers, adjacency count, and padding behavior.

R1# show clns interface GigabitEthernet0/0

Troubleshooting: Confirm the routing protocol is IS-IS, the circuit type is intended, CLNS is enabled, and active Level-1 or Level-2 adjacency counts match expectations.

show clns neighbors — inspect CLNS neighbors

Use: Display IS and ES neighbors known through CLNS and identify their state, interface, hold time, type, and protocol.

R1# show clns neighbors
R1# show clns neighbors detail

Troubleshooting: If no expected neighbor appears, return to link transport, IS-IS enablement, level compatibility, area requirements, MTU, and authentication.

show isis neighbors — verify adjacency state and level

Use: Check the IS-IS-specific neighbor table and identify the System ID, interface, state, hold time, and Level-1 or Level-2 type.

R1# show isis neighbors
R1# show isis neighbors detail

Troubleshooting: The expected state is Up. A flapping hold time or repeated loss points toward packet loss, timers, BFD interaction, authentication, or an unstable underlying link.

show running-config | section router isis — validate the NET

Use: Read the IS-IS process configuration and confirm the Network Entity Title.

R1# show running-config | section router isis
router isis CORE
 net 49.0001.0000.0000.0001.00

Interpretation: 49 is the AFI commonly used for private addressing, 0001 is the area portion in this example, 0000.0000.0001 is the unique six-byte System ID, and 00 is the router NSEL.

isis circuit-type — align Level-1 and Level-2 behavior

Use: Inspect the current circuit with show clns interface, then configure the intended level only after confirming the design.

R1# show clns interface GigabitEthernet0/0
R1(config)# interface GigabitEthernet0/0
R1(config-if)# isis circuit-type level-2-only

Troubleshooting: Level-1 peers require a compatible area address. Level-2 peers do not need matching areas. A Level-1-only side cannot form with a Level-2-only side.

NET rule: never duplicate a System ID. Duplicate IDs can corrupt topology interpretation and make LSP ownership appear to move between routers.

Steps 5–7: Check Interface Parameters, MTU, and Authentication

When the link is up but the adjacency is absent or unstable, compare both ends side by side. Do not compare a saved template with a live interface; collect live output from both peers.

ParameterWhat to compareWhy it matters
MTUConfigured and effective Layer 2 MTU end to endPadded hellos expose a path that cannot carry full-size frames; later LSP flooding can also fail on a broken transport.
Hello/hold timersExpected values and stable hold-time refreshIncompatible or overly aggressive detection can create neighbor flaps.
AuthenticationScope, algorithm, key chain, key ID, lifetime, and secretHello authentication affects adjacency; LSP authentication affects database exchange.
Network typeBroadcast or point-to-point on both sidesChanges hello behavior, DIS operation, and circuit expectations.
CLNS/IS-IS enablementCorrect process attached to the intended interfaceA healthy IP interface does not automatically participate in IS-IS.

show isis interface — compare live IS-IS settings

Use: Display IS-IS-specific interface state and metrics, then compare the same circuit on its peer.

R1# show isis interface GigabitEthernet0/0
R2# show isis interface GigabitEthernet0/0

Troubleshooting: Confirm level, metric, network type, hello values, authentication, and adjacency count. Platform output differs, so use the field names shown by the deployed IOS or IOS XE release.

show interfaces ... | include MTU — detect MTU mismatch

Use: Check the interface MTU on each peer and validate any intermediate Ethernet, QinQ, pseudowire, or MPLS transport.

R1# show interfaces GigabitEthernet0/0 | include MTU
R2# show interfaces GigabitEthernet0/0 | include MTU

Troubleshooting: Match the real end-to-end MTU whenever possible. IS-IS hello padding is designed to reveal large-frame transport or MTU problems early.

no isis hello padding — use only as a controlled workaround

Use: Cisco IOS can suppress interface hello padding when an exceptional transport cannot be repaired immediately.

R1(config)# interface GigabitEthernet0/0
R1(config-if)# no isis hello padding

Precaution: This can hide a path-MTU defect rather than fix it. Full-size LSPs or application traffic may still fail, so document the exception and restore padding after the transport is corrected.

show key chain — verify active authentication keys

Use: Confirm the referenced key chain, key IDs, algorithms, and send/accept lifetimes.

R1# show key chain

Troubleshooting: Compare time, time zone, key lifetime, algorithm, and key string on both peers. Redact secrets from tickets and shared outputs.

show isis database — detect LSP authentication trouble

Use: Confirm that expected LSPs arrive at the relevant level after the adjacency becomes Up.

R1# show isis database

Troubleshooting: An interface hello can authenticate successfully while area- or domain-level LSP authentication still prevents a complete database. Verify interface, Level-1, and Level-2 authentication scopes separately.

Step 8: Debug IS-IS Events Safely

Use debugging only after show commands narrow the fault. Capture for a short window, filter or limit the session where the platform allows it, and watch CPU and console impact.

debug isis adj-packets — inspect adjacency packets

Use: Observe IS-IS hello and adjacency behavior when a neighbor will not form or keeps flapping.

R1# debug isis adj-packets

Troubleshooting: Correlate messages with interface counters and the peer. Repeated one-way activity suggests reverse-path filtering, authentication, or transport problems.

debug isis update-packets — inspect LSP and SNP exchange

Use: Observe link-state update traffic after adjacency formation.

R1# debug isis update-packets

Troubleshooting: Use this when neighbors are Up but LSDB contents diverge. Look for authentication rejection, sequence behavior, checksum issues, and missing acknowledgments.

debug isis spf-events — correlate topology changes with SPF

Use: Identify why SPF runs and whether repeated topology changes cause churn.

R1# debug isis spf-events

Troubleshooting: Repeated SPF events are evidence, not a root cause. Trace the triggering adjacency, LSP, or interface event.

undebug all — stop debugging immediately

Use: Disable every active IOS debug as soon as the evidence window ends.

R1# undebug all

Precaution: Leaving verbose debugs enabled on a production router can consume CPU, flood logging, and make an incident worse.

Production safety: prefer buffered logging or a controlled terminal monitor session to console output, and obtain the appropriate change or incident approval before enabling a high-volume debug.

Steps 9–11: Validate the LSDB, Routes, and Metric Style

If adjacencies are Up, stop treating the issue as a neighbor problem. Prove whether the expected LSP exists, whether SPF derives a path, and whether that path wins installation in the IP routing table.

show isis database — inventory received LSPs

Use: Confirm that LSPs from the expected System IDs exist at Level 1 or Level 2.

R1# show isis database

Troubleshooting: Missing LSPs point toward flooding scope, authentication, adjacency, or filtering. Also note the overload bit, purge state, sequence number, and remaining lifetime.

show isis database detail — inspect advertised reachability

Use: Read the TLVs carried by an LSP and verify that the router actually advertises the expected prefix, neighbor, and metric.

R1# show isis database detail

Troubleshooting: If a prefix is absent at the origin, check interface enablement, redistribution, address-family configuration, passive settings, and policy. If it is present locally but missing remotely, investigate flooding.

show isis topology — verify the SPF view

Use: Display the IS-IS topology, metrics, next hops, and outgoing interfaces calculated from the LSDB.

R1# show isis topology

Troubleshooting: A database can contain an LSP while the computed path is unusable. Look for excessive metrics, disconnected branches, overload state, and an unexpected level.

show ip route isis — confirm route installation

Use: Display IPv4 routes installed in the routing table from IS-IS.

R1# show ip route isis

Troubleshooting: If the topology contains a path but the route table does not, compare administrative distance, address family, route filtering, route leaking, and a more-preferred protocol.

show isis rib — inspect the IS-IS RIB

Use: On supported platforms, inspect the routes selected within IS-IS before global routing-table installation.

R1# show isis rib

Troubleshooting: Command availability and fields vary by IOS release. If unavailable, use show isis topology, detailed LSDB output, and the IP routing table to follow the same decision chain.

show ip protocols — review process policy and distance

Use: Confirm the active routing process, sources, administrative distance, and applicable policy information.

R1# show ip protocols

Troubleshooting: Check for distribute lists, route maps, redistribution behavior, and unexpected preference versus connected, static, OSPF, EIGRP, or BGP routes.

metric-style wide — keep TLV metric capability consistent

Use: Configure wide metrics throughout a modern IS-IS domain after planning any transition from narrow metrics.

R1(config)# router isis CORE
R1(config-router)# metric-style wide

Precaution: Do not change one router blindly. Mixed generation and acceptance behavior can hide prefixes or create inconsistent path selection. Use a documented transition strategy when migrating an existing domain.

Common causes of missing IS-IS routes

  • The interface is not enabled for the intended IS-IS process or address family.
  • Wide and narrow metric/TLV behavior is inconsistent during migration.
  • Level-1 and Level-2 route leaking or attached-bit behavior does not match the design.
  • A distribute list or route policy filters the prefix.
  • Another route source wins because of administrative distance or a more specific prefix.
  • The advertising router sets the overload bit or omits the prefix from its LSP.

Step 12: Clear IS-IS Safely

Clear state only after collecting evidence and correcting the configuration or transport fault. A reset can temporarily hide the root cause and briefly disrupt forwarding.

clear isis * — restart IS-IS state on supported IOS releases

Use: Force the IS-IS process to rebuild after an approved change when the deployed platform supports this syntax.

R1# clear isis *

Precaution: This is disruptive. Verify the exact syntax with context-sensitive help for the deployed IOS or IOS XE release and avoid using a process-wide clear when a narrower recovery is available.

clear clns is-neighbors — reset selected adjacency state

Use: Remove IS-IS neighbor information from the adjacency database when the platform supports the required scope.

R1# clear clns is-neighbors *

Precaution: Adjacencies must reform and routes may reconverge. Confirm the exact keyword and optional interface or process scope with clear clns ? before execution.

Before a clear: save neighbor, interface, LSDB, topology, route, log, and CPU evidence. Establish rollback and maintenance expectations, then verify adjacency, database synchronization, and route restoration afterward.

Common IS-IS errors and quick fixes

SymptomLikely causeFocused response
Adjacency stuck in InitOne-way hellos, authentication, or padded-hello transport problemCheck both directions, ACLs, counters, live authentication, and end-to-end MTU.
No adjacency formsInterface not enabled, circuit-level mismatch, or Level-1 area mismatchConfirm CLNS state, process attachment, circuit type, and NET area portion.
Duplicate System ID warningsNET misconfigurationAssign a unique six-byte System ID and verify LSP ownership after convergence.
Routes missing from the tablePrefix absent from LSP, policy, leaking, metric style, overload, or route preferenceTrace origin LSP → remote LSDB → topology → IS-IS RIB → global RIB.
Overload bit setManual configuration, startup behavior, or resource pressureCheck configuration, logs, memory/CPU, and the operational reason before removing it.
Traffic works only one wayAsymmetric routing, filter, missing return prefix, or data-plane policyTrace the route and forwarding path independently in both directions.

Best Practices for Stable IS-IS Networks

  • Assign unique, documented System IDs and keep a single source of truth for NET ownership.
  • Use wide metrics consistently and plan a controlled transition for an existing narrow-metric domain.
  • Enable IS-IS only on intended links; use passive interfaces where adjacency is not required.
  • Use strong, supported authentication with managed key chains and tested rollover procedures.
  • Keep backbone circuit types intentional, such as Level-2-only where the topology design calls for it.
  • Use BFD only with timer values and failure behavior validated for the platform and transport.
  • Design and test Level-1/Level-2 route leaking so default and specific paths remain predictable.
  • Alert on adjacency changes, overload state, repeated SPF runs, duplicate System IDs, and LSP exhaustion risk.
  • Document NETs, levels, metrics, authentication, timers, and exceptions so comparisons are fast during an incident.

A repeatable order—interface, neighbor, identity, parameters, LSDB, topology, and routes—resolves most IS-IS incidents faster than starting with broad debugs or process resets.

Official Cisco References

Command syntax and supported authentication or clear operations vary across IOS, IOS XE, IOS XR, NX-OS, platform families, and software releases. Confirm behavior against the documentation for the deployed image.

IS-IS Troubleshooting Frequently Asked Questions

What should I check first when an IS-IS adjacency is down?

Start with the physical interface and Layer 2 path. Confirm both ends are up, CLNS and IS-IS are enabled on the intended interface, and VLAN, encapsulation, ACL, and MTU settings are compatible.

Why is an IS-IS adjacency stuck in Init?

Init normally indicates that a hello was received but bidirectional communication has not completed. Check the reverse path, ACLs, authentication, circuit type, and whether padded hellos expose an MTU or transport problem.

Do IS-IS Level-1 neighbors need the same area ID?

Yes. Level-1 neighbors must share an area address. Level-2 neighbors can form across different areas when both interfaces and routers support Level 2.

How do I verify the IS-IS NET on Cisco IOS?

Use show running-config | section router isis and inspect the configured net statement. The area portion must support the intended Level-1 design, the six-byte System ID must be unique, and the NSEL for a router NET is 00.

Can I disable IS-IS hello padding to work around an MTU mismatch?

Cisco IOS supports no isis hello padding, but matching the actual MTU and repairing the Layer 2 transport is the preferred fix. Padding is valuable because it detects paths that cannot carry full-size IS-IS packets.

What should I check when IS-IS neighbors are up but routes are missing?

Inspect the IS-IS database and topology first, then verify route advertisement, metric style, Level-1 and Level-2 route leaking, distribute lists, overload state, and whether another source wins by administrative distance.