Ubuntu 中继转发或两个物理 Linux 接口 eth0 和 eth1 之间的桥接 - OpenvSwitch 等

Ubuntu 中继转发或两个物理 Linux 接口 eth0 和 eth1 之间的桥接 - OpenvSwitch 等

我想了解是否可能?以及如何配置基于 ARM 的 Ubuntu 服务器系统作为两个物理网络接口之间的桥梁,以通过 eth0 和 eth1 传递所有 Vlan 中继流量。

我想要实现的是:

在此处输入图片描述

我不希望交换机上的网络地址变化影响系统的运行。

我希望 Ubuntu 服务器作为网络交换机而不是路由器运行。

我希望来自一个交换机的中继端口的所有数据包通过基于 ARM 的 Ubuntu 服务器的物理网络接口流向另一个交换机的中继端口,而不会丢失任何数据包或服务。

我将 OpenvSwitch 安装到 Ubuntu Server 并尝试实现它,但仍然没有成功。

任何方法都值得高度赞赏!

我没有任何安全方面的顾虑,所有 IPTABLE 规则都可以删除或接受。(我不知道该怎么做,而且系统上没有安装 ufw。)

如果有人能帮助我解决这个情况我会非常高兴。

谢谢你!

答案1

我对 OpenvSwitch 一无所知,但你所做的完全是实用的。

你要做的是桥接 eth0 和 eth1

根据网络配置方式,可以通过多种方式实现,例如

ip link add br0 type bridge
ip link set eth0 master br0
ip link set eth1 master br0
ip link set br0 up

在较旧的系统上,您需要安装 bridge-utils 包。然后,您可以使用 brctl 创建网桥 - 类似于

brctl addbr br0         # Create a bridge interface
brctl addif br0 eth0
brctl addif br0 eth1
ifconfig br0 up

然后您将有一个新的接口 br0,并且您应该为其分配 IP 地址等。它下面将有一个由 eth0 和 eth1 组成的虚拟交换机。

(我知道你说过你不担心安全问题 - 仅供参考)这发生在 iptables 运行的级别之下。nftables 在此级别提供防火墙)

https://www.tecmint.com/create-network-bridge-in-ubuntu/详细介绍了在 Ubuntu 中实现此功能的各种方法(使用 Nmcli、nm-connection-editor 和 netplan)。

答案2

工作解决方案:

它确实对我的情况有用,没有VLAN 过滤选项已启用,因为用户1686下面说明,但我将保留原有的解决方案,原因是,如果有人可能需要将它用于其他范围的 VLAN。

ip link add br0 up type bridge vlan_filtering 1
ip link set eth0 master br0
ip link set eth1 master br0
bridge vlan add vid 2-4094 dev br0 self
bridge vlan add vid 2-4094 dev eth0 master
bridge vlan add vid 2-4094 dev eth1 master

启用生成树协议

brctl stp br0 on

如果你想让 Ubuntu 和交换机之间的接口可达

ip link add link br0 name Vlan90 up type vlan id 90
ip addr add 10.200.10.3/28 dev Vlan90

所有配置完成后的 Ifconfig 屏幕

在此处输入图片描述

相关内容