OSPF Neighbor States – Complete Guide with Examples
✅ Overview of OSPF Neighbor FSM (Finite State Machine)
The OSPF Neighbor Finite State Machine (FSM) defines the step-by-step process that two OSPF routers go through to form an adjacency.
- Build neighbor relationships
- Synchronize routing information
- Prevent routing loops
✅ Purpose of OSPF Neighbor States
- Ensure reliable and ordered exchange of link-state information.
- Control the formation of adjacencies only where necessary (e.g., with DR/BDR).
- Provide a structured mechanism to detect and recover from neighbor issues.
✅ OSPF Adjacency Process Flow
- Routers send Hello packets to discover neighbors.
- Routers go through seven neighbor states.
- Full adjacency is formed only with DR/BDR (on multi-access networks) or all neighbors (on point-to-point links).
✅ OSPF Neighbor States (in Order)
Order | State |
1 | Down |
2 | Init |
3 | 2-Way |
4 | ExStart |
5 | Exchange |
6 | Loading |
7 | Full |
✅ Meaning and Role of Each State
- Down: No Hello packets received. Initial state.
- Init: Hello received, but our RID not listed yet.
- 2-Way: Bi-directional Hello exchange; DR/BDR elected here.
- ExStart: Master/slave negotiation for DB exchange.
- Exchange: DBD packets sent/received.
- Loading: Missing LSAs requested and sent.
- Full: LSDBs fully synchronized.
✅ OSPF Packet Types and Their Role in States
Packet Type | Purpose | Used In State |
Hello | Discover and maintain neighbors | Down, Init, 2-Way |
DBD | Describe contents of LSDB | ExStart, Exchange |
LSR | Request specific LSAs | Loading |
LSU | Send requested LSAs | Loading |
LSAck | Acknowledge LSUs | Loading |
✅ Neighbor State Transitions
From State | To State | Trigger |
Down | Init | Received Hello |
Init | 2-Way | Neighbor sees our Router ID |
2-Way | ExStart | DR/BDR election or P2P |
ExStart | Exchange | DBD exchange |
Exchange | Loading | Missing LSAs detected |
Loading | Full | All LSAs received |
✅ Timers (Hello/Dead)
Default Hello Interval: 10s, Dead Interval: 40s
Mismatch prevents adjacency.
✅ DR/BDR Influence
- DROTHERs form FULL state only with DR/BDR
- DROTHER ↔ DROTHER = 2-Way
✅ Troubleshooting Stuck States
State | Issue Cause |
Init | Unidirectional Hello (timers or L2) |
ExStart | MTU mismatch, duplicate RIDs, DR/BDR mismatch |
Loading | LSA corruption, authentication mismatch |
✅ Useful Commands
show ip ospf neighbor
show ip ospf interface
debug ip ospf adj
debug ip ospf hello
show interface <int> | include MTU
✅ Summary Table of OSPF Neighbor States
State | Description | Common Packet Type |
Down | No Hello received | — |
Init | Hello received, we not seen yet | Hello |
2-Way | Bi-directional Hello | Hello |
ExStart | Master/slave negotiation | DBD |
Exchange | Exchange of LSA headers | DBD |
Loading | Requesting LSAs | LSR, LSU, LSAck |
Full | Synchronized LSDB | — |
OSPF Neighbor States Quiz
← Back to Home