[Battlemesh] OSPF config for mesh?

Bernd Naumann bernd at kr217.de
Mon Nov 2 06:21:12 CET 2020


Hi Moritz,

On 01.11.20 18:38, Moritz Warning wrote:
> Hi,
> 
> for my mesh routing experiments I like to test OSPF.
> But I have no experience with OSPF yet and routing does not work at all.
> 
> Right now I try to use Bird 2.0.7. The router id is unique for each node
> and each node has an interface called uplink:
> 

The bird-users list is also quiet helpful and responsive! 
https://bird.network.cz/mailman/listinfo/bird-users

>    router id ${router_id};
>    protocol kernel {
>      scan time 60;
>      import all;
>      export all;
>    }
> 
>    protocol ospf v3 {
>      area 0 { interface "uplink" {}; };
>      import all;
>      export all;
>    }
> 
>    protocol device {
>      scan time 60;
>    }
> 
> Maybe someone can see the problem. Feel free to ask questions!
> 
> thanks and best,
> Moritz

The only thing I see, but which should not cause a problem, is the empty 
parameter list for interface. If the config parser does not complain, 
then all should be good.

Do you see the neighbors? `bird> show ospf neighbor`? (birdc has 
tab-completion, and try hitting `?` to get all available sub commands)
I would check `show ospf <interface|neighbors|state>`. If in real doubt 
check if you see the ospf packets...

Do you have our router-id assigned to loopback? And what kind of 
interfaces do you use? broadcast/p2p/multicast, bird should anyway 
detect that, but you can also force it. birds debugging log is also a 
good starter. (MTU mismatch can an issue, too)

I'm also have in all my protocol ospf stanzas:
```
interface "lo" { stub yes; };
```
and the router-id is assigned with `/32` to `lo`.

If I'm not mistaken you need a 32-bit routerid in any case.


Good luck!
Best,
Bernd

PS: I find this quiet useful:
```
protocol kernel {
   learn no;
   persist no;
}
```


More information about the Battlemesh mailing list