Linux 软件桥

Linux 软件桥

我有以下设置:

例子

我想将文件从 10.1.1.7 发送到 10.1.1.3,但有一个限制:如果链接 AB 发生故障,则文件传输应该切换到链接 AC 和 CB。

但是,问题是另一个接口 IP 是 10.1.1.17,因此即使它接收到 10.1.1.3 的数据包,它也会忽略它们。

我尝试过的一个可能的解决方案是在接收机器上创建一个软件桥并在其下添加 10.1.1.3 和 10.1.1.17。但是,一旦我这样做,即使所有链接都已启动,两个接口都会停止响应 ARP 查询。

关于如何解决这个问题有什么想法吗?


更新:

设置桥接的方法如下:(Linux ubuntu 9.04)

我首先开始从机器一 ping 到机器二(在 ip 10.1.1.3(eth10)上)

$$brctl 添加br br0
$$brctl addif br0 eth8
$$brctl addif br0 eth10 (此后 ping 立即停止)
$$ifconfig br0 0

但是一旦我这样做,eth10(10.1.1.3)就会停止响应 IP 地址 10.1.1.3 的 ARP 查询,即使它缓解了这些查询。

执行上述命令后,dmesg 中附加的内容为:

[132445.491404] 设备 eth8 处于混杂模式

[132445.491433] br0:端口 2(eth8)进入禁用状态

[132445.491520] 设备 eth10 处于混杂模式

[132445.491532] br0:端口 1(eth10)进入禁用状态

[132472.721188] 设备 eth8 进入混杂模式

[132474.881542] 设备 eth10 进入混杂模式

[132480.161572] br0:端口 2(eth10)进入学习状态

[132480.161585] br0:端口 1(eth8)进入学习状态

答案1

桥接是正确的选择(好吧,是其中一种;您也可以在具有两个 NIC 的机器上使用绑定)。如果在启用桥接时一切都崩溃了,那么您可能遇到了生成树问题。另外请记住,当您启动桥接时,桥接会了解网络拓扑,因此会有延迟,您必须等到延迟结束后桥接才会传递任何数据包。

答案2

当你搭建网桥时,如果你安装另一个交换机来代替网桥,情况也是一样的。

而实际上你得到的是一个环 =) 那是行不通的:要么你的网络会崩溃,要么 STP 会阻止其中一个链接。

相关内容