1, Linux中查看網卡流量工具有iptraf、iftop以及nethogs等,iftop可以用來監控網卡的實時流量(可以指定網段)、反向解析IP、顯示端口信息等。
centos安裝iftop的命令如下:
yum install iftop -y
常用參數說明: -i設定監測的網卡,如:
iftop -i eth1
為了更好的監控某個特定IP的帶寬訪問情況,可以執行命令:
iftop -i eth1 -B -F 182.92.***.20
顯示182.92.***.20這個IP與服務器的網卡eth1交互的數據量,單位是Byte。
界面說明:
"<="與"=>",表示的是流量的方向
"TX":從網卡發出的流量
"RX":網卡接收流量
"TOTAL":網卡發送接收總流量
"cum":iftop開始運行到當前時間點的總流量
"peak":網卡流量峰值
"rates":分別表示最近2s、10s、40s 的平均流量
2, iftop、vnstat,這幾個都是統計和監控網卡流量的。但是當我們的服務器或 VPS的帶寬被大量占用或占滿,
卻沒找不到稱心的工具或程序來查看到底是哪個程序或進程占有率多少帶寬 , 今天我們介紹的就是Linux的一款查看進程帶寬網絡占用的軟件:NetHogs。
CentOS/RHEL下建議先安裝epel, 安裝epel方法: 目前可以直接通過執行命令: yum install epel-release 直接進行安裝
再執行:yum install libpcap nethogs 進行安裝。
具體使用參數說明: (這個最有用)
[root@vpser ~]# nethogs -h
usage: nethogs [-V] [-b] [-d seconds] [-t] [-p] [device [device [device ...]]] //nethogs可以使用的參數
-V : prints version.//打印版本信息
-d : delay for update refresh rate in seconds. default is 1. //延遲刷新時間,單位秒,默認1秒
-t : tracemode. //跟蹤模式
-b : bughunt mode - implies tracemode. //bughunt模式
-p : sniff in promiscious mode (not recommended). //混合模式下嗅探,不推薦
device : device(s) to monitor. default is eth0 //監聽的設備,默認是eth0,也就是網卡設備名稱,如果是openvz的vps一般都是venet0,具體可以ifconfig進行查看,lo為本地回環,用不到。多個網卡可以一塊寫上,空格隔開。
When nethogs is running, press: //nethogs運行是可以使用以下按鍵進行操作
q: quit //運行時,按 q 鍵退出
m: switch between total and kb/s mode //按 m 鍵,切換單位或顯示進程占用速度或已統計使用的流量。切換順序是KB/sec->KB->B->MB
r : Sort by received. //按received進行排序
s : Sort by sent. //按send進行排序
執行命令如下: nethogs
DEV列顯示設備名,SEND是服務器發送的流量,RECEIVED服務器接收的流量。
// 按 m 可以切換統計方式 : 流量速度KB/sec 或 總數{KB /B /m}
3, 還有一款監控網絡的工具 (監控總體帶寬使用(批量式輸出))
安裝: $ sudo yum install collectl
命令: $ collectl -sn -oT -i0.5
4, 監控總體帶寬使用 , 讓用戶可以分開來監控入站流量和出站流量。
它還可以繪制圖表以顯示入站流量和出站流量,視圖比例可以調整。用起來很簡單
安裝: yum install nload -y
使用: nload