Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> Linux 教學

Linux 查看網卡驅動版本與韌體資訊完整指南

編輯:Linux 教學

核心觀念

Linux 網卡驅動以核心模組形式載入。lsmod 僅顯示模組名稱(如 e1000e、bnxt_en),不含版本資訊。驅動版本、韌體版本、連結速度等關鍵資訊記錄在核心日誌(dmesg、/var/log/messages)或 ethtool 輸出中。

方法一:核心日誌查詢(最直接)

# 1. 先確認模組名稱
lspci -nn | grep -i ethernet
# 輸出範例:03:00.0 Ethernet controller [0200]: Broadcom Limited NetXtreme BCM5720 [14e4:165f]
#           → 廠商 ID 14e4, 晶片 165f,驅動多為 bnxt_en 或 tg3

lsmod | grep -i ethernet
# 或
lsmod | grep -E "tg3|bnxt_en|e1000|igb|ixgbe"

# 2. 查詢核心日誌
dmesg -T | grep -i -e tg3 -e bnxt_en -e e1000 -e igb -e ixgbe -e eth
# 或
grep -i -e tg3 -e bnxt_en /var/log/messages

輸出範例解讀

# Broadcom tg3 驅動(舊版核心內建)
tg3 0000:03:00.0 eth0: Tigon3 [partno(BCM5720) rev 1000] (PCI Express)
tg3 0000:03:00.0 eth0: Link is up at 1 Gbps, full duplex
# ↑ 無明確版本號,通常為核心內建版本

# Broadcom 官方 bnxt_en 驅動(新版核心/官方更新)
bnxt_en 0000:03:00.0 eth0: Broadcom NetXtreme-E driver v1.12.0 (Feb 2023)
bnxt_en 0000:03:00.0 eth0: Firmware version 21.40.1000
# ↑ 明確顯示驅動版本 v1.12.0、韌體版本 21.40.1000

# Intel e1000e/igb/ixgbe
e1000e 0000:00:1f.6 eth0: Intel(R) PRO/1000 Network Connection 3.2.6-k
e1000e 0000:00:1f.6 eth0: MAC: 3, PHY: 12, PBA No: FFFFFF-0FF
# ↑ 驅動版本 3.2.6-k(核心內建),PBA 可查韌體

方法二:ethtool 查詢驅動與韌體資訊

# 安裝
yum install ethtool   # 或 apt-get install ethtool

# 查詢驅動資訊
ethtool -i eth0
# 輸出範例
driver: bnxt_en
version: 1.12.0
firmware-version: 21.40.1000
expansion-rom-version:
bus-info: 0000:03:00.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: yes
supports-register-dump: yes
supports-priv-flags: yes

優點:標準化輸出,腳本易解析;缺點:舊版驅動可能不支援 -i 參數。

方法三:/sys/class/net/ 檔案系統

# 驅動模組路徑
readlink -f /sys/class/net/eth0/device/driver
# → /sys/bus/pci/drivers/bnxt_en

# 驅動版本(若模組支援)
cat /sys/module/bnxt_en/version
# → 1.12.0

# 韌體版本(部分驅動支援)
cat /sys/class/net/eth0/device/firmware_version 2>/dev/null || echo "N/A"

常見廠商驅動對應表

廠商/晶片核心內建模組官方更新模組備註
Intel (銅纜/光纖)e1000, e1000e, igb, igc, ixgbe, i40e, ice同名稱,版本更新於核心樹或 Intel 網站e1000e=千兆內建,igb/ixgbe=伺服器級
Broadcom (NetXtreme)tg3 (舊)、bnxt_en (新)bnxt_en (GitHub/Broadcom)tg3 僅顯示核心版本;bnxt_en 顯示獨立版本
Realtekr8169, r8168, r8125r8168 (Realtek 官網)r8169 為開源版,效能較差
Mellanox (ConnectX)mlx4_en, mlx5_coreMLNX_OFED 套件高效能 RDMA/RoCE 需 OFED
QLogic/NetXenqla3xxx, qlcnic廠商套件FCoE/iSCSI 多用

驅動更新建議流程

  1. 確認現況:ethtool -i ethX 記錄目前版本。
  2. 查閱釋出說明:核心 ChangeLog、廠商 Release Notes 確認修正項目(效能、穩定性、安全性、新功能)。
  3. 測試環境驗證:編譯/安裝新驅動(DKMS 或原始碼),壓力測試 iperf3、netperf、長時間 ping。
  4. 生產部署:滾動更新,保留舊模組回滾機制(modprobe -r new; modprobe old)。
  5. 韌體同步更新:部分驅動要求特定韌體版本,參考廠商相容性矩陣。

總結

查看 Linux 網卡驅動版本,首選 ethtool -i 標準化輸出;輔以 dmesg 核心日誌獲取完整啟動資訊(韌體版本、連結速度、錯誤代碼)。熟悉主流廠商模組名稱對應表,可快速定位問題並規劃驅動更新策略。

Copyright © Windows教程網 All Rights Reserved