Protocol-reasoning-driven analysis skill for IS-IS adjacency formation, LSPDB
integrity, level 1/2 routing, and NET address validation. Unlike device health
checks that compare counters against thresholds, IS-IS analysis requires
interpreting adjacency state machines, validating NET addressing, verifying DIS
election, and assessing LSP flooding across the link-state domain.
Commands are labeled [Cisco], [JunOS], or [EOS] where syntax
diverges. Unlabeled statements apply to all three vendors.
leaking not working as intended
sequence number anomalies
metric style migration, authentication rollout)
L1/L2, and which areas (area addresses) are in use
AFI.areaID.systemID.NSEL (e.g., 49.0001.1921.6800.1001.00)
HMAC-SHA)
Follow this diagnostic flow sequentially. Each step builds on data from
prior steps, moving from broad inventory to targeted diagnosis.
Verify IS-IS is running and confirm which interfaces participate at each level.
[Cisco]
show isis interface brief
[JunOS]
show isis interface
[EOS]
show isis interface brief
Record each interface: level enablement (L1, L2, or L1/L2), circuit type
(point-to-point or broadcast), metric, hello interval, and hold time. Compare
against expected design — every interface that should participate must appear.
An interface missing from output means IS-IS is not enabled on it (missing
under the IS-IS router config or interface config). Verify the NET address with
show isis protocol (Cisco), show isis overview (JunOS), or
show isis summary (EOS) — the NET must be correctly formed and unique.
List all IS-IS adjacencies and interpret their state.
[Cisco]
show isis neighbors
[JunOS]
show isis adjacency
[EOS]
show isis neighbors
Compare the neighbor list against expected topology. For each adjacency, verify:
router's SNPA/system ID not in the neighbor's hello). Down means no hellos
received.
neighbors can be in different areas — only system ID uniqueness is required.
An L1-only router will not form L2 adjacency with an L2-only router.
System) election. Unlike OSPF DR/BDR, IS-IS DIS election is preemptive — a
new router with higher priority takes over immediately.
level. DIS sends CSNPs every 10 seconds and creates the pseudonode LSP.
Verify NET format and system ID uniqueness across the domain.
[Cisco]
show isis protocol | include NET|System
[JunOS]
show isis overview | match "NET|System"
[EOS]
show isis summary | include NET|System
Validate NET structure:
49 for private IS-ISdomains. Must be consistent within the domain.
address to form L1 adjacency. L1/L2 and L2-only routers can have different
area addresses and still form L2 adjacency.
Duplicate system IDs cause LSP wars — both routers originate LSPs with the
same system ID but different content, causing continuous purge/regenerate
cycles.
00 for the router itself. A non-zero NSELidentifies an upper-layer protocol endpoint, not the router.
Examine the Link-State Protocol Data Unit database for integrity.
[Cisco]
show isis database detail | include LSP|Lifetime|Sequence
[JunOS]
show isis database extensive | match "LSP|Lifetime|Sequence"
[EOS]
show isis database detail | include LSP|Lifetime|Sequence
Assess LSPDB health:
(LSPDB synchronization invariant). A mismatch indicates flooding failure or
partition.
refresh at 900 seconds (default). An LSP with lifetime near 0 that is not
refreshed indicates the originator is unreachable. Lifetime at 0 means the
LSP is being purged.
LSP sequence number jumps backward, a router has restarted and is re-
originating from a lower sequence number — or there is a system ID conflict.
a purge. Frequent purges for the same system ID indicate instability — either
the originator is flapping or two routers share the system ID (LSP war).
traffic. Check whether OL is intentional (maintenance, startup delay) or
indicates a problem (memory exhaustion).
Verify inter-level routing behavior at L1/L2 boundaries.
[Cisco]
show isis rib | include L1|L2|leak
[JunOS]
show isis route | match "L1|L2|leak"
[EOS]
show isis route | include L1|L2|leak
Validate inter-level behavior:
into L2 by default. Verify L1 prefixes appear in the L2 LSPDB. If missing,
check for redistribution filters or route policies on the L1/L2 router.
If configured, verify leaked L2 routes appear in the L1 RIB. Missing leaked
routes indicate policy misconfiguration or the leak filter is too restrictive.
routers use this to install a default route toward the nearest L1/L2 router.
If no L1/L2 router has the Attached bit set, L1-only routers have no path
out of the area. Verify with LSPDB detail — check the ATT flag on L1/L2
router LSPs.
L1/L2 router (default route). If there are multiple L1/L2 exit points,
traffic may take a suboptimal path. Route leaking L2→L1 with specific
prefixes fixes this by giving L1 routers more specific routing information.
Operational parameter norms for IS-IS — protocol-level expectations by network
type and deployment scale.
Hello and Hold Timer Defaults:
| Parameter | Cisco Default | JunOS Default | EOS Default | Notes |
|---|---|---|---|---|
| ----------- | -------------- | --------------- | ------------- | ------- |
| Hello (broadcast) | 10s | 9s | 10s | Per-level configurable |
| Hello (P2P) | 10s | 9s | 10s | Per-level configurable |
| Hold multiplier | 3× hello | 3× hello | 3× hello | Dead = hello × multiplier |
| CSNP interval (DIS) | 10s | 10s | 10s | Only DIS sends CSNPs |
| PSNP interval | 2s | 2s | 2s | Request missing LSPs |
LSPDB Norms:
| Parameter | Normal | Warning | Critical |
|---|---|---|---|
| ----------- | -------- | --------- | ---------- |
| LSP max lifetime | 1200s | — | — |
| LSP refresh | 900s | Missed refresh | Lifetime < 300s |
| LSP remaining lifetime | 300–1200s | 60–300s | < 60s (near purge) |
| LSP purge rate | 0/hour | 1–5/hour | > 5/hour |
| LSPDB mismatch (neighbors) | 0 LSP diff | 1–3 diff | > 3 diff |
| Overload bit | Clear | Set (intentional) | Set (unintentional) |
SPF Norms:
| Parameter | Normal | Warning | Critical |
|---|---|---|---|
| ----------- | -------- | --------- | ---------- |
| SPF runs (per hour) | 1–5 | 6–20 | > 20 |
| SPF initial delay | 50–200ms | < 50ms | > 5000ms |
| SPF max hold | 5000–10000ms | < 2000ms | > 50000ms |
| Convergence (single link) | < 1s | 1–5s | > 10s |
Metric Norms:
| Metric Style | Range | Notes |
|---|---|---|
| ------------- | ------- | ------- |
| Narrow (original) | 1–63 per link | 10-bit path metric max (1023) |
| Wide (extended) | 1–16777215 per link | 32-bit path metric — preferred |
| Transition | Both | During narrow→wide migration |
IS-IS adjacency not reaching Up state
├── State: Down (no hellos received)
│ ├── Interface up? → Check Layer 1/2 status
│ ├── IS-IS enabled on interface? → Check IS-IS config on both sides
│ ├── Correct circuit type? → P2P interface must match both sides
│ └── Hello reaching peer? → Check ACLs, VLAN, encapsulation
│
├── State: Init (one-way hellos)
│ ├── Level mismatch?
│ │ ├── L1 needs same area → Compare area addresses in NETs
│ │ └── L2 allows different areas → Check both have L2 enabled
│ ├── Hello parameters?
│ │ ├── Authentication mismatch → Verify key/type per level
│ │ └── Hello interval incompatible → Not required to match but
│ │ hold time must exceed remote hello interval
│ ├── Interface type mismatch?
│ │ ├── P2P vs broadcast → Must agree on circuit type
│ │ └── Broadcast → DIS election proceeds after adjacency forms
│ ├── MTU issue? → IS-IS PDUs may be dropped if oversized
│ │ ├── Check interface MTU both sides
│ │ └── IS-IS does not negotiate MTU like OSPF — silent drop
│ └── Circuit type mismatch?
│ ├── L1-only ↔ L2-only → No common level → no adjacency
│ └── L1/L2 ↔ L1 → L1 adjacency forms; L2 does not
│
├── DIS election issue (broadcast only)
│ ├── DIS not elected? → Check priority (highest wins, then SNPA)
│ ├── DIS preemption → New higher-priority router takes DIS immediately
│ │ └── Unlike OSPF DR — IS-IS DIS is preemptive
│ └── Pseudonode LSP missing? → DIS must originate pseudonode LSP
│
└── Adjacency flapping (Up↔Down cycling)
├── Hello hold expiry → Check for packet loss or CPU overload
├── Authentication key rollover → Verify key transition timing
└── Interface errors → Check CRC, input errors, drops
LSPDB mismatch or instability detected
├── LSP purge seen (lifetime = 0)
│ ├── System ID conflict? → Two routers with same system ID
│ │ ├── Both originate LSPs → Continuous purge/regenerate cycle
│ │ ├── Sequence numbers jump erratically → Confirms conflict
│ │ └── Fix: assign unique system IDs, check NET addresses
│ ├── Router departed gracefully? → Normal purge after shutdown
│ └── Router crashed? → LSP ages out (1200s) then purges
│
├── LSPDB count mismatch between neighbors
│ ├── MTU preventing LSP flooding? → Large LSPs dropped
│ │ ├── Check interface MTU across path
│ │ └── Enable LSP fragmentation or increase MTU
│ ├── Partition? → L2 backbone split → two independent LSPDBs
│ │ ├── Verify L2 connectivity between all L2 routers
│ │ └── Check for failed L2 link isolating a segment
│ └── Flooding blocked? → Authentication mismatch on one link
│ └── Adjacency up but LSPs rejected due to auth failure
│
├── Overload bit (OL) set
│ ├── Intentional? → Maintenance mode or on-startup timer
│ ├── Memory exhaustion? → Router cannot hold full LSPDB
│ └── Startup delay? → OL set for N seconds after process restart
│
└── Sequence number anomaly
├── Backward jump? → Router restarted, re-originating from lower seq
├── Rapid increment? → Frequent topology changes triggering re-origination
└── Stuck at max? → Sequence wrap — extremely rare, requires process restart
IS-IS ANALYSIS REPORT
======================
Device: [hostname]
Vendor: [Cisco | JunOS | EOS]
IS-IS Instance: [tag/instance name]
System ID: [system-id]
NET: [full NET address]
Check Time: [timestamp]
Performed By: [operator/agent]
ADJACENCY STATUS:
- Total adjacencies expected: [n]
- Up: [n] | Init: [n] | Down: [n]
- DIS role: [DIS for L1/L2 on segment X, or none]
- Adjacencies requiring attention: [list with states and levels]
LEVEL TOPOLOGY:
- Levels configured: [L1, L2, L1/L2]
- Area addresses: [list]
- Attached bit: [set/clear on L1 LSP]
FINDINGS:
1. [Severity] [Category] — [Description]
Neighbor/Interface: [identifier]
Observed: [state or metric]
Expected: [normal state or value]
Root Cause: [diagnosis from decision tree]
Action: [recommended remediation]
LSPDB SUMMARY:
- L1 LSP count: [n] | L2 LSP count: [n]
- LSP purges in last hour: [count — 0 is healthy]
- Overload bit: [set/clear]
- Lifetime anomalies: [any near-expiry LSPs]
ROUTE ANALYSIS:
- L1 routes: [count] | L2 routes: [count]
- Route leaking: [configured/not configured — expected behavior]
RECOMMENDATIONS:
- [Prioritized action list]
NEXT CHECK: [CRITICAL: 1hr, WARNING: 8hr, HEALTHY: 24hr]
Two routers with the same system ID cause an LSP war — each router originates
an LSP with the same system ID but different content. Each purges the other's
LSP and regenerates its own, creating continuous churn. Symptoms: rapidly
incrementing sequence numbers, frequent purge events, unstable routing.
Detect by checking for the same system ID with two different SNPAs or source
addresses in adjacency tables. Fix: assign unique system IDs.
L1 adjacency requires at least one matching area address in the NET. If two
routers have different area addresses and are both L1-only, no adjacency forms.
L1/L2 routers with different areas can still form L2 adjacency but not L1.
Verify area addresses on both sides. Fix: correct the area address or change
one router to L2-only if inter-area routing is the goal.
A router using narrow metrics (1–63) and a neighbor using wide metrics
(1–16777215) may form adjacency but routes may not compute correctly if one
side cannot interpret the other's TLVs. During migration, configure both sides
for transition mode (advertise both narrow and wide TLVs). Verify with LSPDB
detail — check for both old-style and extended IP reachability TLVs.
IS-IS supports per-level and per-interface authentication. A mismatch prevents
adjacency formation (hellos rejected) or LSP flooding (LSPs rejected). Unlike
OSPF where auth mismatch stops hellos, IS-IS can have adjacency up but LSP
flooding blocked if hello auth succeeds but LSP auth fails. Check auth config
at both hello and LSP levels independently.
Redistributing large external route tables into IS-IS generates many LSPs,
increasing LSPDB size, SPF computation time, and flooding overhead. Use route
policies to limit redistribution scope. Consider setting the overload bit on
non-transit routers that cannot handle the full LSPDB. Monitor LSP fragment
count — each router can originate up to 256 LSP fragments (0–255).
共 1 个版本