Ubuntu 20.04 Intel 网络连接问题,igc 中的错误?

Joh*_*ohn 2 networking intel drivers 20.04

基于技嘉 z490 Vision G 主板的全新构建。网络链接灯亮起,电缆直接连接到交换机。我安装了另一个网卡,连接到同一个交换机,这就是我用来连接的,因为它工作得很好(英特尔 igb 驱动程序)。板载网络端口偶尔会在重启后出现,但通常显示没有链接和速度/双工“未知!”

你认为这是怎么回事?您还需要什么信息?

我不认为这是 cat6 电缆,我尝试了多个和多个交换机端口,以及在其他端口上成功使用的电缆。这是一个连接到 1Gbps 交换机的 2.5Gbps 网卡,我可以尝试拿起一个 cat7,看看是否有帮助。

最后附加了请求的数据,没有 /etc/network/interfaces 目录,并且 /etc/network 下的所有内容看起来都很正常。

Ubuntu 20.04 服务器安装。

$ ethtool enp5s0 
Settings for enp5s0:
    Supported ports: [ ]
    Supported link modes:   10baseT/Half 10baseT/Full 
                            100baseT/Half 100baseT/Full 
                            1000baseT/Full 
                            2500baseT/Full 
    Supported pause frame use: No
    Supports auto-negotiation: Yes
    Supported FEC modes: Not reported
    Advertised link modes:  10baseT/Half 10baseT/Full 
                            100baseT/Half 100baseT/Full 
                            1000baseT/Full 
                            2500baseT/Full 
    Advertised pause frame use: Symmetric
    Advertised auto-negotiation: Yes
    Advertised FEC modes: Not reported
    Speed: Unknown!
    Duplex: Unknown! (255)
    Port: Twisted Pair
    PHYAD: 0
    Transceiver: internal
    Auto-negotiation: on
    MDI-X: off (auto)
Cannot get wake-on-lan settings: Operation not permitted
    Current message level: 0x00000007 (7)
                   drv probe link
    Link detected: no

$ lspci -knn
5:00.0 Ethernet controller [0200]: Intel Corporation Device [8086:15f3] (rev 02)
    Subsystem: Gigabyte Technology Co., Ltd Device [1458:e000]
    Kernel driver in use: igc
    Kernel modules: igc

$ dmesg | grep igc
[    3.181094] igc 0000:05:00.0: 4.000 Gb/s available PCIe bandwidth (5 GT/s x1 link)
[    3.181096] igc 0000:05:00.0 eth0: MAC: 18:c0:4d:00:00:00
[    3.181657] igc 0000:05:00.0 enp5s0: renamed from eth0

           *-network
                description: Ethernet interface
                product: Intel Corporation
                vendor: Intel Corporation
                physical id: 0
                bus info: pci@0000:05:00.0
                logical name: enp5s0
                version: 02
                serial: 18:c0:4d:00:00:00
                capacity: 1Gbit/s
                width: 32 bits
                clock: 33MHz
                capabilities: bus_master cap_list rom ethernet physical 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
                configuration: autonegotiation=on broadcast=yes driver=igc driverversion=0.0.1-k latency=0 link=no multicast=yes port=twisted pair slave=yes
                resources: irq:17 memory:51a00000-51afffff memory:51b00000-51b03fff memory:51900000-519fffff
Run Code Online (Sandbox Code Playgroud)

请求的数据:

