Octet

IS-IS does not run over IP. What does that mean, and why does it matter?

Show the answer

Say this first

IS-IS packets are carried directly in layer 2 frames, not inside IP packets. On Ethernet they use LLC with the OSI service access point 0xFE. Its packets are hellos (IIH), link state PDUs (LSPs), and complete and partial sequence number PDUs (CSNP, PSNP). IP prefixes are just TLVs inside the LSPs (RFC 1195 for IPv4, RFC 5308 for IPv6). Being outside IP means it cannot be attacked from a remote IP host, and adding IPv6 needed new TLVs rather than a new protocol.

Go deeper

The packet types

PDUPurpose
IIH (LAN L1, LAN L2, point-to-point)Find and keep neighbors
LSP (L1, L2)A router's links and prefixes for one level
CSNPA summary of every LSP in the database; the DIS sends it every 10 s on a LAN
PSNPRequests or acknowledges specific LSPs

On Ethernet, L1 packets go to MAC 0180.C200.0014 and L2 packets to 0180.C200.0015.

Practical effects

  • On IOS you enable it per interface with ip router isis TAG. The hellos still list the interface IP addresses, because routers need them as next hops for the IP routes.
  • IS-IS pads hellos to the full interface MTU by default, so an MTU mismatch stops the adjacency. That is deliberate: it finds MTU problems before large LSPs are silently dropped.
  • You cannot ping or traceroute IS-IS itself. show isis neighbors and show clns interface are your tools.

Traps

  • Giving IS-IS an IP protocol number. IANA does list 124 for IS-IS over IPv4, but real IS-IS deployments carry it directly in layer 2 frames, not in IP.
How did you do?Book 4.1 Global Internet