How to make bird now its own connectivity (OSPF)

Lukas Haase lukashaase at gmx.at
Sun Oct 24 05:34:47 CEST 2021


Hi Ondrej, Hi Maximilian,


> On Sat, Oct 23, 2021 at 01:38:37PM +0200, Maximilian Wilhelm wrote:
> > > Why does no protocol in Bird want to take responsibility for the router's own connectivity?
> > > How on earth is this supposed to work?
> > 
> > OSPF does that :)
> > 
> > I would propose a configuration for R1 like
> > 
> > protocol ospf {
> > 	import all;	# Learn all routes from OSPF
> > 	export none;	# Do not export (redistribute) any routes from
> > 			# birds main table into OSPF
> > 
> > 	area 0 {
> > 		# Interface conncted to R2 should be part of OSPF and
> > 		# "speak" OSPF (send hello packets)
> > 		interface "eth0";
> > 
> > 		# Interface connected to the local network should be
> > 		# part of OSPF but NOT "speak" OSPF (do NOT send hello
> > 		# packets, so no machine there can join OSPF)
> > 		interface "eth1" { stub yes; };
> 
> Also note that you can just add:
> 
>   interface "*" { stub yes; };
> 
> after all other interface definitions if you want all remaining
> interfaces be configured as stub.

Yes, this is EXACTLY what I was looking for.

Seems i didn’t really understand bird yet (and I did not know that I could operate OSPF “isolated” with just “export none”).

One remaining question here: is it possible to First a) list active (=Hello) interfaces, then b) interfaces which should be completely ignored by bird and finally c) use your wildcard statement to add all remaining interfaces as stub?

That would be the optimum because a) and b) are usually known and c) not necessarily.

(I think it’s probably not possible since I didn’t find an ignore statement or similar in the docs)

Thanks
Lukas



More information about the Bird-users mailing list