[Babel-users] Router-id stability

Juliusz Chroboczek jch at pps.univ-paris-diderot.fr
Wed Jun 26 23:50:53 UTC 2013


I've just received (by private mail) an inquiry asking whether
router-ids are stable.  I'll answer here, for future reference.

The router-id is a 64-bit integer that is attached to all the routes
redistributed by a given router.  From the point of view of the
protocol, it must only satisfy the two following properties:

1. all router-ids in a network are distinct; and
2. if a router's seqno is lost, it must change router-ids.

If a router loses its seqno and doesn't change router-ids, it will be
unreachable for up to three minutes (until the feasibility information
times out from the rest of the network, see source.c).

Babeld's behaviour is as follows:

 - the router-id is in modified EUI-64 format;
 - by default, the router-id is derived from the MAC address of the
   first interface passed to babeld; both the router-id and seqno are
   saved to stable storage at shutdown;
 - if random-id is set (-r), then the router-id is drawn at random;
   this is recommended on routers that don't have any stable storage
   and must be able to reboot and join the mesh in less than 3 minutes.

In practice, this means that if you don't set random-id and don't
change the order of interfaces in the config file, then the router-id
will remain stable.  I find this useful for troubleshooting, which is
why random-id is not the default.

-- Juliusz



More information about the Babel-users mailing list