[Babel-users] Babel now has a proper configuration language

Juliusz Chroboczek Juliusz.Chroboczek at pps.jussieu.fr
Mon Feb 11 14:40:22 UTC 2008


Dear all,

I've just committed into the Darcs repository a version of Babel that
uses a proper configuration language to specify input, output filters
and redistribution policies.  It needs more testing, but appears to work.

Incompatible changes: the flags -x, -4 and -c no longer exist, they're
subsumed by the configuration language.  Configuration directives can
be specified in /etc/babel.conf, or on the command line using the -C
flag.

It's completely undocumented right now, but here are a few examples:

  - refuse to participate in IPv4 routing:

      in 0.0.0.0/0 deny
      out 0.0.0.0/0 deny

  - I'm short on battery, advertise routes with an artificially higher metric:

      out metric 256

  - the interface eth1 is slow, avoid routes going through it unless
    there's no better alternative:

      in if eth1 metric 256

  - redistribute the default IPv6 and IPv4 routes:

      redistribute ::/0 le 0 metric 128
      redistribute 0.0.0.0/0 le 0 metric 128

  - redistribute all routes from Quagga (IPv4 and Iv6):

      redistribute proto 11 metric 128

  - reject any routes from a neighbour with router-id ::dead:beef:

      in neigh ::dead:beef deny

  - reject any routes originated by the router ::dead:beef:

      in id ::dead:beef deny

For those of you concerned about embedded systems, it's a hand-written
parser, and takes some 1300 bytes of code.

                                        Juliusz






More information about the Babel-users mailing list