iftop 命令详解及数据解读指南
但专注于网络接口的带宽使用情况。它按流量大小排序连接,帮助快速识别占用带宽最多的进程或主机。以下从界面结构、数据含义到判断方法逐步解析。(这段话百度一大堆,直接查就有了)(纯个人纪录,查到的东西没太理解的了😅 ,安装的话正常apt或者yum应该就可以,apt好像要安装sysstat,yum的应该是直接安装iftop)是一款实时监控网络流量的命令行工具,类似于。:服务器带宽突然跑满,需快速定位原
(纯个人纪录,查到的东西没太理解的了😅 ,安装的话正常apt或者yum应该就可以,apt好像要安装sysstat,yum的应该是直接安装iftop)
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(抓包分析)深入诊断。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐



所有评论(0)