更改桥接端口后 Linux 桥接器不转发流量

更改桥接端口后 Linux 桥接器不转发流量

问题:更改bridge-ports网络接口的值后,该 IP 上的所有网络都停止工作。基础系统是基于 Debian Bullseye 的 Proxmox VE 7.4。

背景:我有一个带有 3 个节点的 Proxmox VE 家庭实验室。我最近决定迁移 10gbps 网络。

每个节点配置如下:

  • 两个 1gbps 端口(内置,Broadcom BCM5716) -eno1以及eno2
  • 两个 10gps 端口 (PCIE,Broadcom BCM57810) -enp3s0f0以及enp30f1
  • 五座网络桥梁
  • 内核是 PVE 5.15.108-1

每个网桥都有一个网桥端口,它是节点上某个物理端口的子接口。最初配置如下:

┌─────────────────┐             ┌────────────┐             ┌───────────────────┐
│ cisco switch    │   Trunks    │ eno1       │             │ vmbr10 Admin      │
│                 ├────┬───────►│            ├────┬───────►│ eno1.10           │
│                 │    │        │            │    │        │ IP.10.0.0.4x/24   │
│                 │    │        │            │    │        │ GW.10.0.0.1       │
└─────────────────┘    │        └────────────┘    │        └───────────────────┘
                       │                          │
                       │                          │        ┌───────────────────┐
                       │                          │        │ vmbr20 Secured    │
                       │                          ├───────►│ eno1.20           │
                       │                          │        │                   │
                       │                          │        │                   │
                       │                          │        └───────────────────┘
                       │                          │
                       │                          │        ┌───────────────────┐
                       │                          │        │ vmbr21 Insecure   │
                       │                          ├───────►│ eno1.21           │
                       │                          │        │                   │
                       │                          │        │                   │
                       │                          │        └───────────────────┘
                       │                          │
                       │                          │        ┌───────────────────┐
                       │                          │        │ vmbr100 ISP       │
                       │                          └───────►│ eno1.100          │
                       │                                   │                   │
                       │                                   │                   │
                       │                                   └───────────────────┘
                       │        ┌────────────┐             ┌───────────────────┐
                       │        │ eno2       │             │ vmbr101 Ceph      │
                       └───────►│            ├────────────►│ eno2.101          │
                                │            │             │ IP.10.0.101.4x/24 │
                                │            │             │                   │
                                └────────────┘             └───────────────────┘

vmbr10从那时起,除了使用新的 10gps 卡之外,我可以改变一切:

      ┌─────────────────┐             ┌────────────┐             ┌───────────────────┐
      │ cisco switch    │   Trunks    │ eno1       │             │ vmbr10 Admin      │
┌────►│                 ├────┬───────►│            ├────────────►│ eno1.10           │
│     │                 │    │        │            │             │ IP.10.0.0.4x/24   │
│     │                 │    │        │            │             │ GW.10.0.0.1       │
│     └─────────────────┘    │        └────────────┘             └───────────────────┘
│                            │
│                            │        ┌────────────┐
│                            │        │ eno2       │
│                            └───────►│            │
│                                     │            │
│                                     │            │
│                                     └────────────┘
│     ┌─────────────────┐             ┌────────────┐             ┌───────────────────┐
│     │ mikrotik switch │   Trunks    │ enp3s0f0   │             │ vmbr20 Secured    │
└────►│                 ├────┬───────►│            ├─────┬──────►│ enp3s0f0.20       │
      │                 │    │        │            │     │       │                   │
      │                 │    │        │            │     │       │                   │
      └─────────────────┘    │        └────────────┘     │       └───────────────────┘
                             │                           │
                             │                           │       ┌───────────────────┐
                             │                           │       │ vmbr21 Insecure   │
                             │                           ├──────►│ enp3s0f0.21       │
                             │                           │       │                   │
                             │                           │       │                   │
                             │                           │       └───────────────────┘
                             │                           │
                             │                           │       ┌───────────────────┐
                             │                           │       │ vmbr100 ISP       │
                             │                           └──────►│ enp3s0f0.100      │
                             │                                   │                   │
                             │                                   │                   │
                             │                                   └───────────────────┘
                             │        ┌────────────┐             ┌───────────────────┐
                             │        │ enp3s0f1   │             │ vmbr101 Ceph      │
                             └───────►│            ├────────────►│ enps30f1.101      │
                                      │            │             │ IP.10.0.101.4x/24 │
                                      │            │             │                   │
                                      └────────────┘             └───────────────────┘

切换vmbr10到使用enp3s0f0会立即导致连接中断,并且系统将无法在该 VLAN 上通信,直到我手动重新添加到eno1.10字段bridge-ports。它可以配置为bridge-ports eno1.10 enp3s0f0.10但只能使用eno1.10

STP 未启用,并且这些网桥未学习任何 MAC 地址。

这不仅限于 Proxmox 服务,还影响一切,包括 SSH 和 ping - 这让我认为这是一个行为/配置问题。

我已经检查并尝试过:

  • 更改bridge-ports然后重启
  • 用于tcpdump检查物理接口上的流量并enp3s0f0接收节点的 VLAN10 流量
  • 用于tcpdump检查流量vmbr10- 仅显示广播 ARP 请求
  • 用于brctl检查端口状态,forwarding
  • 检查iptablesebtables- 我不使用任何一种,并且所有链/表都处于默认接受状态,并且没有任何规则

作为参考,这里是当前内容/etc/network/interfaces- 这是由 Proxmox VE 的网络配置编辑器生成的。

auto lo
iface lo inet loopback

iface eno1 inet manual

iface eno2 inet manual

iface enp3s0f0 inet manual

iface enp3s0f1 inet manual

auto vmbr10
iface vmbr10 inet static
    address 10.0.0.41/24
    gateway 10.0.0.1
    bridge-ports eno1.10
    bridge-stp off
    bridge-fd 0
    bridge-vlan-aware yes
    bridge-vids 2-4094
#VLAN 10 Admin

auto vmbr100
iface vmbr100 inet manual
    bridge-ports enp3s0f0.100
    bridge-stp off
    bridge-fd 0
    bridge-vlan-aware yes
    bridge-vids 2-4094
#VLAN 10 ISP

auto vmbr101
iface vmbr101 inet static
    address 10.0.101.41/24
    bridge-ports enp3s0f1.101
    bridge-stp off
    bridge-fd 0
    bridge-vlan-aware yes
    bridge-vids 2-4094
#VLAN 101 Ceph Backend

auto vmbr20
iface vmbr20 inet manual
    bridge-ports enp3s0f0.20
    bridge-stp off
    bridge-fd 0
    bridge-vlan-aware yes
    bridge-vids 2-4094
#VLAN 20 Trusted

auto vmbr21
iface vmbr21 inet manual
    bridge-ports enp3s0f0.21
    bridge-stp off
    bridge-fd 0
    bridge-vlan-aware yes
    bridge-vids 2-4094
#VLAN 21 Untrusted

有人对如何进一步调试这个问题有什么建议吗?

相关内容