给定一个 Ubuntu机器A有 N > 2 个以太网端口,我想使用其中一个端口连接到我的路由器R其上有一个 DHCP 服务器,并通过它将机器 A 连接到互联网。我还需要通过剩余端口连接更多设备机器A,这样他们也可以直接从路由器R。我不想有 DHCP 服务器或任何其他子网机器A。
我尝试在所有端口之间设置一个简单的桥接器,但没有任何设备以这种方式接入互联网。桥接、虚拟网络等有很多种类型,列举在这个帖子,但我似乎不明白,我应该选择哪个选项。
答案1
我尝试在所有端口之间设置一个简单的桥,
这是正确的做法。
但没有任何设备以这种方式接入互联网。
...如果你不提供有关你所做的事情的详细信息,那么调试它真的很困难。
这篇文章中列出了许多类型的桥接、虚拟网络等,但我似乎不明白,我应该选择哪个选项。
快速浏览之后,所有这些似乎都太复杂,或者与您的情况不太相符。
第一步是手动设置所有内容,然后看看如何使其持久化。假设您的端口是eth0
、eth1
和eth2
,请执行以下操作:
ip link add br0 type bridge
ip link set eth0 master br0
ip link set eth1 master br0
ip link set eth2 master br0
ip link set br0 up
如果eth0
之前连接到路由器 R,现在您需要更改 A 上的配置,以便在之前的br0
任何地方使用eth0
。特别是,分配给的任何 IP 地址eth0
都不再有效,并且 DHCP 客户端应进行管理br0
。
完成后,测试 A 是否可以连接路由器和互联网。
然后将计算机 B 和 C 连接到eth1
和eth2
,查看 B 和 C 上是否正在运行某些 DHCP 客户端,并查看它们是否收到 DHCP 响应。如有必要,请使用tcpdump
或进行调试wireshark
。
然后找出您在 A 上拥有的众多网络风格中的哪一种(systemd、网络管理器、旧式)/etc/network/interfaces
,并使桥永久化。根据风格 Google 获取文档。