首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使Linux为不同PC上的不同桥接设备生成不同的MAC地址?

如何使Linux为不同PC上的不同桥接设备生成不同的MAC地址?
EN

Unix & Linux用户
提问于 2022-10-01 09:38:16
回答 1查看 2K关注 0票数 5

我刚刚将两台服务器从Debian 10 (Buster)升级到了Debian 11 (Bullseye)。之后,我再也无法通过网络联系到他们中的任何一个。经过一番调查,发现以下问题:

这两台机器都配置了一个桥接设备。显然,Debian用于为桥接设备分配MAC地址的算法已从版本10改为11。升级后,第一服务器上的桥接设备与第二服务器上的桥接设备具有相同的MAC地址,这以前肯定不是这样。

一个答案在那里声称一个桥是一个纯粹的内部设备,因此一个桥的MAC地址并不重要。不过,这显然是错误的。至少在我的情况下,来自这两台机器的数据包都是传出的,硬件源地址是桥的MAC地址,而且两台机器上的网络端口只有在到达桥的MAC地址时才会处理传入的数据包。

由于这两台机器上的MAC地址是相同的,网络变得不可用,这是完全合乎逻辑的,也是可以理解的。

如何让Debian为位于不同机器(甚至在同一台机器上)的桥设备生成不同的MAC地址,但这不是我的问题。

EN

回答 1

Unix & Linux用户

发布于 2022-10-01 15:27:05

首先,A.B的答案显示了正确的解决方案。如果你有同样的问题,遵循A.B的答案,以正确的方式解决它。

然而,为了完整起见,我想展示一种替代的(低得多的)解决方案。我承受着压力,没想到很快就会得到正确的答案。因此,我通过稍微修改/etc/network/interfaces,暂时解决了这个问题:

代码语言:javascript
复制
auto br0
iface br0 inet static
        bridge_ports eno1
        address 192.168.20.11
        netmask 255.255.255.0
        broadcast 192.168.20.255
        gateway 192.168.20.250    
        hwaddress ether 02:01:01:01:11:01

最后一行是关键。它使操作系统将指定的MAC地址分配给网桥。所显示的MAC地址是半官方专用MAC地址范围内的地址.我已经证实,当您移除或添加设备到桥接器时,此MAC地址保持不变。

当然,您必须给每个网桥一个不同的MAC地址,不管网桥是否在同一台机器上。

再次,上述方法只解决了网桥MAC地址问题。我相信,如果在不同的机器上有相同的机器if,那么会有更多的错误。A.B的回答提到了如何创建一个新的机器ID,并且一个快速测试表明,每个以这种方式创建的机器ID都不同于以这种方式创建的所有其他机器ID。

票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/719379

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档