battling with babel and route changes

Juliusz Chroboczek jch at pps.jussieu.fr
Wed Jun 22 09:39:43 EDT 2011


[Added babel-users to the CC, with permission from Dave.]

> 0) babel keeps all the routing information in it's head. It  does not
> use the kernel metrics in particular:

Yes.  That's by design.

The ``kernel metric'' is something of a misnomer: it's not a metric,
it's better understood as a priority.  It's only useful to discriminate
between routes with the same destination that are installed by different
routing protocols.  It's analogous to what Cisco call the ``Administrative
Distance''.

You can choose the kernel priority used by Babel with the -k command-line
option.  If you need finer-grained control on routing than possible
with -k alone, -t and -T together with ``ip table'' and friends are what
you need.

A patch to reflect the metric in the kernel priority has been published
on this list at some point; I'll not be merging it into Babel, since
I remain convinced that that's the wrong thing to do.

> 1) babel installs ipv4 routes with a metric of 0, ipv6 routes with a
> metric of 1024

These are apparently the kernel's defaults -- we call the kernel with
the value 0 in both cases.  You can set the priority with -k (but cannot
set it to be different between v4 and v6), and if you need any more
control, use routing tables (-t and -T).

-- Juliusz



More information about the Bloat-devel mailing list