Adjacent Node
Networking, explained. No BS.

IS-IS

What It Is

Intermediate System to Intermediate System is a link-state routing protocol. It runs directly over Layer 2, uses TLVs to carry routing information, and is common in service provider, large enterprise, and data center networks. Modern IS-IS is valued because it is stable, extensible, and useful for IPv4, IPv6, traffic engineering, and segment routing.

IS-IS can look strange if you learned OSPF first. The important pieces are levels, NET addressing, neighbors, LSPs, wide metrics, and address families.

Core Attributes

Attribute Value
Protocol type Link-state IGP
Algorithm Dijkstra SPF
Transport Directly over Layer 2
Cisco administrative distance 115
Routing data format TLVs
IPv4 support Integrated IS-IS from RFC 1195
IPv6 support RFC 5308
Modern metric style Wide metrics

Modern note: IS-IS does not use IP to form adjacencies. If IP addressing is broken but Layer 2 is good, IS-IS may still form a neighbor.

Levels

Level Scope OSPF Rough Equivalent
Level 1 Inside an area Intra-area routing
Level 2 Between areas Backbone routing
Level 1-2 Connects L1 area to L2 backbone ABR-like role

Design note: Large IS-IS designs often keep the core as Level 2 and place access or aggregation domains in Level 1. Many smaller designs run everything Level 2-only for simplicity.

NET Address

Part Meaning Example
AFI Authority and format identifier 49 for private addressing
Area IS-IS area identifier 0001
System ID Unique router identifier 0000.0000.0001
NSEL Network selector 00

Example NET:

49.0001.0000.0000.0001.00

Watch out: System IDs must be unique. Duplicate system IDs create confusing database and adjacency behavior.

PDUs And TLVs

Item Purpose
IIH IS-IS hello, forms and maintains neighbors
LSP Link-state PDU, carries reachability and topology data
CSNP Complete sequence number PDU, database summary
PSNP Partial sequence number PDU, request or acknowledge LSPs
TLV Type, length, value container for extensible data

Network Types

Network Type DIS Notes
Broadcast Yes Ethernet multiaccess segments elect a DIS
Point-to-point No Common on routed links and core links

DIS behavior differs from OSPF DR behavior. The DIS can be preempted, and there is no backup DIS.

Design Choices

Choice Recommendation
Metric style Use wide metrics
Circuit type Set L1, L2, or L1-2 intentionally
Point-to-point links Use point-to-point network type where appropriate
Area design Keep the hierarchy simple
IPv6 Enable address families deliberately
Segment routing Plan SRGB, node SIDs, and IGP extensions together
Authentication Use supported authentication for adjacencies and LSPs
Summarization Summarize at L1/L2 boundaries when it reduces churn

Modern note: Segment routing commonly uses IS-IS extensions to advertise SIDs. That makes IS-IS part of the transport control plane, not just basic reachability.

Cisco IOS/IOS-XE Examples

Basic IPv4 IS-IS with wide metrics:

router isis CORE
 net 49.0001.0000.0000.0001.00
 is-type level-2-only
 metric-style wide
!
interface Loopback0
 ip address 10.255.0.1 255.255.255.255
 ip router isis CORE
!
interface GigabitEthernet1/0/1
 description Core link to P2
 ip address 10.0.12.1 255.255.255.252
 ip router isis CORE
 isis network point-to-point
 isis circuit-type level-2-only

Dual-stack interface:

interface GigabitEthernet1/0/2
 description Dual-stack IS-IS link
 ip address 10.0.23.1 255.255.255.252
 ipv6 address 2001:db8:23::1/64
 ip router isis CORE
 ipv6 router isis CORE
 isis network point-to-point

Segment routing pattern:

segment-routing mpls
 global-block 16000 23999
!
router isis CORE
 address-family ipv4 unicast
  segment-routing mpls

Notes:

  • Segment routing support and syntax vary by platform and release.
  • Keep NET system IDs stable. Changing them is operationally similar to changing a router ID.
  • Use loopbacks for stable node identity and BGP next hops.

Troubleshooting

Symptom Check Likely Cause
No neighbor Level, area, MTU, auth, L2 transport Adjacency requirement mismatch
Neighbor stuck initializing Hellos and three-way state One-way L2 or mismatch
IPv4 route missing TLVs, address family, metric style Reachability not advertised
IPv6 route missing IPv6 address family and TLVs IPv6 not enabled in IS-IS
Bad path chosen Wide metric, interface metric, L1/L2 leak Metric or level design
Database churn Flapping link, LSP lifetime, overload Instability or overload bit
SR label missing SRGB, node SID, IGP SR state Segment routing not fully enabled

Commands

show isis neighbors
show isis database
show isis database detail
show isis interface
show isis topology
show ip route isis
show ipv6 route isis
show isis segment-routing
show logging | include ISIS

Expected clues:

  • Neighbor level and circuit type match the design.
  • LSP database has stable sequence numbers.
  • Wide metric TLVs are present where expected.
  • IPv4 and IPv6 reachability are advertised intentionally.
  • SR SIDs appear only where segment routing is meant to run.

Watch Out

  • Do not reuse system IDs.
  • Do not leave metric-style mismatched across an IS-IS domain.
  • Do not assume IS-IS issues are IP reachability issues. Check Layer 2 first.
  • Do not run L1/L2 everywhere unless the design needs it.
  • Do not add segment routing without clear label block and SID planning.

References