$ cat /etc/netplan/*.yaml
network:
  ethernets:
    enp6s0f0:
      dhcp4: no
    enp6s0f1:
      dhcp4: no
    enp5s0:
      dhcp4: no
      optional: true
  bonds:
    bond0:
      interfaces: [enp6s0f0, enp6s0f1, enp5s0]
      addresses: [192.168.37.10/24]
      gateway4: 192.168.37.1
      nameservers:
        addresses: [192.168.37.1]
        search: [home.lan]
      parameters:
        mode: balance-alb
  version: 2

$ sudo lshw -C network 
  *-network                 
       description: Ethernet interface
       product: Intel Corporation
       vendor: Intel Corporation
       physical id: 0
       bus info: pci@0000:05:00.0
       logical name: enp5s0
       version: 02
       serial: 18:c0:4d:00:00:00
       capacity: 1Gbit/s
       width: 32 bits
       clock: 33MHz
       capabilities: pm msi msix pciexpress bus_master cap_list rom ethernet physical 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=igc driverversion=0.0.1-k latency=0 link=no multicast=yes port=twisted pair slave=yes
       resources: irq:17 memory:51a00000-51afffff memory:51b00000-51b03fff memory:51900000-519fffff
  *-network:0
       description: Ethernet interface
       product: 82576 Gigabit Network Connection
       vendor: Intel Corporation
       physical id: 0
       bus info: pci@0000:06:00.0
       logical name: enp6s0f0
       version: 01
       serial: 00:1b:21:00:00:00
       size: 1Gbit/s
       capacity: 1Gbit/s
       width: 32 bits
       clock: 33MHz
       capabilities: pm msi msix pciexpress bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=igb driverversion=5.6.0-k duplex=full firmware=1.5.1 latency=0 link=yes multicast=yes port=twisted pair slave=yes speed=1Gbit/s
       resources: irq:16 memory:51820000-5183ffff memory:51400000-517fffff ioport:3020(size=32) memory:51844000-51847fff memory:51848000-51867fff memory:51868000-51887fff
  *-network:1
       description: Ethernet interface
       product: 82576 Gigabit Network Connection
       vendor: Intel Corporation
       physical id: 0.1
       bus info: pci@0000:06:00.1
       logical name: enp6s0f1
       version: 01
       serial: f6:3b:fc:00:00:00
       size: 1Gbit/s
       capacity: 1Gbit/s
       width: 32 bits
       clock: 33MHz
       capabilities: pm msi msix pciexpress bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=igb driverversion=5.6.0-k duplex=full firmware=1.5.1 latency=0 link=yes multicast=yes port=twisted pair slave=yes speed=1Gbit/s
       resources: irq:17 memory:51800000-5181ffff memory:51000000-513fffff ioport:3000(size=32) memory:51840000-51843fff memory:51888000-518a7fff memory:518a8000-518c7fff
Run Code Online (Sandbox Code Playgroud)

Joh*_*ohn 7

我会回答我自己的问题,这是英特尔固件问题。希望这对其他人有帮助。

技嘉在其网站上发布了一个仅限 Windows 的 NIC 固件,https://download.gigabyte.com/FileList/Driver/mb_driver_intel-i225-firmware-tool.zip。英特尔在他们的网站上有 Linux NVMUpdate 实用程序,但据我所知,没有与这个固件一起打包。可在https://downloadcenter.intel.com/download/22283/Intel-Ethernet-Adapter-Complete-Driver-Pack 获得

因此,下载两者,将 FXVL_15F3_V_2MB_1.45.bin 从 Windows 更新程序复制到 linux 位置,在我的情况下:

cp ~/Nvmupdate145/i225/FXVL_15F3_V_2MB_1.45.bin ~/NVMUpdatePackage/700_Series/700Series/Linux_x64
Run Code Online (Sandbox Code Playgroud)

将此添加到 nvmupdate.cfg:

BEGIN DEVICE
    DEVICENAME: NNT
    VENDOR:     8086
    DEVICE:     15F3
    SUBVENDOR:  1458
    SUBDEVICE:  E000
    NVM IMAGE:  FXVL_15F3_V_2MB_1.45.bin
    IMAGE DOWNGRADE: TRUE
END DEVICE
Run Code Online (Sandbox Code Playgroud)

并运行该实用程序。你应该看到:

$ sudo ./nvmupdate64e 

Intel(R) Ethernet NVM Update Tool
NVMUpdate version 1.35.23.3
Copyright (C) 2013 - 2020 Intel Corporation.


WARNING: To avoid damage to your device, do not stop the update or reboot or power off the system during this update.
Inventory in progress. Please wait [*****.....]


Num Description                          Ver.(hex)  DevId S:B    Status
=== ================================== ============ ===== ====== ==============
01) Intel(R) Gigabit ET Dual Port         1.5(1.5)   10C9 00:002 Update not    
    Server Adapter                                               available
02) Intel(R) Ethernet Controller (2)    1.69(1.45)   15F3 00:006 Update        
    I225-V                                                       available

Options: Adapter Index List (comma-separated), [A]ll, e[X]it
Enter selection: a
Would you like to back up the NVM images? [Y]es/[N]o: n
Update in progress. This operation may take several minutes.
[********+.]


Num Description                          Ver.(hex)  DevId S:B    Status
=== ================================== ============ ===== ====== ==============
01) Intel(R) Gigabit ET Dual Port         1.5(1.5)   10C9 00:002 Update not    
    Server Adapter                                               available
02) Intel(R) Ethernet Controller (2)    1.69(1.45)   15F3 00:006 Update        
    I225-V                                                       successful


Tool execution completed with the following status: All operations completed successfully.
Press any key to exit.
Run Code Online (Sandbox Code Playgroud)

而且,甚至不需要重新启动:

$ ethtool enp6s0 
Settings for enp6s0:
    Supported ports: [ ]
    Supported link modes:   10baseT/Half 10baseT/Full 
                            100baseT/Half 100baseT/Full 
                            1000baseT/Full 
                            2500baseT/Full 
    Supported pause frame use: No
    Supports auto-negotiation: Yes
    Supported FEC modes: Not reported
    Advertised link modes:  10baseT/Half 10baseT/Full 
                            100baseT/Half 100baseT/Full 
                            1000baseT/Full 
                            2500baseT/Full 
    Advertised pause frame use: Symmetric
    Advertised auto-negotiation: Yes
    Advertised FEC modes: Not reported
    Speed: 1000Mb/s
    Duplex: Full
    Port: Twisted Pair
    PHYAD: 0
    Transceiver: internal
    Auto-negotiation: on
    MDI-X: off (auto)
Cannot get wake-on-lan settings: Operation not permitted
    Current message level: 0x00000007 (7)
                   drv probe link
    Link detected: yes
Run Code Online (Sandbox Code Playgroud)


rub*_*dub 5

基于上面答案的启发,对于在带有 Intel I225-LM 芯片组的 Asus WS X299 SAGE II 主板上运行的 Ubuntu 20.04.1 系统,我切换到 5.8.7 主线通用内核(最新的 5.8 行)撰写本文时)使用内核 PPA 构建。(步骤受此处文章的启发)。

\n
    \n
  1. 您\xe2\x80\x99需要从此处下载以下文件:

    \n
      \n
    • linux-headers-*all.deb
    • \n
    • linux-headers-*generic*.deb
    • \n
    • linux-image-unsigned-*generic*.deb
    • \n
    • linux-modules-*generic*.deb
    • \n
    \n
  2. \n
  3. 下载完\xe2\x80\x99后,运行sudo dpkg -i deb linux*.deb

    \n
  4. \n
  5. 重启!(例如sudo reboot

    \n
  6. \n
  7. 一旦系统备份并运行,您可以通过运行以下命令来验证内核 5.8.7 上的\xe2\x80\x99reuname -sr

    \n
  8. \n
\n

这样做解决了我的内置网卡遇到的问题,并且整个系统在高内存和 CPU 压力下连续几天保持稳定,没有出现问题。

\n

我最初尝试采用固件更新路线,但由于我有 I225-LM 而不是 I225-V,因此受到阻碍。后者似乎已经更新了固件,可以将其引入 Linux 环境,而我无法\xe2\x80\x99 为前者找到类似的结果。

\n