OpenWrt Forum Archive

Topic: IPv6 MLDv2 report messages && WRT bridge

The content of this topic has been archived on 21 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

Hello all,

I have already send this topic to the general discussion forum, but I think it might be more developer related:
----
I am experimenting with delivering IPv6 multicast traffic over the WRT54GS, running OpenWRT. Anyhow I went into a problem with forwarding the MLDv2_report message over the bridge br0 from a mobile client, connected over WLAN. The MLDv2 report messages are received in in the eth1 (WLAN IF), but not in the eth0 nore in the br0 interface. Does the bridge support IPv6 multicast compliant MAC addresses, starting with 3333+LowByte(Ipv6 MulticastAddress) ? Usually a bridge is working on L2 and should forward any ICMPv6 packages .? The bridge  is forwarding any other IPv6 traffic without problems e.g. ICMPv6 messages generated with ping6. MLDv2 report messages are a subset of IPv6 ICMP messages with the link local IPv6 multicast address FF02::16 ( all MLDv2 compliant router)  as destination address. The same behavior I figured out with the MLDv2 query messages, sent by the Multicast router to all nodes (FF02::1) on the local link. The MLD report I ahve seen at the eth0 and br0 IF but not at the wireless link.

----

I have no idea about this bridge behavior, but I will try to use the mrd6 (IPv6 multicast routing daemon) by Hugo Santos, IT Aveiro.
(http://artemis.av.it.pt/~mrd6) The latest SVN code (today) includes the relevant files for mipsel cross-compiling and building an ipk-file.
I will just open the bridge and use the WRT as a normal IPv6 multicast router. I will send you a report about the results tomorrow evening. Anyhow I am intersted in discovering this strange bridge behavior. 

regards

Olaf

We searched a lot and finaly it seems to be a bug in ebtables.

A workaround is to run :
"echo 0 > /proc/sys/net/bridge/bridge-nf-call-ip6tables"

This will disable bridge IPv6 filtering.

More informations are available on : http://dbeacon.innerghost.net/LinuxBridgingMulticast

Bart De Schuymer provided a kernel patch to correct this deffect.
This patch is now in kernel tree since 2.6.15.

The discussion might have continued from here.