在Linux系统中,获取网卡信息是网络管理和故障排查的基础操作,通过多种命令和工具可以全面了解网卡的硬件信息、配置状态、流量数据等,以下是常用的方法及详细说明。
使用ip
命令(现代Linux系统首选)
ip
命令是iproute2
工具包的核心命令,替代了传统的ifconfig
,功能更强大且信息更全面,通过ip
命令可以查看网卡的IP地址、MAC地址、状态、MTU值、流量统计等。
基本用法:
-
查看所有网卡概览:
ip addr show
输出包括网卡名称(如
eth0
、ens33
)、状态(UP
/DOWN
)、MAC地址(link/ether
)、IPv4/IPv6地址(inet
/inet6
)、广播地址(brd
)等。2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 00:1c:23:45:67:89 brd ff:ff:ff:ff:ff:ff inet 192.168.1.100/24 brd 192.168.1.255 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::21c:23ff:fe45:6789/64 scope link valid_lft forever preferred_lft forever
-
查看特定网卡详细信息:
ip addr show eth0
-
查看网卡流量统计:
ip -s link show eth0
输出包含接收(RX)和发送(TX)的字节数、包数、错误数、丢包数等详细流量数据。
使用ifconfig
命令(传统工具,需安装net-tools
)
ifconfig
是早期Linux系统中常用的网络配置工具,部分系统默认未安装,需通过sudo apt install net-tools
(Ubuntu/Debian)或sudo yum install net-tools
(CentOS/RHEL)安装。
基本用法:
- 查看所有网卡信息:
ifconfig -a
- 查看特定网卡信息:
ifconfig eth0 ``` 与`ip addr show`类似,包括网卡状态、IP地址、MAC地址、流量统计(`RX packets`、`TX packets`等)。
使用lspci
和lsusb
命令(查看网卡硬件信息)
若需了解网卡的硬件型号(如厂商、设备ID),可通过lspci
(PCI网卡)或lsusb
(USB网卡)命令查询。
基本用法:
-
查看PCI网卡硬件信息:
lspci | grep -i ethernet
输出示例:
04:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection
-
查看USB网卡硬件信息:
lsusb | grep -i ethernet
输出示例:
Bus 001 Device 005: ID 0bda:8153 Realtek Semiconductor Corp. RTL8153 Gigabit Ethernet Adapter
使用ethtool
命令(查看网卡高级参数)
ethtool
可获取网卡的速率、双工模式、自协商状态、驱动版本等高级信息,需安装ethtool
工具包。
基本用法:
sudo ethtool eth0
输出关键信息包括:
Speed
: 网卡速率(如1000Mb/s
);Duplex
: 双工模式(half
/full
);Auto-negotiation
: 是否开启自协商(on
/off
);Driver
: 网卡驱动名称(如e1000e
);FW-version
: 固件版本。
通过系统文件查看网卡信息
Linux内核将网卡信息存储在/proc/net/dev
和/sys/class/net/
目录下,可直接读取文件内容获取数据。
-
查看实时流量统计:
cat /proc/net/dev
第一行为表头,后续每行对应一个网卡的接收(RX)和发送(TX)字节数、包数等。
-
查看网卡详细信息:
ls /sys/class/net/
列出所有网卡名称,进入对应网卡目录(如
/sys/class/net/eth0/
)可查看地址(address
)、MTU(mtu
)、操作状态(operstate
)等文件内容。
常用网卡信息查询命令总结
命令 | 主要用途 | 示例命令 | 输出信息说明 |
---|---|---|---|
ip addr show |
查看IP、MAC、状态等基本信息 | ip a |
网卡名称、IP地址、MAC地址、状态 |
ifconfig |
传统网络配置工具(需安装) | ifconfig eth0 |
与ip 类似,包含流量统计 |
lspci/lsusb |
查看网卡硬件型号 | lspci | grep -i ethernet |
厂商、设备ID、硬件名称 |
ethtool |
查看速率、双工、驱动等高级参数 | sudo ethtool eth0 |
网卡速率、双工模式、驱动版本 |
cat /proc/net/dev |
查看实时流量统计 | cat /proc/net/dev |
接收/发送字节数、包数、错误数 |
相关问答FAQs
Q1: 如何查看网卡的实时流量,并监控带宽使用情况?
A: 可使用ip -s link
查看基础流量统计,或结合nload
、iftop
等工具实时监控带宽,例如安装nload
后,执行nload -i eth0
(-i
指定网卡),可实时显示接收和发送的流量图表,若需历史流量统计,可使用vnstat
工具(需安装),通过vnstat -i eth0
查看按小时、天、月的流量汇总。
Q2: 如何获取网卡当前使用的驱动名称及版本信息?
A: 方法1:使用ethtool
命令,执行sudo ethtool -i eth0
,输出中的Driver
字段即为驱动名称,Version
字段为驱动版本,方法2:通过系统文件查看,执行cat /sys/class/net/eth0/device/driver/module/version
(需root权限),直接显示驱动版本,方法3:使用lsmod
命令查看已加载的网络模块,执行lsmod | grep -i e1000e
(以Intel e1000e驱动为例),确认驱动是否加载。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/30775.html