iftop 命令详解及数据解读指南

技术分享   2025-12-11 22:03   197   0   0   0  

iftop 是一款实时监控网络流量的命令行工具,类似于 top 但专注于网络接口的带宽使用情况。它按流量大小排序连接,帮助快速识别占用带宽最多的进程或主机。以下从界面结构、数据含义到判断方法逐步解析。(这段话百度一大堆,直接查就有了)


‌一、界面结构‌


运行命令 sudo iftop -i <网卡名>(如 enp125s0f0)后,界面分为三部分:


‌顶部刻度条‌:显示实时带宽占用比例。

‌中部连接列表‌:展示活跃网络连接的流量详情。

‌底部统计区‌:汇总发送(TX)、接收(RX)及峰值流量。

‌二、数据字段详解‌


‌1. 顶部刻度条‌


sudo iftop -i enp125s0f0

0.0Kb     25.0Kb     50.0Kb      78.5Kb     100.0Kb    130.5Kb ├──────┴──────┴──────┴──────┴──────┤


‌作用‌:动态显示当前带宽占用比例,刻度值随流量自动调整。

‌判断‌:若刻度条频繁满格,说明带宽接近饱和,需优化或排查高流量来源‌。

流量图形条‌:按 b 键可启用/禁用图形化流量条,直观显示带宽占比‌

‌2. 中部连接列表,这里是有进出方向的,看箭头,两行算一组‌来看


sudo iftop -i enp125s0f0


192.168.1.10:ssh       => 203.0.113.5:1234        2.0Kb 1.5Kb 0.8Kb


               <=                 0.2Kb 0.1Kb 0.0Kb


‌每行结构‌:

‌源地址:端口 → 目标地址:端口‌:表示流量方向(=> 为发送,<= 为接收)

=> 表示数据从本地发送到目标地址(发送流量,TX)

<= 表示数据从目标地址接收至本地(接收流量,TX)

 若未启用 -n 参数,地址可能显示为 DNS 解析后的主机名‌

‌三个速率列‌:分别为过去 ‌2秒‌、‌10秒‌、‌40秒‌ 的平均流量速率。

‌第一列‌(2秒):反映瞬时流量波动,适合捕捉突发传输。

‌第二列‌(10秒):短期趋势,识别短暂高负载。

‌第三列‌(40秒):长期趋势,判断持续占用带宽的连接。

‌排序规则‌:默认按 ‌2秒速率‌ 降序排列,按 t 可切换排序依据。

‌3. 底部统计区‌


sudo iftop -i enp125s0f0

TX:  cum: 216KB   peak:  189Kb           Rates: 3.30Kb 41.7Kb 13.5Kb


RX:      43.1KB       4.48Kb               1.97Kb  2.55Kb 2.28Kb


TOTAL:    259KB        191Kb                5.27Kb  44.2Kb 15.7Kb‌


TX‌(发送Transmit):总上传数据量,单位为 MB/KB。

‌RX‌(接收Receive):总下载数据量。

TOTAL‌:TX 和 RX 的总和‌。

‌cum(Cumulative)‌:从启动 iftop 到当前的累计流量‌

‌Peak rate‌:峰值速率,显示监控期间的最高上传(TX)和下载(RX)速率,用于评估网络最大负载‌。

‌Rates‌:不同时间段的平均速率,即2s/10s/40s 速率,与中部连接列表的速率列一致,分别对应三个时间窗口的平均值‌。

三、关键数据判断方法‌


‌1. 识别高流量连接‌


‌瞬时高峰‌:关注 ‌2秒速率‌ 高的连接,可能是大文件传输或异常流量(如攻击)。

‌持续占用‌:若某连接的 ‌40秒速率‌ 长期高位,需检查是否为正常服务(如视频流、备份任务)。

‌2. 带宽瓶颈分析‌


‌刻度条饱和‌:若顶部刻度条持续满格,且底部 Peak rate 接近物理带宽上限,说明网络拥堵。

‌TX/RX 比例失衡‌:上传(TX)远高于下载(RX)可能为服务器响应请求(如Web服务);反之可能是客户端下载数据。

‌3. 异常流量检测‌


‌未知IP或端口‌:陌生地址的高速率连接可能为恶意软件或未经授权的访问。

‌单向流量激增‌:如只有发送(=>)无接收(<=),可能为DDoS攻击或数据泄露。

‌四、常用选项与交互命令‌


‌1. 启动选项‌


常用选项 作用

-i <网卡> 指定监控的网卡(如 eth0)

-n 禁用DNS解析,直接显示IP地址

-P 显示端口号

-F <网段> 过滤特定网段(如 192.168.1.0/24)

‌2. 交互命令(运行时按快捷键)‌


按键 功能

t 切换速率显示模式(2/10/40秒)

s/d 切换源/目标地址显示

T 显示/隐藏累计流量

j/k 上下滚动连接列表

q 退出

‌五、实战示例‌


‌场景‌:服务器带宽突然跑满,需快速定位原因。


‌运行命令‌:sudo iftop -i enp125s0f0 -nP

‌观察列表‌:

发现 10.0.0.5:443 => 203.0.113.10:54321 的2秒速率高达 10MB。

目标端口 54321 非常用端口,疑似异常。

‌进一步排查‌:

使用 netstat -tunap | grep 54321 查找进程。(-t|--tcp、-u|--udp)

若为未知进程,可能为恶意软件上传数据,需终止并排查。

‌六、总结‌‌


‌核心指标‌:关注 ‌2秒速率‌(突发流量)与 ‌40秒速率‌(长期趋势)。

‌异常判断‌:陌生IP、非常用端口、单向高流量均为危险信号。

‌优化建议‌:结合 nethogs(按进程监控)和 tcpdump(抓包分析)深入诊断。

————————————————


原文链接:https://blog.csdn.net/2503_90729443/article/details/146260692


博客评论
还没有人评论,赶紧抢个沙发~
发表评论
说明:请文明发言,共建和谐网络,您的个人信息不会被公开显示。
QQ
微信
扫一扫