Iftop能做什么?
Iftop是一款免费的网卡实时流量监控工具,iftop可以监控指定网卡的实时流量,端口连接信息,反向解析IP等,还可以精确显示本机网络流量情况及网络内各主机与本机相互通信的流量集合,非常适合于监控代理服务器或路由器的网络流量。同时,iftop对检测流量异常的主机非常有效,通过iftop的输出可以迅速定位主机流量异常的根源,这对于网络故障排查,网络安全检测是十分有用的。
Iftop的安装
1.安装依赖包
#mkdir /usr/local/src/iftop
#cd /usr/local/src/iftop
#yum install gcc flex byacc libpcap ncurses ncurses-devel libpcap-devel
2.下载iftop源码包和编译安装
#wget http://www.ex-parrot.com/~pdw/iftop/download/iftop-0.17.tar.gz
#tar -zxvf iftop-0.17.tar.gz
#cd iftop-0.17
#./configure --prefix /usr/local/iftop/
#make
#make install
#ln -s /usr/local/iftop/sbin/iftop /usr/local/bin/
使用iftop监控网卡实时流量
安装完iftop工具后,直接输入iftop命令即可显示网卡实时流量信息。在默认情况下,iftop显示系统第一块网卡的流量信息,如果要显示指定网卡信息,可通过”-i”参数实现。
执行”iftop -P -i ens37(网卡号)”命令,得到如图所示的iftop的一个典型输出界面:
Iftop的输出从整体上可以分为三大部分。
#第一部分是iftop输出中最上面的一行,此行信息是流量刻度,用于显示网卡带宽流量。
#第二部分是iftop输出中最大的一个部分,此部分又分为左,中,右三列,左列和中列记录了那些IP或主机正在和本机的网络进行连接。其中,中列的“=>”代表发送数据,“<=”代表接收数据,通过这个指示箭头可以很清晰地知道两个IP之间连接到本机2S,10S和40S内的平均流量值。另外,这个部分还有一个流量图形条,流量图形条是对流量大小的动态展示,以第一部分中的流量刻度为基准。通过这个流量图形条可以很方便地看出那个IP的流量最大,进而迅速定位网络中可能出现的流量问题。
#第三部分位于iftop输出的最下面,可以分为三行,其中,“TX”表示发送数据,“RX”表示接收数据,“TOTAL”表示发送和接收的全部流量。与这三行对应的有三列,其中,“cum”列表示从运行iftop到目前的发送,接收和总数据流量;“peak”列表示发送,接收已经总的流量峰值;“rates”列表示过去2S,10S,40S内的平均流量值。
(2)iftop使用参数说明 Iftop还有很多附加参数和功能。执行”iftop -h”命令即可显示iftop可使用的所有参数信息。
(3)iftop的交互操作
在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退出监控。
Iftop强大之处在于它能够实时显示网络的流量状态,监控网卡流量的来源IP和目标地址,这对于检测服务器网络故障,流量异常是非常有用的,只需通过一个命令就能把流量异常或网络故障的原因迅速定位。