iftop流量监控
iftop流量监控
找出服务器耗费流量最多的ip和端口
进入界面
iftop界面:
中间的<= =>这两个左右箭头,表示的是流量的方向
=>代表发送数据,<= 代表接收数据
TX:发送流量
RX:接收流量
TOTAL:总流量
Cumm:运行iftop到目前时间的总流量
peak:流量峰值
rates:分别表示过去 2s 10s 40s 的平均流量
iftop常用参数:
-i 指定需要检测的网卡, 如果有多个网络接口,则需要注意网络接口的选择,如:# iftop -i eth1
-B 将输出以byte为单位显示网卡流量,默认是bit
-n 将输出的主机信息都通过IP显示,不进行DNS解析
-N 只显示连接端口号,不显示端口对应的服务名称
-F 显示特定网段的网卡进出流量 如iftop -F 192.168.85.0/24
-h 帮助,显示参数信息
-p 以混杂模式运行iftop,此时iftop可以用作网络嗅探器 ;
-P 显示主机以及端口信息
-m 设置输出界面中最上面的流量刻度最大值,流量刻度分5个大段显示 如:# iftop -m 100M
-f 使用筛选码选择数据包来计数 如iftop -f filter code
-b 不显示流量图形条
-c 指定可选的配置文件 如iftop -c config file
-t 使用不带ncurses的文本界面,
以下两个是只和-t一起用的:
-s num num秒后打印一次文本输出然后退出,-t -s 60组合使用,表示取60秒网络流量输出到终端
-L num 打印的行数
-f 参数支持tcpdump的语法,可以使用各种过滤条件。
进入iftop画面后的一些操作命令(区分大小写)
按h切换是否显示帮助;
按n切换显示本机的IP或主机名;
按s切换是否显示本机的host信息;
按d切换是否显示远端目标主机的host信息;
按t切换显示格式为2行/1行/只显示发送流量/只显示接收流量;
按N切换显示端口号或端口服务名称;
按S切换是否显示本机的端口信息;
按D切换是否显示远端目标主机的端口信息;
按p切换是否显示端口信息;
按P切换暂停/继续显示;
按b切换是否显示平均流量图形条;
按B切换计算2秒或10秒或40秒内的平均流量;
按T切换是否显示每个连接的总流量;
按l打开屏幕过滤功能,输入要过滤的字符,比如ip,按回车后,屏幕就只显示这个IP相关的流量信息;
按L切换显示画面上边的刻度;刻度不同,流量图形条会有变化;
按j或按k可以向上或向下滚动屏幕显示的连接记录;
按1或2或3 可以根据右侧显示的三列流量数据进行排序;
按< 根据左边的本机名或IP排序;
按>根据远端目标主机的主机名或IP排序;
按o切换是否固定只显示当前的连接;
按f可以编辑过滤代码
按!可以使用shell命令
按q退出监控。
使用方式:
1.显示网卡eth0的信息,主机通过ip显示
iftop -i eth0 -n
2.显示端口号(添加-P参数,进入界面可通过p参数关闭)
iftop -i eth0 -n -P
3.显示将输出以byte为单位显示网卡流量,默认是bit
iftop -i eth0 -n -B
4.显示流量进度条
iftop -i eth0 -n(进入界面后按下L)
5.显示每个连接的总流量
iftop -i eth0 -n(进入界面后按下T)
6.显示指定ip 172.17.23.15的流量
iftop -i eth0 -n(进入界面后按下l,输入172.17.23.15回车)
7.显示某个网段进出封包流量
iftop -F 172.17.23.0/24
实操
流量排查的时候总会用到这个工具,查到哪个ip用的流量最多,这个ip的哪个端口.
1.首先进入页面
iftop -i eth0 -n -P
按下L后显示流量刻度,如上图.
2.接下来按下T显示合计流量,看起来很直观.
3.按3,根据最近40s统计排序
4.按t,发送和接收合并成一行
5.然后我们要找出流量用得最多的ip,我们就多按几次B,会出现最近2s,10s,40s的统计.
发现是180.167.225.125
6.然后进行筛选指定的ip :180.167.225.125
按l.输入ip,如下:
7.找这个ip哪个端口流量用得最多
很明显是ssh