IS-IS expects to detect a single neighbor, bring up an adjacency and sync LSDBs on point to point interfaces. RFC3373 (now RFC5303) introduced a threey way handshake for point to point IS-IS routers to become neighbors.
On point to point networks the Local Circuit ID of the interface appears on IIH packets. These are only used to detect any change in the Local Circuit Id on the other end of the link.
The Local Circuit Id limits a router to 256 interfaces, when the three way handshake was introduced it also included Extended Local Circuit Id support that is 4 octets long.
The three way handshake IIH packets include the following fields:
- Adjacency Three Way State – this is the state of the adjacency as seen by the sending router
- Extended Local Circuit ID – The ID of the sending routers interface
- Neighbor System ID – This value is set to the ID of the neighboring router whose IIHs have been successfully received.
- Neighbor Extended Local Circuit ID – This value is set to the Extended Local Circuit ID field value from the neighbors IIH packets.
When neighbors are sending IIHs to each other when one side receives the IIH, it will begin sending IIHs with the Adjacency three Way State set to Initializing and includes the Neighbors System Id and Local Circuit Id to indicate that it hears the neighbor.
When the originating neighbor receives an IIH with its own System ID and Local Circuit Id and it matches what it’s advertising, that neighbor sets his state to Up and begins sending IIHs with the other neighbors System ID and Circuit ID.
When the receiving neighbor gets the IIH from the originating neighbor who is UP, and it sees its own System ID and Circuit ID in the message and it matches what it’s sending, it then turns its neighbor state up and concludes the handshake.
As a security measure IS-IS routers will only accept IIHs for three way adjacencies if the following are met:
- The Neighbor System ID, Neighbor Extended Local Circuit ID, are not present
- The Neighbor System ID matches the receiving routers System Id and the Neighbor Extended Local Circuit ID matches the receiving interfaces ID.
If these are not met incoming IIHs are dropped.
When neighbors initially come up their first intention is to flood all known LSPs to the new neighbor, CSNPs will be sent in addition to all the LSPs for redundancy to ensure any LSPs missing during the exchange are resent and acknowledged using PSNP packets.