[Olsr-dev] IPv6 multi-homing and gateway advertisement
Wed Oct 17 00:22:32 CEST 2012
I recently wasted some thoughts on the ideal way to deploy IPv6 in olsr-routed
mesh networks as I'm currently working on building a firmware for arig.org.il .
Imho it makes most sense to use unique local addresses as defined in RFC 4193
for local mesh clouds.
Amir then pointed me to
And yes, that could make a lot of sense, I suggested to use the 20 or 24 bits
prefix length as defined on
as part of the global ID of the ULA, thus deliberately violating
My next step will be to abuse HNA6 to announce globally routed prefixes (e.g. a
/64 as part of an /56 which can be obtained from a tunnel broker and some
ISPs,also started to give /56 via DHCPv6). Instead of using NAT66 nodes can then
be multi-homed in globally routed prefixes. For this to work, olsr need to
automatically announce the (maybe dynamic) IPv6 prefix of an interface as HNA6
and also be smart enough to understand that HNA6 announcements outside of the
ULA range are actually router advertisements. (Instead of using setting an ::/0
HNA6 which doesn't allow to advertise the globally routed prefix and thus either
requires to use tunnel-broker or ISP obtained global IPv6 prefix(es) in the mesh
or NAT66, which are both solutions I don't really like)
So in the HNA6-gateway-prefix-hack-way every non-gateway node would be able to
automatically choose an address within the IPv6 prefix of a nearby gateway and
set the v6 default route to the ULA of the gateway.
Also a bit dirty, but doesn't look to difficult to do and would combine the
advantages of a convenient and consistent inside-mesh ULA addressing and yet
having real global IPv6 routing without NAT66.... I saw that people previously
thought about inter-operating OLSR and radvd, probably with similar goals.
Forwarding ICMPv6 Router Advertisement messages through OLSR would definitely be
Any results? Experience worth sharing before I get started?
Alternatively, I thought about modifying the SmartGateway feature to use
L2TP(v3) instead of ipip (e.g. by using l2tpv3tun) thus allowing users of a
v6-only ULA-addressed mesh to explicitly making a choice of a v4/v6 gateway
which may offer DHCPv4 and DHCPv6 or RADV over an l2tp ethernet pseudo-wire.
Obviously this variant is more resource-consuming on the gateways than using
NIIT for IPv4 and either NAT66 or the method described above for IPv6 gateways.
Maybe I'm just sitting in the fog and you folks figured out a perfect way to do
this long ago. If so, please let me know :)
More information about the Olsr-dev