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