Ubuntu 20.04 有两个网卡,但只有一个可以工作

Ubuntu 20.04 有两个网卡,但只有一个可以工作

正如标题所述,我有一个运行 Ubuntu 20.04 的系统,带有两个 NIC。一个 NIC(ens9)连接到摄像头(通过交换机),另一个(ens4)连接到 LiDAR。我只在其中一个端口(ens9)上运行 DHCP 服务器,并且运行正常。我的问题是,只有一个端口在给定时间内可以工作。最合适的是先连接的端口。

以下是我从文件中获取的接口配置/etc/netplan/01-network-manager-all.yaml

# Let NetworkManager manage all devices on this system
network:
  version: 2
  renderer: NetworkManager
  ethernets: 
    ens9: 
      dhcp4: no 
      addresses: [192.168.1.100/24] 
      gateway4: 192.168.1.1 
      nameservers: 
        addresses: [8.8.8.8,8.8.4.4]
      
      mtu: 9000
    
    ens4: 
      dhcp4: no 
      addresses: [192.168.1.101/24] 
      nameservers: 
        addresses: [8.8.8.8,8.8.4.4]

      mtu: 9000

我不确定我做错了什么。任何帮助我都非常感谢。

答案1

您描述的地址设置很可能不正确。由于您有 2 个接口,因此至少有两种使用场景。请发布您正在使用的那个。

A)同一网络

两个接口都连接到同一个物理网络,例如连接到单个交换机或跨多个交换机,并且可以“看到”彼此。在这种情况下,第二个具有不同地址的接口是不必要的,并且会导致复杂化。两个接口只有在您将它们组合在一起以获得更高的速度或冗余性(以防其中一个发生故障)时才有意义。

B)两个独立的网络

这两个接口连接到不同的网段,一个接口的数据包无法以任何方式到达另一个接口。在这种情况下,您的 IP 地址完全错误。每个接口必须具有来自不同网络的地址。您不能将同一个网络 192.168.1.0/24 用于连接到同一台机器(设备)上的两个不同网段的两个不同接口。系统会感到困惑,不知道是通过 ens9 还是 ens4 将数据包路由到 192.168.1.0/24 网络。

解决方案

地址:

我假设 LiDAR 的网络是一个独立的部分,仅用于 PC 和 LiDAR 之间的连接。这意味着场景B)适用。那么解决方案很简单。使用另一个网络并按如下方式设置地址:

  • ens9:192.168.1.100/24
  • ens4:192.168.2.100/24
  • LiDAR:192.168.2.5/24(或使用 1 到 254 之间的任何其他数字,但不要使用最后一个八位字节 .5,而要使用 100,因为地址 100 将位于 ens4 接口上)。

网关:

正确的是,您只有一个 ens9 接口上的默认网关。

名称服务器:

确保从 ens4 中删除名称服务器定义。

相关内容