libvirtův macvlan získal podporu pro multicast. Bohužel je ve výchozím nastavení trustGuestRxFilters="no"
zakázáno a v dokumentaci není explicitně uvedeno, že to přeruší vícesměrové vysílání. Jak jste si všimli, přerušení vícesměrového vysílání naruší také protokol IPv6.
https://bugzilla.redhat.com/show_bug.cgi?id=1035253#c15
Možná to půjde obejít ručním nastavením trustGuestRxFilters="yes"
. Existuje omezení:„podpora závisí na modelu síťového zařízení hosta a také na typu připojení k hostiteli“. "V současné době je podporován pouze pro virtio
model zařízení a pro macvtap
připojení na hostiteli".
https://libvirt.org/formatdomain.html#elementsNICS
IMO přirozeným modelem by bylo standardně povolit multicast. Blokování příjmu vícesměrového vysílání v síti, o které si myslíte, že jste přímo připojeni, je nepříjemným překvapením. Zejména od macvtap
Zdá se, že stále umožňuje odesílání pakety vícesměrového vysílání (stejně jako podvržené zdrojové adresy MAC!).
Odpověď od sourcejedi obsahuje řešení, ale možná ne dostatečně explicitně. Pomocí "virsh edit" nastavte trustGuestRxFilters
atribut na síťovém zařízení:
<interface type='direct' trustGuestRxFilters='yes'>
Viz dokumenty libvirt. Totéž lze provést pro všechna rozhraní v síti libvirt.