在Linux系统中,查看网卡型号是网络配置、故障排查或硬件升级时的常见需求,由于Linux发行版众多,且网卡硬件类型多样(如Intel、Realtek、Broadcom等),掌握多种查看方法能更高效地获取信息,本文将详细介绍通过命令行和图形界面查看Linux网卡型号的多种方式,并分析不同方法的适用场景和优缺点。

通过命令行工具查看网卡型号
命令行是Linux系统管理的核心方式,通过特定命令可以快速、准确地获取网卡硬件信息,以下是几种常用的命令行方法:
使用 lspci 命令查看PCI网卡信息
lspci(List PCI Devices)用于列出系统所有PCI设备,网卡通常作为PCIe或PCI设备连接在主板上,因此可通过该命令识别网卡型号。
基本用法:
直接执行 lspci 会列出所有PCI设备,但信息较简略,结合参数可筛选并显示详细信息:
lspci | grep -i "ethernet":仅显示以太网控制器(网卡)相关设备。lspci -v(或lspci --verbose):显示设备的详细信息,包括驱动、厂商ID等。lspci -nn(或lspci --numeric-ids):以数字格式显示厂商和设备ID,便于精准匹配型号。lspci -k(或lspci --kernel):显示设备使用的内核驱动模块。
示例输出:
$ lspci | grep -i ethernet
03:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03)
$ lspci -nn -k | grep -i ethernet -A 3
03:00.0 Ethernet controller [0200]: Intel Corporation I210 Gigabit Network Connection [8086:1572] (rev 03)
Subsystem: Intel Corporation I210 Gigabit Network Connection [8086:1572]
Kernel driver in use: igb
Kernel modules: igb
解读:输出中 Intel Corporation I210 Gigabit Network Connection 即为网卡型号,[8086:1572] 是厂商和设备ID(8086为Intel厂商ID),igb 是当前使用的驱动模块。
注意事项:
- 若系统未安装
lspci,可通过包管理器安装(如Ubuntu/Debian用sudo apt install pciutils,CentOS/RHEL用sudo yum install pciutils)。 - 对于USB网卡(如外接无线网卡),需使用
lsusb命令,用法类似(lsusb | grep -i "network")。
使用 ethtool 查看网卡详细信息
ethtool 是用于查询和配置网卡参数的工具,不仅能查看速率、双工模式等网络状态,还能显示网卡硬件型号(部分驱动支持)。
基本用法:
ethtool -i <网卡接口名>:显示网卡驱动的详细信息,包括驱动模块、版本等。ethtool <网卡接口名>:显示网卡的基本状态,如速率、MAC地址等,部分驱动会包含硬件型号。
示例输出:
$ ethtool -i eth0 driver: igb version: 5.15.0-76-generic firmware-version: 0.6-1 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
若驱动支持,ethtool 可能直接显示型号,但更多情况下需结合 lspci 的结果综合判断。
注意事项:
- 若未安装
ethtool,可通过sudo apt install ethtool(Ubuntu/Debian)或sudo yum install ethtool(CentOS/RHEL)安装。 - 需确保网卡接口已启动(如
ip link set eth0 up),否则可能无法获取信息。
通过 /proc 文件系统查看网卡信息
Linux内核将硬件信息暴露在 /proc 目录下,通过读取相关文件可直接获取网卡硬件数据。

关键文件:
/proc/net/dev:列出所有网络接口及其统计信息,包含接口名(如eth0、ens33)。/proc/bus/pci/devices:PCI设备的原始信息,需结合工具解析。/proc/interrupts:查看网卡中断信息,间接关联硬件型号。
示例操作:
-
从
/proc/net/dev获取接口名:$ cat /proc/net/dev | grep -E ":|^[^ ]" Inter-| Receive | Transmit face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed lo: 12345 678 0 0 0 0 0 0 12345 678 0 0 0 0 0 0 eth0: 987654 12345 0 0 0 0 0 0 543210 10987 0 0 0 0 0 0
可知网卡接口名为
eth0。 -
结合
lspci通过接口名定位硬件:$ lspci -v | grep "03:00.0 - Ethernet controller" 03:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03)
优点:无需额外安装工具,适合脚本自动化处理。
使用 ip 或 ifconfig 命令辅助定位
ip(或传统的 ifconfig)主要用于网络接口管理,但可通过接口名结合其他命令获取硬件信息。
基本用法:
ip link show:列出所有网络接口及其状态(如eth0、wlan0),获取接口名。ifconfig(需安装net-tools,Ubuntu/Debian用sudo apt install net-tools):功能类似ip link show。
示例输出:
$ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 00:1c:23:45:67:89 brd ff:ff:ff:ff:ff:ff
获取接口名 eth0 后,再用 lspci 或 ethtool 进一步查询硬件型号。
使用 dmidecode 查看硬件详细信息
dmidecode(DMI Table Decoder)通过读取主板BIOS中的DMI表(SMBIOS信息),获取硬件的详细信息,包括网卡型号。
基本用法:

sudo dmidecode -t network:仅显示网卡硬件信息。sudo dmidecode:显示所有硬件信息,需手动筛选网卡部分。
示例输出:
$ sudo dmidecode -t network
Handle 0x0003, DMI type 9, 15 bytes
Ethernet Controller
Device ID: 1572
Device Name: I210 Gigabit Network Connection
Vendor: Intel Corporation
Device Locator: PCIe Slot 1
Serial Number: 123456789
MAC Address: 00:1C:23:45:67:89
注意事项:
- 需root权限运行,且BIOS需开启DMI功能(大部分现代主板默认支持)。
- 部分虚拟化环境(如VMware、KVM)可能无法获取完整信息。
通过图形界面工具查看网卡型号
对于不熟悉命令行的用户,Linux图形界面提供了更直观的查看方式,以下是几种常用工具:
使用 lshw(Hardware Lister)图形界面
lshw 是一款强大的硬件信息查看工具,支持命令行和图形界面(需安装 lshw-gtk)。
安装与使用:
- Ubuntu/Debian:
sudo apt install lshw-gtk - CentOS/RHEL:
sudo yum install lshw-gtk
启动后(sudo lshw-gtk),在左侧列表展开network或pci,即可看到网卡型号、驱动等信息。
使用 Hardinfo(硬件信息工具)
Hardinfo 是一款图形化硬件检测工具,可生成详细的硬件报告,包含网卡信息。
安装与使用:
- Ubuntu/Debian:
sudo apt install hardinfo - CentOS/RHEL:
sudo yum install hardinfo
启动后选择Computer -> Scan,扫描完成后在Network或PCI分类中查看网卡型号。
系统设置中的网络信息
部分Linux发行版(如Ubuntu的GNOME、Fedora的KDE)在系统设置的网络模块中会显示网卡硬件信息,但通常仅包含接口名和MAC地址,硬件型号需结合其他工具。
不同方法对比
为方便选择,以下通过表格总结各方法的适用场景和优缺点:
| 方法 | 适用场景 | 优点 | 缺点 |
|---|---|---|---|
lspci |
所有PCI/PCIe网卡,需精准硬件ID | 信息全面,支持驱动查询 | 需结合参数筛选,输出需解析 |
ethtool |
已激活的网卡,需驱动和速率信息 | 支持实时状态查询,部分显示型号 | 依赖驱动支持,未激活网卡无效 |
/proc文件系统 |
脚本自动化,无需额外工具 | 轻量级,适合编程调用 | 信息分散,需手动关联 |
ip/ifconfig |
快速获取接口名,辅助定位 | 命令简单,所有发行版支持 | 仅显示接口信息,需结合其他工具 |
dmidecode |
需BIOS级硬件信息,虚拟化环境 | 信息权威,包含序列号等 | 需root权限,部分环境受限 |
| 图形界面工具 | 不熟悉命令行的用户 | 直观易用,无需记忆命令 | 功能有限,依赖桌面环境 |
相关问答FAQs
Q1:为什么使用 lspci 查看时只显示 “Ethernet controller” 而没有具体型号?
A:可能原因有二:
- 未安装对应驱动:Linux内核未加载网卡驱动时,
lspci无法识别具体型号,仅显示设备类型,可通过lspci -nn查看厂商和设备ID(如[8086:1572]),然后搜索该ID对应的型号(如Intel 1572对应I210)。 - 参数不完整:未使用
-v或-nn参数,建议执行lspci -nn -v | grep -i ethernet -A 3,获取更详细信息。
Q2:如何查看网卡的硬件地址(MAC地址)和驱动版本?
A:
- MAC地址:
- 命令行:
ip link show <接口名>(如ip link show eth0),输出中link/ether后即为MAC地址; - 图形界面:系统设置 → 网络 → 点击网卡 → 查看详细信息。
- 命令行:
- 驱动版本:
- 命令行:
ethtool -i <接口名>(如ethtool -i eth0),driver为驱动名,version为驱动版本; - 或
modinfo <驱动名>(如modinfo igb),查看驱动的详细版本信息。
- 命令行:
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/34888.html