簡介
Linux 中查看網卡流量工具有 iptraf
、iftop
以及 nethogs
等,iftop 可以用來監控網卡的實時流量(可以指定網段)、反向解析IP、顯示端口信息等。
安裝
CentOS yum 方式
# 安裝依賴
yum install flex byacc libpcap ncurses ncurses-devel libpcap-develyum install iftop -y
Debian/Ubuntu 系統
apt-get install 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 install
語法
iftop -h | [-npblNBP] [-i interface] [-f filter code] [-F net/mask] [-G net6/mask6]參數-i 設定監測的網卡,如:iftop -i eth1,其中eth1是服務器的公網網卡,(網卡名稱可以通過ifconfig查看)-F 顯示特定網段的進出流量,如 `iftop -F 10.10.1.0/24` 或 `iftop -F 10.10.1.0/255.255.255.0`-B 以Byte為單位顯示流量(默認是bits), 如:`iftop -i eth1 -B -F 182.92.*.20` 顯示 182.92.*.20這個IP與服務器的網卡eth1交互的數據量,單位是Byte。-n 使host信息默認直接都顯示IP,如:iftop -n-N 使端口信息默認直接都顯示端口號,如: iftop -N-h(display this message),幫助,顯示參數信息-p 使用這個參數后,中間的列表顯示的本地主機信息,出現了本機以外的IP信息;-b 使流量圖形條默認就顯示;-f 這個暫時還不太會用,過濾計算包用的;-P 使host信息及端口信息默認就都顯示;-m 設置界面最上邊的刻度的最大值,刻度分五個大段顯示,例:iftop -m 100M
示例
[fenglepeng@centos]# iftop1.91Mb 3.81Mb 5.72Mb 7.63Mb 9.54Mb
mqqqqqqqqqqqqqqqqvqqqqqqqqqqqqqqqqvqqqqqqqqqqqqqqqqvqqqqqqqqqqqqqqqqvqqqqqqqqqqqqqqqqq
bogon => 10.117.49.124 103Kb 43.1Kb 43.5Kb<= 331Kb 150Kb 180Kb
bogon => bogon 42.9Kb 8.58Kb 2.18Kb<= 1.84Kb 376b 131b
bogon => localhost 42.7Kb 8.55Kb 2.17Kb<= 1.66Kb 339b 122b
bogon => BJ-DZ0101360.baidu.com 1.86Kb 2.88Kb 3.47Kb<= 184b 394b 599b
bogon => 10.117.49.125 2.68Kb 1.15Kb 1.20Kb<= 1.01Kb 1.99Kb 2.54Kb
bogon => 10.117.49.123 2.68Kb 1.15Kb 1.20Kb<= 1.01Kb 1.99Kb 2.54Kb
bogon => 10.117.49.128 2.68Kb 1.15Kb 1.20Kb<= 1.01Kb 1.99Kb 2.54Kb
bogon => 10.117.49.126 2.68Kb 1.15Kb 1.20Kb<= 1.01Kb 1.99Kb 2.54Kb
bogon => 10.117.49.127 2.68Kb 1.15Kb 1.20Kb<= 1.01Kb 1.99Kb 2.54Kb
bogon => bogon 0b 0b 0b<= 908b 1.13Kb 970b
bogon => 10.117.49.12 0b 0b 0b<= 972b 972b 930b
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
TX: cum: 771KB peak: 204Kb rates: 204Kb 69.3Kb 57.7Kb
RX: 2.63MB 1.01Mb 350Kb 172Kb 205Kb
TOTAL: 3.39MB 1.18Mb 554Kb 241Kb 263Kb
界面說明
<=
與=>
,表示的是流量的方向。TX
:從網卡發出的流量 。RX
:網卡接收流量。TOTAL
:網卡發送接收總流量。cum
:iftop開始運行到當前時間點的總流量。peak
:網卡流量峰值。rates
:分別表示最近2s、10s、40s 的平均流量。
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退出監控。