My work proposal for a Google Summer of Code student to come work on the #FreeBSD #networking stack, to implement IGMP/MLD snooping in the bridge driver, is now live: https://wiki.freebsd.org/SummerOfCodeIdeas#if_bridge.284.29_IGMP.2FMLD_multicast_snooping_support #bsd #bsdfund #IP #internet #pim #igmp #mld
SummerOfCodeIdeas - FreeBSD Wiki

În contra biserichi ortodoxă/catolică din Basarabia, statul capitalist care se fabrică in ziua de azi şi socialişti care murdăresc comunismul. Naționalişti sunt nişte chiori care cred minchiunile statuli şi vind libertatea individuală şi colectivă. Armata ieste un baligar de vacă şi poliţia nişte paraziți. Anarhia nu e caos şi desorden. E orden, autogestiune şi organizaţie. Solidaritatea e instrumentul nostru pentru a să facem o schimbare. Hai să ne ridicăm şi să luptam în contra statului! #MLD

Yaiy... looks like I might have found another bug which isn't in #pim6sd, but in the #Linux kernel instead... It seems like for a veth pair the recvmsg() call returns an #IPv6 sockaddr with a scope-id from the wrong side of a veth pair for #MLD v2 reports. Which pim6sd does not like, it will ignore the join then. MLDv1 reports work as expected though, there the scope id looks correct.

#multicast

How I now imagine it when my laptop sends an #MLD report to leave a specific #multicast group:
https://www.youtube.com/watch?v=jmzdObf3FtA
"We're Not Gonna Take It (#MTG Parody)"
#MulticastTheGathering #MagicTheGathering
We're Not Gonna Take It (MTG Parody)

YouTube

Use #BSD for good networking, nuff said... Use #OPNsense for a firewall/router, nuff said...

Me trying to use #multicast snooping with this in our hackspace: After several hours of debugging, realizing it's not bc. of the #OpenWrt powered, #rtl83xx based switch I've added, nor the new patches I've made and added to it. But because of this two years old, ignored #OPNsense (or #FreeBSD?) bug with #MLD: https://github.com/opnsense/core/issues/6247
😒 😤

IPv6 MLD listener report going to wrong interface · Issue #6247 · opnsense/core

Important notices Before you add a new report, we ask you kindly to acknowledge the following: I have read the contributing guide lines at https://github.com/opnsense/core/blob/master/CONTRIBUTING....

GitHub
In the classic, non-DSA #Linux bridge the philosophy so far is: No matter in what combination you enable/disable multicast_snooping+ multicast_querier: The bridge ensures you don't break any network protocol, it detects per protocol family if #multicast snooping is applicable. That together with #RFC4541 I think is the only way to regain trust for #IGMP / #MLD snooping imo.
And now things like #DSA or #switchdev come along with non-foolproof solutions, diverging between each driver...
...and even this mrouter exists #switchdev event is a quite incomplete approach. What if you multicast router somehow #IGMP / #MLD querying disabled -> would break any #IPv6, even if you're not using multicast routing. What if you only have an IGMP querier? Would notify an mrouter-exists, but there's no MLD querier, so again IPv6 would be broken...
Neither #switchdev nor #DSA really check if an IGMP/MLD querier exists. So if you enable #multicast snooping on these you currently also need to make sure to have an #IGMP / #MLD querier somewhere. Which is different to a classic Linux bridge, which will stop snooping optimizations if there is none, to avoid packet loss. Only for Marvell Prestera I found some mrouter-exists check via an according switchdev event. Which no other driver uses. And...
Had found an issue with the #DSA #rtl83xx #IGMP / #MLD snooping code in #OpenWrt, it would always flood snoopable IP #multicast payload with no MDB entry, instead of dropping. Finally got some clue how this chip gets configured, it's a bit confusing with all these tables and how they point to each other :D. And these magic shifting numbers, instead abstracting them... Also found one bug in one shift value, I think.
And could get things to drop! Now need to drop more selectively.
Next PoE capable switch arrived from kleinanzeigen.de. This one hopefully supports #OpenWrt and #DSA out-of-the-box and has some progress towards #IGMP / #MLD snooping support. Hoping that it might be the pick to get #multicast running in our hackspace at the #Nobreakspace. There's still work on multicast router ports needed though.
But before I get started on this one, need to document+upload my previous progress on getting #OpenWrt running on the #Dlink DGS-1210-10P **B1** to the OpenWrt wiki.