[Cerowrt-devel] mdns reflector issues on ipv6/babel routing through nat.

Dave Taht dave.taht at gmail.com
Sun Mar 18 17:22:07 EDT 2012


Once you get to a few routers, a few deep, (3 in series in this case,
9 overall), the avahi mdns proxy starts to malfunction over ipv6, and
I ended up with a rather nasty broadcast storm.

So I had to disable the ipv6 multicast of mdns in order to get my
network back in this (excessively) complex network.

use-ipv6=no in the /etc/avahi/avahi-daemon file

Seems to work fine, two deep. Curiously, I did not observe a similar
storm for ipv4...

Now this is across like 5 different versions of cerowrt, but it would
not surprise me that this is a  generic problem with avahi on ipv6,
and/or a symptom of the brain-damaged-ness of mdns in the first place.

use-ipv6=no

I note that when you connect cero boxes together in a babel mesh
configuration, site-local multicast is not a problem, because it
doesn't work in the first place (by design). This can be construed as
an advantage (no broadcast storm), or disadvantage (mdns and
site-local multicast doesn't work across meshed links)

Incidentally, I don't know if anyone would purposely inflict a network
this complex on themselves:

http://pastebin.com/LzeeiCXg

but it does illustrate that a complex, automagically routed, fault
tolerant ipv4 and ipv6 network IS feasible, so long as all internal
addresses are unique.

The biggest problem I run into is that 'failover-capable,
fault-tolerant routing' introduces major headaches with firewall
rules.

Another thing the above paste illustrates that you can mix and match
ipv4 nat with ipv6 fully meshed routing.

The box I took that trace off has babel enabled on all interfaces, and
has the following rule at the top of it's babeld.conf file

out if ge00 ip 0.0.0.0/0 deny

(as do multiple other boxes in the lab on the external network)

this prohibits announcing ipv4 routes across the natted ge00
interface, but allows ipv6. In the caseof that paste, this particular
router has NO internal wired connections at all, it just meshes
internally for ipv4, and because ge00 is a higher quality (ethernet)
interface, babel chooses it for the default for ipv6 for most routes.



-- 
Dave Täht
SKYPE: davetaht
US Tel: 1-239-829-5608
http://www.bufferbloat.net



More information about the Cerowrt-devel mailing list