linux如何监控网卡流量
linux如何监控网卡流量详细介绍
在 Linux 系统中,监控网卡流量可以通过多种命令行工具和图形化工具实现,以下是常用的方法:
一、基础命令行工具
1.
ifconfig(或
ip addr)
功能:查看网卡的实时流量统计(接收 / 发送字节数、数据包数)。
说明:输出包含 RX(接收)和 TX(发送)的累计数据,需手动计算差值获取实时流量。
bash
show dev eth0
2.
netstat -i
功能:显示网络接口的统计信息,包括流量、错误率等。
bash
3.
ss(Socket Statistics)
功能:高效查看网络连接和接口流量(替代 netstat 的现代工具)。
bash
ss
二、实时流量监控工具
4.
nload
功能:实时显示单个网卡的上传 / 下载流量,以可视化界面展示。
安装(Debian/Ubuntu):
bash
nload
使用:
bash
nload eth0
(实际为文本界面,分上下两部分显示上传 / 下载速率)。
5.
iftop
功能:实时监控网卡流量,显示连接的 IP 地址、端口、带宽占用等(类似 top 的网络版)。
安装(Debian/Ubuntu):
bash
iftop
常用选项:
bash
iftop eth0iftop
6.
tcpdump
功能:抓包分析工具,可统计指定网卡的流量细节(如按协议、端口过滤)。
示例:
bash
tcpdump eth0tcpdump eth0
三、通过文件系统获取统计信息
Linux 内核通过 /proc 和 /sys 提供网卡流量的原始数据,适合脚本监控:
7.
/proc/net/dev
路径:存储各网卡的接收 / 发送字节数、数据包数等统计。
bash
/proc/net/dev/proc/net/dev
8. 编写脚本计算实时速率
bash
" /proc/net/dev
" /proc/net/dev
" /proc/net/dev
" /proc/net/dev
curr_rx prev_rx
curr_tx prev_tx
KB/s | TX: KB/s"
四、图形化工具(桌面环境)
9. Gnome Nettool(GNOME 桌面)
功能:图形化网络监控工具,显示网卡流量、连接状态等。
安装(GNOME 环境):
bash
gnome-nettool
10. KNetworkManager(KDE 桌面)
功能:KDE 自带的网络管理工具,可查看实时流量统计。
使用:点击任务栏网络图标 → 选择 “流量监控”。
五、高级监控方案
11. 监控软件(适合服务器集群)
- Zabbix/Nagios:通过代理(如
zabbix-agent)采集网卡流量数据,生成历史图表和报警。 - Prometheus + Grafana:结合
node_exporter监控网卡指标,自定义可视化仪表盘。
12.
sar(系统活动报告)
功能:记录和分析系统历史流量数据(需安装 sysstat 包)。
安装:
bash
sysstatyum sysstat
使用:
bash
sar DEV
总结
- 临时查看:用
ifconfig、netstat或直接读取/proc/net/dev。 - 实时监控:
nload(简洁)、iftop(详细连接信息)。 - 脚本监控:通过
/proc/net/dev编写自动化脚本(适合定时任务)。 - 图形化 / 集群监控:根据桌面环境或运维需求选择 Gnome Nettool、Zabbix 等。
根据场景选择合适的工具,日常运维推荐 nload 或 iftop,服务器长期监控建议结合 sar 或专业监控软件。