FreeBSD + Quagga OSPFD issue

Michal Buchtik buchtajz at borsice.net
Fri Jul 23 08:12:32 UTC 2010


Hi
we have this problem too, see bellow

On 2010/07/22 14:55, Thodoris S. wrote:
> Hello, i am experiencing a weird problem,
>
> i have set up a FreeBSD 8.0 Release, with Quagga 0.9.15 running  ospfd and bgpd for a small network
> the router has multiple ethernet interfaces for backup in my case 2.If i disconnect an ethernet either Physical or Logical (ifconfig em1 down)
> when it comes up again after a while, Quagga doesnt use it as OSPF interface below i am giving you some console outputs to undestand better the issue
>
> #1 show ip ospf interfaces:
> em1 is up
>    ifindex 2, MTU 1500 bytes, BW 0 Kbit<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST>
>    Internet Address 10.10.32.34/30, Broadcast 10.10.32.35, Area 0.0.0.0
>    MTU mismatch detection:enabled
>    Router ID 10.10.32.39, Network Type BROADCAST, Cost: 10
>    Transmit Delay is 1 sec, State Backup, Priority 1
>    Designated Router (ID) 10.10.32.36, Interface Address 10.10.32.33
>    Backup Designated Router (ID) 10.10.32.39, Interface Address 10.10.32.34
>    Multicast group memberships: OSPFAllRouters OSPFDesignatedRouters
>    Timer intervals configured, Hello 10s, Dead 40s, Wait 40s, Retransmit 5
>      Hello due in 0.901s
>    Neighbor Count is 1, Adjacent neighbor count is 1
>
>
> #2 ifconfig em1 down
> #3 ifconfig em1 up
> #4 show ip ospf interfaces:
> em1 is up
>    ifindex 3, MTU 1500 bytes, BW 0 Kbit<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST>
>    OSPF not enabled on this interface
>
>    
Check route table for prefix 10.10.32.32/30. I think, that it will be 
type UG1, because quagga installed it when the interface was down (ospfd 
deamon received it over another link).
> Anyone has any idea on this issue? i have searched the internet and some people seem to have the same problem all with FreeBSD, Linux version dosnt have this problem, some of them speaking for a patch floating arround, but i didnt find any information on it
> i have changed the version of quagga from 0.9.15 to 0.9.16 but not solved, i have compiled the quagga with TCP SOCKETS support but again the problem dosnt solve, the only workaround is to reboot the whole machine
> even if i restart quagga it doesnt work.
>    
Workaround is to add route manually, like this:

route delete 10.10.32.32/30; route add 10.10.32.32/30 -iface em0
or
route delete 10.10.32.32/30; ifconfig em0 10.10.32.34/30

I think freebsd kernel could install "connected" route when interface 
goas up (and replace UG1 route) because connected could be preferred 
over dynamic route. So this seems like FreeBSD bug , instead of quagga ones.

Michal


More information about the freebsd-net mailing list