3 服务器点对点桥接环路

3 服务器点对点桥接环路

我设置了 3 台运行 debian jessie 的服务器(A、B 和 C),它们都直接连接到其他两台服务器,因此是一个环形布局。我希望它们各自只有 ohne IP,就像它们连接到单个交换机一样。因此,我桥接了每台服务器上的两个接口并启用了 STP。它运行良好,但有一个缺点:服务器(A 到 C)之间的三个链路之一被 STP 禁用,以避免出现循环。现在 A 直接连接到 B,B 直接连接到 C,但从 A 到 C 的流量必须间接通过 B。

我想要的是:

  • 最佳解决方案:所有连接同时启用,网络数据包只采用最短路径。如果任何链接失败,则应采用间接路径。这可能需要编写一些防火墙脚本。
  • 好的解决方案:如果连接失败,上述方法没有回退。我想通过防火墙规则阻止转发来实现这一点,但到目前为止我还没有成功。STP 仍然禁用一个链接,并且所有 3 个服务器之间都可以 ping。我的防火墙规则:

    iptables -t filter -A FORWARD --in-interface tap0 --out-interface tap1 -j DROP
    iptables -t filter -A FORWARD --in-interface tap1 --out-interface tap0 -j DROP
    

我的下一个想法是

  • 使用我在所有服务器上使用的子网的不同部分,以便我可以通过 IP 进行过滤
  • 手动管理网桥的 MAC 地址

但我怀疑这对于某些广播来说也可能会失败。

也许有更好的解决方案。你有什么想法吗?

提前致谢

相关内容