[Babel-users] Multiple internet gateways in the mesh
Juliusz Chroboczek
jch at irif.fr
Sun Nov 7 23:47:16 GMT 2021
> I have a hack which pings from each site to see if its own internet
> connection is up. If it is, it installs a default route.
How do the pings reach the Internet before a default route has been
installed?
> Babel will not put its own proto route into the table, if there is
> a static route already configured.
That's not quite right. Babeld will refuse to install a route that has the
same destination as a route that it redistributes, but will blindly ignore
any routes that it's not redistributing. So the solution is to make sure
that Babeld does not see your default route.
1. Make sure that the static route is not visible to babeld:
redistribute ip 0.0.0.0/0 proto xxx allow
redistribute ip :::/0 proto xxx allow
where xxx is *not* the protocol of the static route. (This is the
difference with your configuration, where you ask Babeld to
redistribute routes for all protocols, including the one of the
static route.)
2. When the route has been shown to be routable, have your reachability
daemon install a route tagged with the protocol that Babeld redistributes:
ip route add ... proto xxx
Babel-pinger works like this, but with an added subtlety: the default
route that it redistributed into Babel is an unreachable route, so it
won't interfere with the pinging it performs.
> I've tried playing with "allow-duplicates 20", but Babel crashed (1.10).
Thanks for the report, I'll have a look. (I might even remove
allow-duplicates altogether, it's only useful for monitoring and tends to
confuse people.)
-- Juliusz
More information about the Babel-users
mailing list