I am using a Dir-860l in my home setup. If I add the option igmp_snooping '1' to my bridge interface in /etc/config/network I can see that the multicast traffic (my IPTV) is no longer hitting my WiFi network, which is good. However, IGMP snooping does not seem to be working on my individual ports on the switch. I am still seeing a large amount of multicast traffic on all devices that are connected to the ethernet switch that is associated to that software bridge in Lede. I had hoped the multicast traffic would only flow to the port on which the TV is connected.
Does anyone happen to know how I can make sure that IGMP snooping is also working on an individual per-port basis? I have tried installing the kmod-bridge package as per the OpenWRT documentation, but that did not fix the issue either. The following command also looks fine as far as I can tell:
I had met this before.
The solution is to assign different vlans to each physical lan port ( then bridge ports you need into br-lan to make sure lan connection).It is said that Home Routers don’t have a complete switch module for each physical port, not like professional switch.So IGMP SNOOPING only works on vlan level.
This would simply bridge the different ports together in software. Yes, igmp snooping should work fine in that case, since it can be done in software. However, packets that need to be forwarded via the switch would then hit the router's CPU even though that shouldn't be necessary at all, and hence this would be quite an inefficient solution. As far as I know, the mt7530 switch should be able to support hardware based igmp snooping just fine. @jeff, is this something that could be seen in the output from the requested commands by any chance?
Makes me think that these switches don't do IGMP snooping at hardware level, and some don't even support the required controls to enable the appropriate behavior... But I could be misreading that thread, not an expert here.
At < $40 tp links managed switch does do IGMP snooping and DSCP based QoS. From a practical perspective if you plan on doing IPTV it's probably a good investment. Upgrade the firmware first thing out of the box, it has some relevant improvements.
The reference commit appears to be around the mapping of VLAN "table ID" to VLAN tag, not IGMP, so that probably wouldn't change things.
swconfig dev switch0 help should show what can be set/queried. At least on the switch module and driver on my Archer C7, it reveals igmp_snooping at the switch and port level, and igmp_v3 at the switch level.
I did some more digging as well, for the super popular "Ubiquiti Networks EdgeRouter X" router, which is using very similar hardware. And unfortunately, it seems like the switch simply doesn't support igmp snooping. See for example:
However, since there is only 1 IPTV device using IPTV I will simply create a separate interface for that device on a single port. Should work as well to prevent multicast traffic from hitting my other devices. Marking this as solved
For completeness sake: I have just created a separate VLAN for the port on which the IPTV is connected and added that VLAN to my bridge interface. IPTV still works as it should, and no more IPTV multicast traffic arriving on my PC or server. Since the IPTV device doesn't really communicate with other devices within my LAN network, the downside of slower forwarding performance shouldn't matter at all.
Sadly I can confirm that the mt7530 switch chip does not support igmp snooping. In my case the MI Router 3G is affected.
When using the device as switch that forwards igmp v3 multicast-traffic for IPTV from one lan-port to another on BR-LAN, the device gets sluggish and mutlicast-packets get lost. While top doesn't show any process that is consuming cpu, one can see that the system load increased to almost 1.0, the webinterface gets slow, packet forwarding sometimes hangs a little.