iftop、nload、nethogs和ifstat是Linux下常用网络监控工具:iftop可实时查看主机间带宽使用,通过sudo iftop -i eth0启动并支持交互操作;nload以图表形式展示接口的出入向流量,运行nload eth0即可直观监控;nethogs按进程显示带宽占用,sudo nethogs eth0可定位高消耗应用;ifstat则以表格输出各接口速率,适合脚本集成,如ifstat -t 5设置5秒刷新。

如果您需要实时了解Linux系统的网络使用情况,以便排查性能瓶颈或异常流量,则必须借助专业的监控工具。以下是几种常用的解决方案:
本文运行环境:Dell PowerEdge R750,Ubuntu 22.04 LTS
一、使用iftop监控主机间带宽
iftop能够监听指定网卡上的网络连接,并以类似top命令的界面展示每对主机之间的实时带宽使用情况,适用于快速定位高流量的外部连接。
1、通过系统包管理器安装iftop:sudo apt-get install iftop。
2、执行命令启动监控:sudo iftop -i eth0,其中- i参数指定要监听的网络接口。
3、在运行界面中,左侧显示源主机,右侧显示目标主机,中间的箭头表示传输方向,数值表示当前传输速率。
4、可按P键切换是否显示端口号,按S和D键分别聚焦于源或目标地址,按B键切换速率单位。
二、使用nload查看接口流量图表
nload提供两个独立的实时图表,分别显示选定网络接口的入站和出站流量,界面直观且资源占用低,适合持续监控。
1、安装nload工具:sudo apt-get install nload。
2、直接运行nload并指定网卡:nload eth0,将实时显示该接口的流量数据。
3、界面上方为流入流量(Incoming),下方为流出流量(Outgoing),包含当前速率、平均速率、最大速率及总流量。
4、使用左右方向键可在多个可用网络接口之间切换监控目标。
三、使用nethogs按进程监控带宽
nethogs工具按进程分组网络带宽使用情况,能准确识别是哪个应用程序消耗了大量网络资源,适用于故障排查。
1、安装nethogs:sudo apt-get install nethogs。
2、以root权限运行命令:sudo nethogs eth0,可监控特定网络接口的进程级流量。
3、主界面列出所有正在使用网络的进程PID、用户、下行速度、上行速度及总传输量。
4、按m键可在kb/s、Kb/s、Mb/s等不同单位间循环切换,按r键重新排序以查看最高流量的进程。
四、使用ifstat获取简洁流量报告
ifstat以简洁的表格形式周期性输出各网络接口的接收和发送速率,适合集成到脚本中进行自动化监控。
1、安装ifstat软件包:sudo apt-get install ifstat。
2、运行基本命令查看所有活动接口:ifstat,默认每秒刷新一次数据。
3、若需监控特定接口,可结合grep过滤:ifstat | grep eth0。
4、使用-t参数自定义刷新间隔,例如ifstat -t 5表示每5秒输出一行统计信息。










