1. 程式人生 > >Linux網路流量實時監控ifstat iftop命令詳解

Linux網路流量實時監控ifstat iftop命令詳解

ifstat

介紹

ifstat工具是個網路介面監測工具,比較簡單看網路流量

例項

預設使用

#ifstat
       eth0                eth1       
 KB/s in  KB/s out   KB/s in  KB/s out
    0.07      0.20      0.00      0.00
    0.07      0.15      0.58      0.00

預設ifstat不監控迴環介面,顯示的流量單位是KB。

監控所有網路介面

# ifstat -a
        lo                 eth0                eth1       
 KB
/s in KB/s out KB/s in KB/s out KB/s in KB/s out 0.00 0.00 0.28 0.58 0.06 0.06 0.00 0.00 1.41 1.13 0.00 0.00 0.61 0.61 0.26 0.23 0.00 0.00

ifstat比較簡單看網路流量概況。

iftop

介紹

iftop是一款實時流量監控工具,監控TCP/IP連線等,缺點就是無報表功能。必須以root身份才能執行。

例項

預設是監控第一塊網絡卡的流量

iftop

監控eth1

iftop -i eth1

直接顯示IP, 不進行DNS反解析

iftop -n

直接顯示連線埠編號, 不顯示服務名稱:

iftop -N

顯示某個網段進出封包流量

iftop -F 192.168.1.0/24 or 192.168.1.0/255.255.255.0

基於例項講解輸出含義

執行iftop -N -n -i eth1後介面為

複製程式碼
                 19.1Mb            38.1Mb              57.2Mb               76.3Mb             95.4Mb
+-----------------+-----------------+--------------------+--------------------+--------------------- 192.168.1.11 => 192.168.1.66 5.3Mb 3.22Mb 3.20Mb <= 219kb 45.7kb 49.3kb 192.168.1.11 => 192.168.1.29 144kb 30.8kb 29.6kb <= 11.3Mb 2.38Mb 2.74Mb 192.168.1.11 => 12.2.11.71 0b 6.40kb 6.66kb <= 0b 0b 0b 192.168.1.11 => 192.168.1.8 2.63kb 1.43kb 932b <= 1.31kb 1.05kb 893b 192.168.1.11 => 192.168.2.78 2.53kb 1.54kb 2.15kb <= 160b 160b 187b 192.168.1.11 => 111.126.195.69 0b 166b 69b <= 0b 0b 0b ------------------------------------------------------------------------------------------------------ TX: cum: 9.70MB peak: 15.6Mb rates: 15.4Mb 3.26Mb 3.23Mb RX: 8.38MB 14.9Mb 11.5Mb 2.42Mb 2.79Mb TOTAL: 18.1MB 30.5Mb 27.0Mb 5.69Mb 6.03Mb
複製程式碼

iftop介面含義如下

複製程式碼
第一行:頻寬顯示

中間部分:外部連線列表,即記錄了哪些ip正在和本機的網路連線

中間部分右邊:實時引數分別是該訪問ip連線到本機2秒,10秒和40秒的平均流量

=>代表傳送資料,<= 代表接收資料

底部三行:表示傳送,接收和全部的流量

底部三行第二列:為你執行iftop到目前流量

底部三行第三列:為高峰值

底部三行第四列:為平均值
複製程式碼

通過iftop的介面很容易找到哪個ip在霸佔網路流量,這個是ifstat做不到的。不過iftop的流量顯示單位是Mb,這個b是bit,是位,不是位元組,而ifstat的KB,這個B就是位元組了,byte是bit的8倍。初學者容易被誤導。

進入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退出監控。
複製程式碼