[mesh-dev] Multicast forwarding for layer 3 pseudo-bridges

Marc Juul juul at labitat.dk
Wed Jun 24 08:14:46 PDT 2015


On Wed, Jun 24, 2015 at 4:07 AM, Marc Juul <juul at labitat.dk> wrote:

> # The problem
>
> Our extender-nodes can't bridge their adhoc wifi interface to their
> ethernet interface since bridging adhoc is not possible. A layer 3
> pseudo-bridge using relayd should work but both Babel and mDNS rely on
> multicast which is not handled by relayd.
>

After thinking about this some more I realized that I was being silly.

relayd only relays ARP requests/replies. It does absolutely nothing for
propagating routes to nodes that are more than one hop away. This means
that there is no way around running babeld unless a real layer 2 bridge is
possible.

The rest of my previous post regarding mDNS and multicast routing is still
relevant. Avahi is a pretty hefty package, and for the extender nodes it
would be pretty cool if we could make it fit on 4 MB devices (such as the
Bullet M2 which we have quite a few of) so it would be nice to create an
OpenWRT package for mdns-repeater. I looked at the code and it's extremely
minimal and has no dependencies:

  hg clone https://bitbucket.org/geekman/mdns-repeater

It would be pretty awesome to have a mesh network where all nodes are real
multicast routers but that's definitely not something we need for the next
release, nor actually ever. It's a cool extra feature that I'd personally
love to experiment with at some point.

I'm going to call it a night and aim to implement this at the Thursday
hacknight.

-- more notes on multicast routing below

I talked to the folk at #openwrt, did some more research and learned a few
things:

Chaos Calmer likely abandoned the IPv6 multicast routing packages because
they are super old and unmaintained. Here's the commit:


https://github.com/openwrt-routing/packages/commit/21e4cc47bd7a2f84d2f656bafa161eaff2794f38

There is another combined IPv4 and IPv6 multicast routing daemon that
wasn't abandoned until 2013:

  http://sourceforge.net/projects/pimd-ng/

pimd-ng has never been an OpenWRT package.

pimd (which is IPv4 only) doesn't have an OpenWRT package and probably
never did but it is actively maintained:

  https://github.com/troglobit/pimd

The conclusion is that there are not maintained IPv6 multicast routing
daemons. That's sad since an interesting use-case would be e.g. streaming
hacker conferences/camps to different countries. If each stream only has to
be sent once between continents that would be pretty cool.

-- 
marc/juul
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://sudoroom.org/lists/private/mesh-dev/attachments/20150624/a0045ce0/attachment.html>


More information about the mesh-dev mailing list