使用iftop可实时查看各IP连接的带宽使用情况;2. nethogs按进程显示流量,便于定位高占用程序;3. sar每秒刷新网卡收发速率,适合性能分析;4. vnstat记录长期流量统计,资源消耗低,适合日常监控组合使用。
监控Linux系统的实时网络流量有多种实用方法,常用的是通过命令行工具快速查看网卡流量、连接状态和带宽使用情况。以下是一些简单高效的方式。
使用 iftop 查看实时带宽使用
iftop 能按连接显示实时网络流量,类似 top 命令对进程的监控方式。
安装 iftop(以 Debian/Ubuntu 为例):
sudo apt install iftop
运行:
sudo iftop
它会显示当前每个IP连接的上传和下载速度,支持按流量排序,按 P 可以显示端口,T 切换显示格式。
使用 nethogs 按进程监控流量
如果你想知道是哪个进程在占用网络,nethogs 是更好的选择。
安装:
sudo apt install nethogs
运行:
sudo nethogs
它会列出每个进程的实时上传和下载速度,便于定位“偷跑流量”的程序。
使用 sar(sysstat)记录和查看历史流量
sar 可以监控网络接口的累计流量,适合查看历史趋势。
安装 sysstat:
sudo apt install sysstat
查看网卡实时流量:
sar -n DEV 1
每秒刷新一次,显示各网卡的接收(rxkB/s)和发送(txkB/s)速率。
使用 vnstat 查看长期流量统计
vnstat 不是实时工具,但能记录每日、每月的网络使用量,适合长期监控。
安装并启动服务:
sudo apt install vnstat
sudo systemctl enable vnstat
sudo systemctl start vnstat
查看统计:
vnstat
它后台记录数据,不依赖实时抓包,资源消耗极低。
基本上就这些。iftop 和 nethogs 适合排查当前流量问题,sar 适合系统性能分析,vnstat 适合查看长期用量。根据需要选择工具组合使用,效果更好。