欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

轻松掌握Linux下的网络流量神器

最编程 2024-02-24 10:46:52
...

我们的后端应用大部分都部署在Linux服务器上,可能会遇到应用网络突然变慢或者其他的一些网络问题,需要对Linux机器的网络流量进行监控,以帮助我们排查分析解决问题。今天给大家介绍两个非常好用的Linux小工具,iftop和nethogs。

iftop

iftop用于网卡机器级别的流量监控,可以实时显示当前机器和其他主机之间的网络流量。

安装

yum install -y iftop

安装完成后可以通过iftop命令启动,iftop默认监控第一个可用网卡的流量,可以通过参数指定要监控的网卡比如iftop -i eth0。网卡名称可以通过ifconfig获取。启动后的界面如下

最上面的是一个类似于刻度尺,通过下面的机器的进度条表示和某个机器网络流量的大小。

VM_0_9_centos  =>    169.254.0.4    3.19Kb  2.90Kb  3.17Kb
               <=                   1.47Kb  1.480Kb 1.48Kb

每两行代表和每个host之间不同方向的网络流量,第一列是源主机,第二列是目标主机,第三列分别是最近2s, 10s和40s的平均网络流量。默认按10s的网络流量进行排序。

TX:  cumm:   82.5KB   peak:   67.3Kb    rates:    5.02Kb   5.69Kb  16.0Kb
RX:          21.1KB           10.1Kb              1.74Kb   2.19Kb  3.99Kb
TOTAL:       104KB            77.4Kb              6.76Kb   7.88Kb  20.0Kb

底部显示全局的流量统计,cumm表示运行至今的累计情况,peak表示峰值数据, rates 表示最近2s,10s和40s秒平均网络流量。

快捷键

在监控界面可以通过快捷键来调整监控显示项。可以通过h或者?查看支持查快捷键用法。

主机显示

 n - 是否开启DNS解析,显示机器名或者IP    
 s - 是否源主机    
 d - 是否显示目标主机
 t - 流量统计显示模式,两行显示,一行显示,只显示发送流量或者接收流量 

端口显示

N - toggle service resolution          
S - 是否显示源主机端口           
D - 是否显示目标主机端口
p - 是否显示端口号 

排序

 1/2/3 - 根据2s,10s和40s的流量排序
 < - 按源主机进行排序
 > - 按目标主机排序
 o - 冻结当前排序,避免机器排序出现变化,方便观察固定主机流量

其他

 P - 暂停刷新
 h - 显示帮助
 b - 是否显示进度条和刻度尺
 B - 循环切换按2s,10s, 40s显示进度条
 T - 显示或者隐藏统计总量
 j/k - 滚动显示
 f - 编辑过滤器代码
 l - 屏幕文本搜索过滤
 ! - 执行Shell命令
 q - 退出

其中过滤器代码参考pcap formatted filters

nethogs

nethogs用于监控统计每个进程的带宽使用

安装

yum install -y nethogs

安装完成后可以直接运行nethogs启动,默认监听eth0网卡的流量,可以通过nethogs xxx监听其他网卡。

快捷键

m  切换显示模式(kb/s, kb, b, mb)
r  根据接收流量排序  
s  根据发送流量排序 
q  退出

原文地址: blog.devlab.cn/linux-netwo…