网桥获取随机 MAC 而不是端口地址

网桥获取随机 MAC 而不是端口地址

我全新安装了 Debian 11 并进行了桥接设置:

  auto br0   
  iface br0 inet dhcp
    bridge_ports eno1

我期望的是 br0 与 eno1 具有相同的 MAC 地址,但它得到一个随机生成的地址。我可以通过手动分配 MAC 来修复该行为,hwaddress ether aa:bb:cc:dd:ee:ff但我不明白该行为,在我的其他主机上,我不必手动设置地址。为什么会发生这种情况?

答案1

我期望的是 br0 与 eno1 具有相同的 MAC 地址

这种期望是错误的:网桥的每个端口都有自己的 MAC 地址,与所有其他地址不同,并且br0只是面向“内部”的端口。

任何硬件交换机都将具有相同的设置。

但它得到一个随机生成的

确切地。这是正确的行为。

我可以通过手动分配 MAC 来修复该行为

如果您将与 eno1 相同的 MAC 分配给 br0,那么您就搞砸了生成树算法,因此请务必确保在涉及该网桥的网络中不会出现环路或冗余连接。

在我的其他主机上,我不必手动设置地址。

您还在谈论哪些其他主机?如果它们的默认行为是有两个具有相同 MAC 地址的网桥端口,那么该行为就会被破坏。

答案2

这是因为 debian 的接口文件是按字母顺序排列的。这意味着 br0 在 eno1 之前启动,并且没有 mac 可以克隆。将接口 eno1 定义与 br0 定义放入同一文件中,但位于 br0 定义之上 - 它从文件顶部到底部提升接口

相关内容