我的虚拟网络和 IPv6 网络发现(多播流量)有问题。
(设置似乎有点复杂,我不记得每个设计决策的确切原因。尽管如此,网络被证明是稳定和可维护的。仍然可能存在优化和简化的空间。)
我的设置是这样的:
- qemu/kvm 主机(“qemu”)正在运行 Debian 10;我在可能的情况下使用 virt-manager 进行管理 - 一个 VM(“fw”)正在运行带有 Ubuntu 18.04 的虚拟防火墙/路由器 - fw 的 NIC 连接到“Bridge br0:Host device eno1”:
# brctl 显示 网桥名称 网桥 ID 启用 STP 的接口 br0 8000.f44d306689b5 没有 eno1 vnet0 vnet1
- 在 fw 内部,我为我的不同子网创建了几个 VLAN 设备,以供防火墙过滤
- 我的另一个 VM(“服务器”)连接到“主机设备 br0.10:macvtap(源模式:网桥)”(br0.10 是 br0 上 VLAN-id 10 的 VLAN 设备。
- 我已经配置了一个全局单播 /64 子网(来自 tunnelbroker.net),其中 fw 和服务器配置了该子网的地址
- 我可以从 fw ping 服务器的本地链接地址
问题:
- 我无法从 fw ping 服务器的全球单播地址
- fw 上的 tcpdump 显示出邻居请求,但没有回复
- br0 上 qemu 上的 tcpdump 也显示了邻居请求并且没有回复
- (解决方法)将 macvtap0 切换到混杂模式解决了这个问题。服务器收到并回复的邻居请求。
我的问题是:为什么我必须手动将 macvtap0 切换到混杂模式?多播不是应该与VM“开箱即用”的标准网络功能吗?(或者我的设置是如此不典型,以至于我的用例没有被涵盖?)
我在超级用户处找到了答案:https ://superuser.com/questions/944678/how-to-configure-macvtap-to-let-it-pass-multicast-packet-correctly/1033768#1033768我只是复制
sourcejedi
'在这里回答: