Linux系统下查看网卡型号的方法
使用lspci
命令(适用于PCI接口的网卡)
- 执行命令:
lspci | grep -i Ethernet
输出示例:02:00.0 Ethernet controller: Intel Corporation Device 82599 [Virtual Function 0] (rev 01)
Intel Corporation Device 82599
即为网卡型号,若设备支持虚拟化(如VMware环境),可能会显示类似“Virtual Function”的信息。
通过ip link
或ifconfig
获取基础信息
- 命令:
ip link show
或ifconfig -a
重点关注字段:LINK/ETHERNET
对应的接口名称(如ens33
,eth0
),结合下一步操作进一步确认硬件详情。
读取厂商ID与设备ID(精准匹配型号)
- 使用
lspci -nn
查看数值型编码:lspci -nn | grep Ethernet
示例输出:
02:00.0 Ethernet controller [0280]: Intel Corporation Device [82599]
括号内的
[0280]
是PCI Subsystem Vendor ID,可通过PCI数据库(如pciutils
包中的lspci
工具)解析具体型号,对于上述例子,可推断为 Intel Gigabit CT Desktop Adapter。
检查驱动程序绑定情况
- 命令:
ethtool -i <接口名>
(替换<接口名>
为实际值,如eth0
)
关键输出项:driver: e1000e version: 3.2.6-k firmware-version: ... bus-info: pci@0000:02:00.0
driver
字段表明内核加载的驱动模块(此处为e1000e
,对应Intel千兆网卡系列)。
Windows系统下查看网卡型号的方法
设备管理器中直接查看
- 步骤:右键点击“此电脑” → “管理” → “设备管理器” → 展开“网络适配器”。
- 双击目标网卡 → “详细信息”标签页 → 在“属性”下拉菜单选择“硬件ID”。
示例值:PCIVEN_8086&DEV_82599
(VEN=Vendor ID, DEV=Device ID),对应Intel芯片组。
PowerShell命令行查询
执行以下脚本获取所有网络适配器信息:
Get-NetAdapter | Select Name, DriverDescription, MacAddress, Status
输出示例:
| Name | DriverDescription | MacAddress | Status |
|————|———————————|———————|———–|
| Ethernet 2 | Intel(R) Gigabit CT Desktop… | AA:BB:CC:DD:EE:FF | Up |
通用跨平台方案(推荐)
操作系统 | 命令/工具 | 关键输出解读 | 适用场景 |
---|---|---|---|
Linux | lspci -vmm |
显示完整的设备树结构及IRQ分配 | 物理机/虚拟机均适用 |
Windows | wmic NIC get /format:list |
包括制造商、型号、序列号等元数据 | 批量自动化采集 |
BSD/macOS | ifconfig -json |
JSON格式结构化数据,便于解析 | 脚本化处理 |
常见问题与解答
Q1: 如果系统中存在多个网卡,如何快速定位目标设备?
A: 优先根据MAC地址或IP配置识别常用接口(如默认路由出口),再交叉验证PCI槽位位置(Linux用 find /sys/bus/pci -name net
),对于KVM虚拟化环境,可通过 virsh nodedevlist
查看宿主机直通给虚拟机的PCI设备。
Q2: 为什么某些云服务器返回的网卡型号显示为“virtio”?
A: 这是半虚拟化驱动(Virtio)的正常行为,云服务商为降低延迟,会模拟标准网卡并注入优化过的参数表,实际底层仍由Hypervisor调度物理NIC资源,可通过 modinfo virtio_net
(Linux)
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/110661.html