linux查看流量峰值命令
linux查看流量峰值命令详细介绍
在 Linux 系统中,查看网络流量峰值可以通过多种工具实现,以下是常用的命令及工具介绍:
1.
nload(实时流量监控,显示峰值)
特点:实时显示指定网络接口的上下行流量,包含实时速率和峰值统计。
安装:
bash
nload
yum nload
用法:
bash
nload 网络接口
输出说明:
- 上方显示 Incoming(入站流量),下方显示 Outgoing(出站流量)。
Curr:当前实时速率;Avg:平均速率;Min/Max:最小 / 最大速率(即峰值);Total:总流量。
2.
iftop(实时流量排序,直观查看峰值连接)
特点:类似 top 命令,实时显示网络连接的带宽占用,按流量排序,适合定位峰值来源。
安装:
bash
iftop
yum epel-release yum iftop
用法:
bash
iftop 网络接口
操作:
- 按
h查看帮助,n切换 IP 显示格式,B切换单位(bps、KB/s、MB/s)。 - 峰值会在流量列(如
=>或<=后的数值)中动态显示,排序靠前的连接通常是流量大户。
3.
vnstat(历史流量统计,包含峰值)
特点:长期统计网络接口的流量数据,可查看日、月、年的峰值。
安装:
bash
vnstat
yum vnstat
用法:
- 首次运行需初始化监控:bash
vnstat 网络接口 - 查看实时流量(含当前峰值):bash
vnstat eth0 - 查看历史峰值(日 / 月统计):bash
vnstat eth0vnstat eth0
4.
sar(系统活动报告,含网络流量统计)
特点:通过系统日志获取历史数据,可统计过去某段时间的流量峰值。
安装:
bash
sysstat
用法:
bash
sar DEV
sar DEV /var/log/sa/sa20
输出说明:
rxpck/s:入站数据包速率;txpck/s:出站数据包速率。rxkB/s/txkB/s:入站 / 出站流量速率(KB/s),峰值需结合时间序列分析。
5.
ss 或 netstat(辅助计算流量,需脚本处理)
特点:显示套接字统计信息,可通过接口计数器计算流量变化。
用法:
bash
/proc/net/dev
" /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"
6.
tcpdump(抓包分析,适合排查峰值来源)
特点:捕获网络数据包,分析具体流量内容(如哪个 IP / 端口产生峰值)。
用法:
bash
tcpdump eth0
注意:需结合 Wireshark 等工具分析,不直接显示峰值,但可定位流量来源。
总结:
- 实时峰值监控:首选
nload或iftop,直观显示速率和峰值。 - 历史峰值统计:使用
vnstat或sar,适合长期流量分析。 - 定位峰值来源:
iftop或tcpdump,结合 IP / 端口排序或抓包分析。
根据需求选择工具,例如排查突发流量峰值时,iftop 能实时显示活跃连接的带宽占用,而 vnstat 更适合查看历史时间段内的峰值记录。