如何在 Ubuntu 21.04 上同时使用两个以太网连接(在单台 PC 上)?

如何在 Ubuntu 21.04 上同时使用两个以太网连接(在单台 PC 上)?

我不知道如何在一台 PC 上同时使用两个以太网连接。我搜索了这个问题至少 4 个小时,但我不知道该怎么做。

我在这台电脑上使用 Ubuntu 21.04,这台电脑连接到另外两台电脑。第一台电脑用于从这台电脑接收文件,第二台电脑用于远程桌面(第二台电脑在另一个房间)。两台电脑都通过以太网电缆连接。

但是,当我在设置中打开第二个连接时,第一个连接将会关闭,当我打开第一个连接时,第二个连接将会关闭。

我怎样才能同时使用这两个连接而不在它们之间切换?

为了使这个问题更容易理解,请检查下面的图片:

在此处输入图片描述

附加信息:

ifconfig enp6s0; ifconfig enp4s0(当第一个连接打开时):

enp6s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether f0:2f:74:1c:15:a1  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 300 (300.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 24  bytes 3672 (3.6 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device memory 0xfbe00000-fbefffff  

enp4s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 169.254.2.6  netmask 255.255.0.0  broadcast 169.254.255.255
        inet6 fe80::c612:2978:2641:18e2  prefixlen 64  scopeid 0x20<link>
        ether f0:2f:74:74:61:b5  txqueuelen 1000  (Ethernet)
        RX packets 20  bytes 3285 (3.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 318  bytes 50979 (50.9 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

netstat -rn(当第一个连接打开时):

Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         10.10.10.1      0.0.0.0         UG        0 0          0 wlp5s0
10.10.10.0      0.0.0.0         255.255.255.0   U         0 0          0 wlp5s0
169.254.0.0     0.0.0.0         255.255.0.0     U         0 0          0 enp4s0
169.254.0.0     0.0.0.0         255.255.0.0     U         0 0          0 wlp5s0
224.0.0.0       0.0.0.0         240.0.0.0       U         0 0          0 enp4s0

ifconfig enp6s0; ifconfig enp4s0(当第二个连接打开时):

enp6s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 169.254.184.248  netmask 255.255.0.0  broadcast 169.254.255.255
        inet6 fe80::cc05:1420:54f5:773e  prefixlen 64  scopeid 0x20<link>
        ether f0:2f:74:1c:15:a1  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 300 (300.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 58  bytes 8890 (8.8 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device memory 0xfbe00000-fbefffff  

enp4s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether f0:2f:74:74:61:b5  txqueuelen 1000  (Ethernet)
        RX packets 20  bytes 3285 (3.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 323  bytes 51487 (51.4 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

netstat -rn(当第二个连接打开时):

Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         10.10.10.1      0.0.0.0         UG        0 0          0 wlp5s0
10.10.10.0      0.0.0.0         255.255.255.0   U         0 0          0 wlp5s0
169.254.0.0     0.0.0.0         255.255.0.0     U         0 0          0 enp6s0
169.254.0.0     0.0.0.0         255.255.0.0     U         0 0          0 wlp5s0
224.0.0.0       0.0.0.0         240.0.0.0       U         0 0          0 enp6s0

最后说明:

我将非常感激诸如简单指南之类的东西。

还,我不想使用互联网连接进行远程桌面或文件传输。

编辑:如果您需要更多信息,请在下面发表评论。抱歉图片不好。

答案1

从您提供的ifconfig输出netstat来看,您的两个连接似乎都分配了来自同一网络的 IP 地址 - 169.254.0.0,网络掩码为 255.255.0.0。这可能是它们不能同时使用的原因。

网络 169.254.0.0 是所谓的自动配置网络。当您未在网络设置中手动指定任何 IP 地址,而是保留默认自动分配设置且网络中没有 DHCP 服务器时,可以使用它。在这种情况下,连接会从该网络随机获取一个 IP 地址。因此,连接到此网络的计算机无需进一步配置即可相互通信,但缺点是您只能拥有一个这样的网络。您不能将两个自动配置网络连接到一台计算机上的两个不同网卡。

您不应该使用自动配置网络,而应该在所有 PC 上手动配置 IP 地址,以便拥有两个截然不同的网络。

例如,您可以为网卡分配enp6s0地址 192.168.6.1,子网掩码为 255.255.255.0,为网卡分配enp4s0地址 192.168.4.1,子网掩码为 255.255.255.0。它们现在处于不同的网络中。您应该分别在远程桌面 PC 上设置地址 192.168.6.2(具有相同子网掩码),在文件传输 PC 上设置地址 192.168.4.2。

设置此项后,您的 PC 应该能够与其他两台 PC 通信,但这两台 PC 将无法相互通信。如果您也需要此功能,则应在 PC 的内核中启用 IP 转发,以便它充当路由器并在两个网络之间传输数据包。要启用 IP 转发,您应该取消注释文件中的行net.ipv4.ip_forward=1/etc/sysctl.conf如果不存在,则将其添加到文件中),然后使用 应用更改sudo sysctl -p。此外,在远程 PC 和文件传输 PC 上添加到其他网络的明确路由可能也是必要的。

相关内容