Bug #5868
closedQuagga OSPF Priority value "0" (zero) is being ignored - DR election doesnt work properly.
100%
Description
On the interface configuration of the Quagga OSPF in a broadcast network, if we dont want a pfsense to take place on the Designated Router (DR) election we should put the value 0 (zero).
Eventhough I am putting zero, when I check the Quagga ospfd.conf file on the Status bar, or via CLI, i dont see the "ip ospf priority 0" entry under interface. Therefore it is accepted as priority 1.
That means pfsense interface takes place on the DR election on a broadcast network. This is a bug I believe.
This unveils another problem. When priority is 1 for all pfsenses in the same OSPF network, the highest OSPF router id should be DR and the second highest OSPF Router ID should be BDR (Backup designated router). So when I do a change on the OSPF configuration of the DR, I expect BDR to be the DR, but other pfsense interfaces with lower Router IDs are becoming DR.
Also eventhough I am not able to use priority zero via the pfSense web configurator, i am choosing all pfSenses as priorty 1 and one pfSense as priority 255, and one pfSense as priority 254. When I do a change on the DR pfsense, I expect BDR (with priorty 254) to be selected as DR, but it stays as BDR and another pfsense interface with priorty vale 1, becomes DR.
In conclusion, OSPF DR selection for broadcast networks doesnt work, and at least the priority zero would push the "ip ospf priority 0" entry to the ospfg.conf file correctly via pfSense web configurator so that I would know that certainly there would be only one DR.
Regards,
Ersan Yolcu
Updated by ERSAN YOLCU over 9 years ago
Category should be Quagga OSPF, I couldn't find the way to update my bug report, sorry.
Regards,
Ersan Yolcu
Updated by ERSAN YOLCU over 9 years ago
And I have tried this on pfSense version 2.2.6 only pfSense network as well as 2.2.4 only pfSense network.
Regards,
Ersan Yolcu
Updated by Jim Pingle almost 9 years ago
- Category set to Quagga OSPF
- Status changed from New to Confirmed
- Assignee set to Jim Pingle
Looks like it's a classic case of PHP returning "true" for empty() when passed a string of "0". I'll look into it.
Updated by Jim Pingle almost 9 years ago
- Status changed from Confirmed to Feedback
- % Done changed from 0 to 100
- Affected Architecture All added
- Affected Architecture deleted (
)
I pushed a fix for this in package version 0.6.15.
Updated by Jim Pingle almost 9 years ago
- Status changed from Feedback to Resolved
Feedback from a customer who was hitting this confirmed it's now working.