Linux流量監控工具(iftop)
在類Unix系統中可以使用top查看系統資源、進程、內存占用等信息。查看網絡狀態可以使用netstat、nmap等工具。若要查看實時的網絡流量,監控TCP/IP連接等,則可以使用iftop。
一、iftop是什麽?
iftop是類似於top的實時流量監控工具。
官方網站:http://www.ex-parrot.com/~pdw/iftop/
二、iftop有什麽用?
iftop可以用來監控網卡的實時流量(可以指定網段)、反向解析IP、顯示端口信息等,詳細的將會在後面的使用參數中說明。
三、安裝iftop
安裝方法1、編譯安裝
如果采用編譯安裝可以到iftop官網下載最新的源碼包。
安裝前需要已經安裝好基本的編譯所需的環境,比如make、gcc、autoconf等。安裝iftop還需要安裝libpcap和libcurses。
CentOS上安裝所需依賴包:
yum install flex byacc libpcap ncurses ncurses-devel libpcap-devel
Debian上安裝所需依賴包:
apt-get install flex byacc libpcap0.8 libncurses5
下載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 make && make instal
安裝方法2:(懶人辦法,最簡單)
直接省略上面的步驟
按https://www.vpser.net/manage/centos-rhel-linux-third-party-source-epel.html 這個教程安裝好EPEL,直接yum install iftop
Debian系統 運行:apt-get install iftop
四、運行iftop
直接運行: iftop
效果如下圖:
五、相關參數及說明
1、iftop界面相關說明
界面上面顯示的是類似刻度尺的刻度範圍,為顯示流量圖形的長條作標尺用的。
中間的<= =>這兩個左右箭頭,表示的是流量的方向。
TX:發送流量
RX:接收流量
TOTAL:總流量
Cumm:運行iftop到目前時間的總流量
peak:流量峰值
rates:分別表示過去 2s 10s 40s 的平均流量
2、iftop相關參數
常用的參數
-i 設定監測的網卡,如:# iftop -i eth1 -B 以bytes為單位顯示流量(默認是bits),如:# iftop -B -n 使host信息默認直接都顯示IP,如:# iftop -n -N 使端口信息默認直接都顯示端口號,如: # iftop -N -F 顯示特定網段的進出流量,如# iftop -F 10.10.1.0/24或# iftop -F 10.10.1.0/255.255.255.0 -h (display this message),幫助,顯示參數信息 -p 使用這個參數後,中間的列表顯示的本地主機信息,出現了本機以外的IP信息; -b 使流量圖形條默認就顯示; -f 這個暫時還不太會用,過濾計算包用的; -P 使host信息及端口信息默認就都顯示; -m 設置界面最上邊的刻度的最大值,刻度分五個大段顯示,例:# iftop -m 100M
進入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可以向上或向下滾動屏幕顯示的連接記錄; 按< 根據左邊的本機名或IP排序; 按> 根據遠端目標主機的主機名或IP排序; 按o 切換是否固定只顯示當前的連接; 按f 可以編輯過濾代碼,這是翻譯過來的說法,我還沒用過這個! 按!可以使用shell命令,這個沒用過!沒搞明白啥命令在這好用呢!
按1或2或3可以根據右側顯示的三列流量數據進行排序;
按q 退出監控。
六、常見問題
1、make: yacc: Command not found
make: *** [grammar.c] Error 127
解決方法:apt-get install byacc / yum install byacc
2、configure: error: Curses! Foiled again!
(Can‘t find a curses library supporting mvchgat.)
Consider installing ncurses.
解決方法:apt-get install libncurses5-dev / yum install ncurses-devel
Linux流量監控工具(iftop)