AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1035107
Accepted
bug.spencor
bug.spencor
Asked: 2020-09-24 12:33:57 +0800 CST2020-09-24 12:33:57 +0800 CST 2020-09-24 12:33:57 +0800 CST

多播在 macvtap 设备上不起作用

  • 772

我的虚拟网络和 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“开箱即用”的标准网络功能吗?(或者我的设置是如此不典型,以至于我的用例没有被涵盖?)

vlan bridge ipv6 multicast qemu
  • 1 1 个回答
  • 808 Views

1 个回答

  • Voted
  1. Best Answer
    bug.spencor
    2020-10-14T10:12:34+08:002020-10-14T10:12:34+08:00

    我在超级用户处找到了答案:https ://superuser.com/questions/944678/how-to-configure-macvtap-to-let-it-pass-multicast-packet-correctly/1033768#1033768我只是复制sourcejedi'在这里回答:

    libvirt 的 macvlan 已获得对多播的支持。不幸的是,默认设置禁用了它trustGuestRxFilters="no",并且文档没有明确说明这会破坏多播。正如您所观察到的,破坏多播也会破坏 IPv6。

    https://bugzilla.redhat.com/show_bug.cgi?id=1035253#c15

    您可以通过手动设置来解决此问题 trustGuestRxFilters="yes"。有一个限制:“支持取决于访客网络设备型号,以及主机上的连接类型”。“目前它仅支持virtio设备型号和macvtap主机上的连接”。

    https://libvirt.org/formatdomain.html#elementsNICS

    IMO 的自然模型是默认允许多播。在您认为您直接连接到的网络上阻止多播接收是一个令人不快的惊喜。特别是因为macvtap似乎仍然允许发送多播数据包(以及欺骗的 MAC 源地址!)。

    • 1

相关问题

  • des3526,如何取消标记 vlan 端口?

  • WAN 上的 VLAN

  • Linux VLAN 桥接器

  • 要使网络负载平衡发挥作用,数据中心网络有哪些要求?

  • 通过单独的 VLAN 进行 SQL 复制

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve