Hi!

I'm using BIRD 2.0.2 and have trouble with static routes that gets stuck in 
dormant state.  It looks as the problem happens if the static route is pushed 
into BIRD config before the interface exists. BIRD detects when interfaces go 
up and down, but misses when interfaces are added. The only way I have found to 
kick BIRD out if this state is to issue another configure command after the 
interface exists.

Reproducing this is very easy, simply add a static route over a sub-interface 
that is not yet created, this leaves the route in dormant state 

Add static route over a sub-interface

protocol static {
    route 172.23.1.0/24 via "eth1.666";                             
}

Reconfigure BIRD, note it picks it up as dormant.

bird> configure
Reading configuration from /tmp/bird.conf
Reconfigured
bird> show static
172.23.1.0/24
        dev eth1.666 (dormant)
bird>

Now create the sub-interface and bring it up

vconfig add eth1 666
ifconfig eth1.666 up

BIRD does not discover that the interface was created and does not push the 
route into the kernel. 

Thanks,
Kenth

Reply via email to