On Wed, Nov 03, 2010 at 07:39:48AM -0700, Mahlon E. Smith wrote:
On Tue, Nov 02, 2010, Ondrej Zajicek wrote:
BIRD currently does not check or use link up/down state. OSPF routers generally check reachability using HELLO packets, not by reported link state, although sometimes this is also implemented.
Hmm, in this particular case, bird is currently responsible for managing routes that go out through that interface. (Used for internet failover, on the external interface.) With the link state down, the OSPF daemon was still reachable to the internal network, so the HELLO check doesn't help me unless the /internal/ interface dies, or the entire router does.
Although i agree with Joakim Tjernlund and others that link state change detection is useful to get faster response to internal network unreachability. I think that in your case you would need something slightly different. I understand that you have some (probably static) routes with gateway accessible through given (external) interface and you want to detect unreachability of the (external) gateway to add/remove that (static) routes. Detecting a link state is crude, because there might be many other kinds of problems that does not change link state. I would suggest to use some shell/perl script that ping to the gateway and according to its reachability it will enable/disable static protocol (with routes using that gateway) in BIRD. I plan to implement a link state change handling, but it will take some time, it is definitely more complicated than the patch you sent (for example, it should differentiate between administrative up/down and link state up/down). -- Elen sila lumenn' omentielvo Ondrej 'SanTiago' Zajicek (email: santiago@crfreenet.org) OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net) "To err is human -- to blame it on a computer is even more so."