[Battlemesh] ipv6 prefix delegation in layer 3 mesh networks

Juliusz Chroboczek jch at pps.univ-paris-diderot.fr
Thu Feb 11 15:02:32 CET 2016

Hi Philipp,

What you describe is exactly what the IETF Homenet working group has been
working on over the last few years.


I've written up a Homenet HOWTO:


> 1) How do we distribute the ipv6 public prefix from a gateway node to nodes in
> the network?

The Homenet architecture uses a specific protocol for that, called HNCP.
HNCP works by flooding the full topology and negotiating prefxes for each
link.  It supports having multiple routers on a single link (a single
prefix will get assigned in that case by an election mechanism).

HNCP converges reasonably fast, but it causes a lot of data traffic when
the topology changes.  If your mesh is stable, you'll be happy with HNCP.
If it isn't, you'll want to work with Henning on improving HNCP's support
for mesh networks.

> 2) How do we guarantee that packets with a specific source address get routed
> via the gateway the address originated from? The problem is that a gateway or
> upstream ISP would possibly drop outbound packages that do not have a src ip
> from the gateway prefix. [...]

The Homenet architecture mandates the use of source-specific routing:


> To my knowledge, the later problem is solved by source specific routing
> implemented in layer 3 routing daemons such as OLSRv2 or babel(s).

Note that babels is obsolete, the source-specific code has been merged
into mainline babeld (and improved since then).

-- Juliusz

More information about the Battlemesh mailing list