Advertising interface addresses via OSPF

Ryan Whelan rcwhelan at
Mon Jul 25 21:03:57 CEST 2011

On Mon, Jul 25, 2011 at 2:04 PM, Ryan Whelan <rcwhelan at> wrote:
> I have 3 Linux machines connected to one another by point-to-point
> links. With the end point of each tunnel using a tun device, there are
> a total of 6 tun devices used on across the 3 machines. 2 per machine.
>  Using OSPF, Bird is not advertising the addresses on the tun devices
> to the other nodes.  This causes an issue because each device is
> unaware of the addresses on the tun devices on tunnels it is not
> connected to.  In other words, node 'C' is unaware of the addresses on
> the tunnel between nodes 'A' and 'B'.  Thats an issue because if the
> link between 'A' and 'B' fails, 'A' will get the routes 'B' knows
> about thru 'C', but 'B' does not know the tun address of 'A' thats
> connected to 'C' so all the traffic 'C' routes from 'A' to 'B' comes
> from an address 'B' can't route back too.  (Sorry its so hard to
> follow)
> I've been able to alleviate it by adding a `stubnet` for each tun
> device on each machine, but I'm afraid that will become increasingly
> difficult to maintain as the number of nodes increases.
> Is there another way? I've been unsuccessful at getting bird to import
> (and advertise) the routes associated with the tun devices.  (using
> the 'device' protocol I can get bird to import them, but ospf doesn't
> advertise them to the other nodes)

I think I figured it out.  Adding the 'direct' protocol (i called it
'device' in my last message) and an 'export all;' to ospf seems to
have done it.

protocol direct {
        interface "tun*";

protocol ospf A0 {
        export all;

(Sorry for replaying to my own message again)

More information about the Bird-users mailing list