Multicast traffic in Adhoc mode

Hi all,

I recently upgraded two MikroTik RB411AH from OpenWrt 15.01 to OpenWrt 18.06.02 and I have a problem with multicast traffic when the devices are configured in adhoc mode.
On each device I am running an utility that I created that use multicast to share information between the various devices in the network. However, I discovered that even if the traffic is correctly sent trough the interface (I have a third MikroTik RB411AH that I have not upgraded yet in which I am running tcpdump) the other device is not receiving any multicast messages.
The unicast works perfectly and I do not think the firewall is blocking any multicast packet since I assigned the interface to the lan firewall-zone and in mesh mode the multicast works fine.

Am I missing something in the configuration or are there other files that I must change in order to make it work?

This is the configuration file that I am using

/etc/config/wireless

config wifi-device 'radio0'
    option type 'mac80211'
    option hwmode '11g'
    option path 'pci0000:00/0000:00:12:0'
    option diversity '1'
    option channelbw '5'
    option channel '5'
 
config wifi-iface
   option device 'radio0'
   option network 'wlan0'
   option encryption 'none'
   option mode 'adhoc'
   option ssid 'myadhoc'

Thanks,
Lorenzo

What is that utility; and how does it work?

  • I'm quite lost on how you got multicast working on an ad hoc network
  • If you compiled this utility, you may have to re-compile it for version 18

The utility is a simple service that use libpcap to fetch and forward multicast traffic between the specified interfaces. It works perfectly since it works in mesh mode and yes I did compile it for OpenWrt 18.

Why are you asking how I got multicast work on ad hoc?
Isn't it supposed to work since is the only mode that support the setting of an higher multicast rate?

  • Because I wasn't aware this works, I guess in theory it simply means you're sending traffic to every device on the SSID/channel.
  • I was also unaware there wasn't software in OpenWrt to handle such a scenario, hence my questions about if you compiled a utility.
  • Also, it doesn't seem as if you're using any IGMP, proxies, snooping, PIMs, etc.

I don't understand what you mean by "only mode that support the setting of an higher multicast rate."

  • Did you enable MC forwarding?
  • Otherwise, one would need to experiment using your utility.

Yes and this is not a problem for me.

I know there are other software that are able to solve the multicast forwarding but my question is why I am not receiving MC traffic on the wireless interface.
Since the MC traffic is generated on a device and directly sent on the wireless interface there shouldn't be any problem to, at least, see it with another device on the wireless interface. In fact, I can see all the packets sent from a device with OpenWrt 15.
The problem is that another device with OpenWrt 18 does not even receive the MC packets on the wireless interface (I am checking with tcpdump).

On OpenWrt website one of the possible option I can use in /etc/config/wireless is mcast_rate and it is specified that it only works in adhoc mode.