I won’t really waste your time in introducing myself and blabber eloquent about my technical expertise et al. I’ll get on with today’s point of discussion right away.

I have been getting a lot of queries about OSPF being stuck in 2-Way state, is that possible? Well, we have heard about OSPF stuck in ‘Init’, ‘Exstart’, ‘Loading’, but we have seldom heard about OSPF stuck in ‘2-Way’. Is it possible? The answer is Yes!

Note: There is a difference between OSPF in 2-Way state and OSPF ‘stuck’ in 2-Way state. In a broadcast network, 2 routers who are neither DR or BDR, will form a 2-Way neighborship with each other and ‘FULL’ with the DR/BDRs.

Let us get into some hands-on experiment.

Scenario 1: PE1 and PE2 are both configured with OSPF Broadcast Network and default priority

Let us look at the output now [We will concentrate on only PE2 to keep this post short and sleek]

PE2#show ip ospf neighbor detail | sec 1.1.1.1
Neighbor 1.1.1.1, interface address 51.1.3.1
In the area 0 via interface BDI1001
Neighbor priority is 1, State is FULL, 6 state changes
DR is 51.1.3.1 BDR is 51.1.3.2
Options is 0x12 in Hello (E-bit, L-bit)
Options is 0x52 in DBD (E-bit, L-bit, O-bit)
LLS Options is 0x1 (LR)
Dead timer due in 00:00:30
Neighbor is up for 00:01:26
Index 1/1/1, retransmission queue length 0, number of retransmission 0
First 0x0(0)/0x0(0)/0x0(0) Next 0x0(0)/0x0(0)/0x0(0)
Last retransmission scan length is 0, maximum is 0
Last retransmission scan time is 0 msec, maximum is 0 msec

PE2#show ip ospf neighbor | sec 1.1.1.1
1.1.1.1 1 FULL/DR 00:00:39 51.1.3.1 BDI1001

So, we are good when the priority is 1, DR and BDR gets elected as per the election rules. Let us change the priority now (ip ospf priority 0).

Scenario 2: PE1 and PE2 are both configured with OSPF Broadcast Network and priority set to 0

PE2#show ip ospf neighbor 1.1.1.1 detail
Neighbor 1.1.1.1, interface address 51.1.3.1
In the area 0 via interface BDI1001
Neighbor priority is 0, State is 2WAY, 7 state changes
DR is 0.0.0.0 BDR is 0.0.0.0
Options is 0x12 in Hello (E-bit, L-bit)
LLS Options is 0x1 (LR)
Dead timer due in 00:00:36
Neighbor is up for 00:04:39
Index 0/0/0, retransmission queue length 0, number of retransmission 0
First 0x0(0)/0x0(0)/0x0(0) Next 0x0(0)/0x0(0)/0x0(0)
Last retransmission scan length is 0, maximum is 0
Last retransmission scan time is 0 msec, maximum is 0 msec

PE2#show ip ospf neighbor | sec 1.1.1.1
1.1.1.1 0 2WAY/DROTHER 00:00:32 51.1.3.1 BDI1001

So, we see that the nighbor is stuck in 2-Way state now as DR and BDR election was not possible.

Now, DR and BDR don’t get elected in a ‘point-to-point’ network too, right? So, what is the behavior in such a scenario.

Scenario 3: PE1 and PE2 are both configured with OSPF Point-to-Point Network and priority set to 0

PE2#show ip ospf neighbor 1.1.1.1 detail
Neighbor 1.1.1.1, interface address 51.1.3.1
In the area 0 via interface BDI1001
Neighbor priority is 0, State is FULL, 9 state changes
DR is 0.0.0.0 BDR is 0.0.0.0
Options is 0x12 in Hello (E-bit, L-bit)
Options is 0x52 in DBD (E-bit, L-bit, O-bit)
LLS Options is 0x1 (LR)
Dead timer due in 00:00:35
Neighbor is up for 00:00:14
Index 1/1/1, retransmission queue length 0, number of retransmission 0
First 0x0(0)/0x0(0)/0x0(0) Next 0x0(0)/0x0(0)/0x0(0)
Last retransmission scan length is 0, maximum is 0
Last retransmission scan time is 0 msec, maximum is 0 msec

PE2#show ip ospf neighbor | sec 1.1.1.1
1.1.1.1 0 FULL/ – 00:00:38 51.1.3.1 BDI1001

So, if we change the network to ‘point-to-point’, even though there is no DR-BDR election, the OSPF transitions quite smoothly to ‘FULL’ state as it was never designed to run with an election process. I believe that will clear all the confusion about OSPF getting stuck in 2-Way state.

That will be all from my side for today. Please leave your valuable comments in the Comments Section below, I am surely going to address each one of them.

Adios!