Linux中查看網卡流量工具備iptraf、iftop以及nethogs等,iftop能夠用來監控網卡的實時流量(能夠指定網段)、反向解析IP、顯示端口信息等。shell
安裝iftop的命令以下:服務器
CentOS系統爲「yum install iftop -y」工具
CentOS上安裝所需依賴包:flex
yum install flex byacc libpcap ncurses ncurses-devel libpcap-develthis
或者下載源碼安裝 wget http://www.ex-parrot.com/~pdw/iftop/download/iftop-0.17.tar.gzspa
tar zxvf iftop-0.17.tar.gz翻譯
cd iftop-0.17blog
./configure排序
make && make installip
Debian/Ubuntu系統爲「apt-get install iftop」
經常使用參數說明:
-i設定監測的網卡,如:# iftop -i eth1,其中eth1是服務器的公網網卡,(網卡名稱能夠經過ifconfig查看),結果以下圖1、二:
-B 以Byte爲單位顯示流量(默認是bits),如:# iftop -B -F顯示特定網段的進出流量,如# iftop -F 182.92.***.0/24或# iftop -F 182.92.***.0/255.255.255.0 如:iftop -i eth1 -B -F 182.92.***.20
顯示182.92.***.20這個IP與服務器的網卡eth1交互的數據量,單位是Byte。
界面說明:
"<="與"=>",表示的是流量的方向
"TX":從網卡發出的流量 "RX":網卡接收流量 "TOTAL":網卡發送接收總流量 "cum":iftop開始運行到當前時間點的總流量 "peak":網卡流量峯值 "rates":分別表示最近2s、10s、40s 的平均流量
能夠經過鍵盤的"q"鍵退出iftop
案例說明:
在ECS控制檯的資源監控詳情查看服務器帶寬利用率異常時,能夠對上述結果中一直與服務器存在數據交互的IP進行排查
假如在ECS中查看到帶寬跑滿,經過iftop查看到上述的182.92.***.20這個IP佔用的流量較高,若是是異常的IP,能夠經過iptables將其屏蔽:iptables -A INPUT -s 182.92.***.20 -j DROP
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
按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退出監控。