实时流量监控工具
iftop
– 动态流量分析
- 功能:实时显示网络接口的带宽占用,按主机对排序。
- 安装:
sudo apt install iftop # Debian/Ubuntu sudo yum install iftop # CentOS/RHEL
- 使用:
sudo iftop -i eth0 # 指定网卡
输出解读:
- 顶部:带宽刻度尺(峰值比例)。
- 中部:主机对流量(→表示流入,←表示流出)。
- 底部:2秒/10秒/40秒的平均流量统计。
nload
– 简洁分栏视图
- 特点:双栏分别显示流入(Incoming)和流出(Outgoing)流量。
- 安装:
sudo apt install nload # Debian/Ubuntu sudo yum install nload # CentOS/RHEL
- 操作:
nload -m -i 1000 -o 500 eth0 # -m: 简化显示;-i/-o: 流入/流出刻度上限(KB/s)
优势:直观对比双向流量,适合快速诊断异常。
bmon
– 多网卡监控
- 场景:同时监控多个接口,支持图形化输出。
- 安装:
sudo apt install bmon # Debian/Ubuntu sudo yum install bmon # CentOS/RHEL
- 交互命令:
- 启动后按
d
选择网卡,g
切换图形/文本模式。
- 启动后按
历史数据统计工具
vnstat
– 轻量级长期统计
- 原理:后台守护进程定期记录数据,资源占用低。
- 安装与初始化:
sudo apt install vnstat # Debian/Ubuntu sudo vnstat -u -i eth0 # 初始化数据库 sudo systemctl start vnstat
- 查看报告:
vnstat -d # 日统计 vnstat -m # 月统计 vnstat -l # 实时模式(类似iftop)
输出示例:
eth0 / monthly Month Rx (GB) Tx (GB) Total -------------------------------- 2025-01 12.34 5.67 18.01
sar
– 系统级历史数据
- 来源:
sysstat
包收集的系统活动报告。 - 配置:
sudo apt install sysstat # Debian/Ubuntu sudo vi /etc/default/sysstat # 启用ENABLED="true" sudo systemctl restart sysstat
- 查询历史带宽:
sar -n DEV -f /var/log/sysstat/sa15 # 查看当月15日数据
关键列:
rxkB/s
:接收速率(KB/s)txkB/s
:发送速率(KB/s)
带宽压测工具
iperf3
– 网络性能基准测试
- 用途:测量节点间最大可用带宽(需两端部署)。
- 安装:
sudo apt install iperf3 # Debian/Ubuntu sudo yum install iperf3 # CentOS/RHEL
- 服务端启动:
iperf3 -s # 默认监听5201端口
- 客户端测试:
iperf3 -c 192.168.1.100 -t 30 -P 4 # 连接服务端IP,测试30秒,4线程
结果解读:
[SUM] 0.00-30.00 sec 3.75 GBytes 1.07 Gbits/sec # 总带宽
原生系统命令
ip
命令(推荐)
- 查看接口统计:
ip -s link show eth0
输出关键项:
RX: bytes packets errors ... # 接收数据 TX: bytes packets errors ... # 发送数据
netstat
(传统工具)
- 已弃用:部分发行版预装但逐渐被
ss
替代。 - 临时查看:
netstat -i # 显示接口摘要
工具选型建议
场景 | 推荐工具 | 优势 |
---|---|---|
实时流量诊断 | iftop 、nload |
动态排序,直观可视化 |
长期趋势分析 | vnstat 、sar |
低开销,支持历史回溯 |
多网卡监控 | bmon |
集中管理,图形化支持 |
网络吞吐量测试 | iperf3 |
跨节点压测,精确评估上限 |
快速查看接口状态 | ip -s link |
无需安装,系统原生支持 |
注意事项
- 权限要求:实时监控工具(如
iftop
)通常需sudo
权限。 - 数据安全:使用
iperf3
时,通过-k
启用加密(需编译支持),避免开放端口暴露风险。 - 单位换算:工具默认显示单位可能不同(如
vnstat
输出GB,nload
默认KB),注意换算(1 GB = 1024 MB ≈ 1,000,000 KB)。 - 虚拟化环境:云服务器需区分物理网卡(如
eth0
)与虚拟网卡(如ens3
),使用ip link
确认接口名。
引用说明
iftop
官方文档:https://www.ex-parrot.com/pdw/iftop/iperf3
手册:https://iperf.fr/iperf-doc.php- Linux
ip
命令指南:https://man7.org/linux/man-pages/man8/ip.8.html vnstat
配置参考:https://humdi.net/vnstat/
通过合理选择工具,您可高效掌握Linux系统的带宽使用情况,为网络优化提供数据支撑,建议运维人员定期使用vnstat
记录基线数据,结合iperf3
验证网络性能,确保业务稳定运行。
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/30415.html