Linux服務(wù)器上監(jiān)控網(wǎng)絡(luò)帶寬的18個常用命令

????????本文介紹了一些可以用來監(jiān)控網(wǎng)絡(luò)使用情況的Linux命令行工具便脊。這些工具可以監(jiān)控通過網(wǎng)絡(luò)接口傳輸?shù)臄?shù)據(jù)磷箕,并測量目前哪些數(shù)據(jù)所傳輸?shù)乃俣瘸⒔H胝玖髁亢统稣玖髁糠珠_來顯示吠昭。
????????一些命令可以顯示單個進(jìn)程所使用的帶寬傲隶。這樣一來饺律,用戶很容易發(fā)現(xiàn)過度使用網(wǎng)絡(luò)帶寬的某個進(jìn)程。
????????這些工具使用不同的機(jī)制來制作流量報(bào)告跺株。nload等一些工具可以讀取"proc/net/dev"文件复濒,以獲得流量統(tǒng)計(jì)信息;而一些工具使用pcap庫來捕獲所有數(shù)據(jù)包乒省,然后計(jì)算總數(shù)據(jù)量巧颈,從而估計(jì)流量負(fù)載。

下面是按功能劃分的命令名稱作儿。

監(jiān)控總體帶寬使用――nload洛二、bmon、slurm攻锰、bwm-ng晾嘶、cbm、speedometer和netload

監(jiān)控總體帶寬使用(批量式輸出)――vnstat娶吞、ifstat垒迂、dstat和collectl

每個套接字連接的帶寬使用――iftop、iptraf妒蛇、tcptrack机断、pktstat、netwatch和trafshow

每個進(jìn)程的帶寬使用――nethogs

1. nload

nload是一個命令行工具绣夺,讓用戶可以分開來監(jiān)控入站流量和出站流量吏奸。它還可以繪制圖表以顯示入站流量和出站流量,視圖比例可以調(diào)整陶耍。用起來很簡單奋蔚,不支持許多選項(xiàng)。

所以烈钞,如果你只需要快速查看總帶寬使用情況泊碑,無需每個進(jìn)程的詳細(xì)情況,那么nload用起來很方便毯欣。

$?nload?

安裝nload:Fedora和Ubuntu在默認(rèn)軟件庫里面就有nload馒过。CentOS用戶則需要從Epel軟件庫獲得nload。

#?fedora或centos?

$?yum?install?nload?-y?

#?ubuntu/debian?

$?sudo?apt-get?install?nload?

2. iftop

iftop可測量通過每一個套接字連接傳輸?shù)臄?shù)據(jù)酗钞;它采用的工作方式有別于nload腹忽。iftop使用pcap庫來捕獲進(jìn)出網(wǎng)絡(luò)適配器的數(shù)據(jù)包来累,然后匯總數(shù)據(jù)包大小和數(shù)量,搞清楚總的帶寬使用情況留凭。

雖然iftop報(bào)告每個連接所使用的帶寬佃扼,但它無法報(bào)告參與某個套按字連接的進(jìn)程名稱/編號(ID)。不過由于基于pcap庫蔼夜,iftop能夠過濾流量兼耀,并報(bào)告由過濾器指定的所選定主機(jī)連接的帶寬使用情況。

$?sudo?iftop?-n?

n選項(xiàng)可以防止iftop將IP地址解析成主機(jī)名求冷,解析本身就會帶來額外的網(wǎng)絡(luò)流量瘤运。


安裝iftop:Ubuntu/Debian/Fedora用戶可以從默認(rèn)軟件庫獲得它。CentOS用戶可以從Epel獲得它匠题。

#?fedora或centos?

yum?install?iftop?-y?

#?ubuntu或?debian?

$?sudo?apt-get?install?iftop?

3. iptraf

iptraf是一款交互式拯坟、色彩鮮艷的IP局域網(wǎng)監(jiān)控工具。它可以顯示每個連接以及主機(jī)之間傳輸?shù)臄?shù)據(jù)量韭山。下面是屏幕截圖郁季。

$?sudo?iptraf?

安裝iptraf:

#?Centos(基本軟件庫)?

$?yum?install?iptraf?

#?fedora或centos(帶epel)?

$?yum?install?iptraf-ng?-y?

#?ubuntu或debian?

$?sudo?apt-get?install?iptraf?iptraf-ng?

4. nethogs

nethogs是一款小巧的"net top"工具,可以顯示每個進(jìn)程所使用的帶寬钱磅,并對列表排序梦裂,將耗用帶寬最多的進(jìn)程排在最上面。萬一出現(xiàn)帶寬使用突然激增的情況盖淡,用戶迅速打開nethogs年柠,就可以找到導(dǎo)致帶寬使用激增的進(jìn)程。nethogs可以報(bào)告程序的進(jìn)程編號(PID)褪迟、用戶和路徑冗恨。

$?sudo?nethogs?

安裝nethogs:Ubuntu、Debian和Fedora用戶可以從默認(rèn)軟件庫獲得味赃。CentOS用戶則需要Epel掀抹。

#?ubuntu或debian(默認(rèn)軟件庫)?

$?sudo?apt-get?install?nethogs?

#?fedora或centos(來自epel)?

$?sudo?yum?install?nethogs?-y?

5. bmon

bmon(帶寬監(jiān)控器)是一款類似nload的工具,它可以顯示系統(tǒng)上所有網(wǎng)絡(luò)接口的流量負(fù)載心俗。輸出結(jié)果還含有圖表和剖面渴丸,附有數(shù)據(jù)包層面的詳細(xì)信息。

安裝bmon:Ubuntu另凌、Debian和Fedora用戶可以從默認(rèn)軟件庫來安裝。CentOS用戶則需要安裝repoforge戒幔,因?yàn)镋pel里面沒有bmon吠谢。

#?ubuntu或debian?

$?sudo?apt-get?install?bmon?

#?fedora或centos(來自repoforge)?

$?sudo?yum?install?bmon?

bmon支持許多選項(xiàng),能夠制作HTML格式的報(bào)告诗茎。欲知更多信息工坊,請參閱參考手冊頁献汗。

6. slurm

slurm是另一款網(wǎng)絡(luò)負(fù)載監(jiān)控器,可以顯示設(shè)備的統(tǒng)計(jì)信息王污,還能顯示ASCII圖形罢吃。它支持三種不同類型的圖形,使用c鍵昭齐、s鍵和l鍵即可激活每種圖形尿招。slurm功能簡單,無法顯示關(guān)于網(wǎng)絡(luò)負(fù)載的任何更進(jìn)一步的詳細(xì)信息阱驾。

$?slurm?-s?-i?eth0?

安裝slurm

#?debian或ubuntu?

$?sudo?apt-get?install?slurm?

#?fedora或centos?

$?sudo?yum?install?slurm?-y?

7. tcptrack

tcptrack類似iftop就谜,使用pcap庫來捕獲數(shù)據(jù)包,并計(jì)算各種統(tǒng)計(jì)信息里覆,比如每個連接所使用的帶寬丧荐。它還支持標(biāo)準(zhǔn)的pcap過濾器,這些過濾器可用來監(jiān)控特定的連接喧枷。

安裝tcptrack:Ubuntu虹统、Debian和Fedora在默認(rèn)軟件庫里面就有它。CentOS用戶則需要從RepoForge獲得它隧甚,因?yàn)镋pel里面沒有它车荔。

#?ubuntu,?debian?

$?sudo?apt-get?install?tcptrack?

#?fedora,?centos(來自repoforge軟件庫)?

$?sudo?yum?install?tcptrack?

8. vnstat

vnstat與另外大多數(shù)工具有點(diǎn)不一樣。它實(shí)際上運(yùn)行后臺服務(wù)/守護(hù)進(jìn)程呻逆,始終不停地記錄所傳輸數(shù)據(jù)的大小夸赫。之外,它可以用來制作顯示網(wǎng)絡(luò)使用歷史情況的報(bào)告咖城。

$?service?vnstat?status?

*?vnStat?daemon?is?running?

運(yùn)行沒有任何選項(xiàng)的vnstat茬腿,只會顯示自守護(hù)進(jìn)程運(yùn)行以來所傳輸?shù)臄?shù)據(jù)總量。

$?vnstat?

Database?updated:?Mon?Mar?17?15:26:59?2014?

eth0?since?06/12/13?

rx:??135.14?GiB??????tx:??35.76?GiB??????total:??170.90?GiB?

monthly?

rx??????|?????tx??????|????total????|???avg.?rate?


------------------------+-------------+-------------+-------------?

Feb?'14??????8.19?GiB??|????2.08?GiB??|???10.27?GiB?|???35.60?kbit/s?

Mar?'14??????4.98?GiB??|????1.52?GiB??|????6.50?GiB?|???37.93?kbit/s?

------------------------+-------------+-------------+-------------?

estimated???????9.28?GiB?|????2.83?GiB??|???12.11?GiB?|?

daily?

rx??????|?????tx??????|????total????|???avg.?rate?

------------------------+-------------+-------------+-------------?

yesterday?????236.11?MiB?|???98.61?MiB?|??334.72?MiB?|???31.74?kbit/s?

today????128.55?MiB?|???41.00?MiB?|??169.56?MiB?|???24.97?kbit/s?

------------------------+-------------+-------------+-------------?

estimated???????199?MiB?|??????63?MiB?|?????262?MiB?|?

想實(shí)時(shí)監(jiān)控帶寬使用情況宜雀,請使用"-l"選項(xiàng)(實(shí)時(shí)模式)切平。然后,它會顯示入站數(shù)據(jù)和出站數(shù)據(jù)所使用的總帶寬量辐董,但非常精確地顯示悴品,沒有關(guān)于主機(jī)連接或進(jìn)程的任何內(nèi)部詳細(xì)信息。

$?vnstat?-l?-i?eth0?

Monitoring?eth0...????(press?CTRL-C?to?stop)?

rx:???????12?kbit/s????10?p/s??????????tx:???????12?kbit/s????11?p/s?

vnstat更像是一款制作歷史報(bào)告的工具简烘,顯示每天或過去一個月使用了多少帶寬苔严。它并不是嚴(yán)格意義上的實(shí)時(shí)監(jiān)控網(wǎng)絡(luò)的工具。

vnstat支持許多選項(xiàng)孤澎,支持哪些選項(xiàng)方面的詳細(xì)信息請參閱參考手冊頁届氢。

安裝vnstat

#?ubuntu或debian?

$?sudo?apt-get?install?vnstat?

#?fedora或?centos(來自epel)?

$?sudo?yum?install?vnstat?

9. bwm-ng

bwm-ng(下一代帶寬監(jiān)控器)是另一款非常簡單的實(shí)時(shí)網(wǎng)絡(luò)負(fù)載監(jiān)控工具,可以報(bào)告摘要信息覆旭,顯示進(jìn)出系統(tǒng)上所有可用網(wǎng)絡(luò)接口的不同數(shù)據(jù)的傳輸速度退子。

$?bwm-ng?

bwm-ng?v0.6?(probing?every?0.500s),?press?'h'?for?help?

input:?/proc/net/dev?type:?rate?

/?????????iface???????????????????Rx???????????????????Tx????????????????T?

ot=================================================================?

==???????????eth0:???????????0.53?KB/s????????????1.31?KB/s????????????1.84?

KB?????????????lo:???????????0.00?KB/s????????????0.00?KB/s????????????0.00?

KB-------------------------------------------------------------------------------------------------------------?

total:???????????0.53?KB/s????????????1.31?KB/s????????????1.84?

KB/s?

如果控制臺足夠大岖妄,bwm-ng還能使用curses2輸出模式,為流量繪制條形圖寂祥。

$?bwm-ng?-o?curses2?

安裝bwm-ng:在CentOS上荐虐,可以從Epel來安裝bwm-ng。

#?ubuntu或debian?

$?sudo?apt-get?install?bwm-ng?

#?fedora或centos(來自epel)?

$?sudo?apt-get?install?bwm-ng?

10. cbm:Color Bandwidth Meter

這是一款小巧簡單的帶寬監(jiān)控工具丸凭,可以顯示通過諸網(wǎng)絡(luò)接口的流量大小福扬。沒有進(jìn)一步的選項(xiàng)决帖,僅僅實(shí)時(shí)顯示和更新流量的統(tǒng)計(jì)信息呛伴。

$?sudo?apt-get?install?cbm?

11. speedometer

這是另一款小巧而簡單的工具,僅僅繪制外觀漂亮的圖形蜻牢,顯示通過某個接口傳輸?shù)娜胝玖髁亢统稣玖髁俊?/p>

$?speedometer?-r?eth0?-t?eth0?

安裝speedometer

#?ubuntu或debian用戶?

$?sudo?apt-get?install?speedometer?

12. pktstat

pktstat可以實(shí)時(shí)顯示所有活動連接向拆,并顯示哪些數(shù)據(jù)通過這些活動連接傳輸?shù)乃俣妊遣纭K€可以顯示連接類型,比如TCP連接或UDP連接浓恳;如果涉及HTTP連接刹缝,還會顯示關(guān)于HTTP請求的詳細(xì)信息。

$?sudo?pktstat?-i?eth0?-nt?

$?sudo?apt-get?install?pktstat?

13. netwatch

netwatch是netdiag工具庫的一部分颈将,它也可以顯示本地主機(jī)與其他遠(yuǎn)程主機(jī)之間的連接梢夯,并顯示哪些數(shù)據(jù)在每個連接上所傳輸?shù)乃俣取?/p>

$?sudo?netwatch?-e?eth0?-nt?

$?sudo?apt-get?install?netdiag?

14. trafshow

與netwatch和pktstat一樣,trafshow也可以報(bào)告當(dāng)前活動連接晴圾、它們使用的協(xié)議以及每條連接上的數(shù)據(jù)傳輸速度颂砸。它能使用pcap類型過濾器,對連接進(jìn)行過濾死姚。

只監(jiān)控TCP連接

$?sudo?trafshow?-i?eth0?tcp?

$?sudo?apt-get?install?netdiag?

15. netload

netload命令只顯示關(guān)于當(dāng)前流量負(fù)載的一份簡短報(bào)告人乓,并顯示自程序啟動以來所傳輸?shù)目傋止?jié)量。沒有更多的功能特性都毒。它是netdiag的一部分色罚。

$?netload?eth0?

$?sudo?apt-get?install?netdiag?

16. ifstat

ifstat能夠以批處理式模式顯示網(wǎng)絡(luò)帶寬。輸出采用的一種格式便于用戶使用其他程序或?qū)嵱霉ぞ邅碛浫肴罩竞头治觥?/p>

$?ifstat?-t?-i?eth0?0.5?

Time???????????eth0?

HH:MM:SS???KB/s?in??KB/s?out?

09:59:21??? ???2.62??????2.80?

09:59:22??? ???2.10??????1.78?

09:59:22??? ???2.67??????1.84?

09:59:23???? ??2.06??????1.98?

09:59:23???? ??1.73??????1.79?

安裝ifstat:Ubuntu账劲、Debian和Fedora用戶在默認(rèn)軟件庫里面就有它戳护。CentOS用戶則需要從Repoforge獲得它,因?yàn)镋pel里面沒有它瀑焦。

#?ubuntu,?debian?

$?sudo?apt-get?install?ifstat?

#?fedora,?centos(Repoforge)?

$?sudo?yum?install?ifstat?

17. dstat

dstat是一款用途廣泛的工具(用python語言編寫)腌且,它可以監(jiān)控系統(tǒng)的不同統(tǒng)計(jì)信息,并使用批處理模式來報(bào)告榛瓮,或者將相關(guān)數(shù)據(jù)記入到CSV或類似的文件铺董。這個例子顯示了如何使用dstat來報(bào)告網(wǎng)絡(luò)帶寬。

安裝dstat

$?dstat?-nt?

-net/total-?----system----?

recv??send|?????time?

0?????0?|23-03?10:27:13?

1738B?1810B|23-03?10:27:14?

2937B?2610B|23-03?10:27:15?

2319B?2232B|23-03?10:27:16?

2738B?2508B|23-03?10:27:17?

18. collectl

collectl以一種類似dstat的格式報(bào)告系統(tǒng)的統(tǒng)計(jì)信息榆芦;與dstat一樣柄粹,它也收集關(guān)于系統(tǒng)不同資源(如處理器、內(nèi)存和網(wǎng)絡(luò)等)的統(tǒng)計(jì)信息匆绣。這里給出的一個簡單例子顯示了如何使用collectl來報(bào)告網(wǎng)絡(luò)使用/帶寬驻右。

$?collectl?-sn?-oT?-i0.5?

waiting?for?0.5?second?sample...?

#<----------Network---------->?

#Time???????KBIn??PktIn??KBOut??PktOut?

10:32:01??????40?????58?????43??????66?

10:32:01??????27?????58??????3??????32?

10:32:02???????3?????28??????9??????44?

10:32:02???????5?????42?????96??????96?

10:32:03???????5?????48??????3??????28?

安裝collectl

#?Ubuntu/Debian用戶?

$?sudo?apt-get?install?collectl?

#Fedora?

$?sudo?yum?install?collectl?

結(jié)束語

上述幾個使用方便的命令可以迅速檢查Linux服務(wù)器上的網(wǎng)絡(luò)帶寬使用情況。不過崎淳,這些命令需要用戶通過SSH登錄到遠(yuǎn)程服務(wù)器堪夭。另外,基于Web的監(jiān)控工具也可以用來實(shí)現(xiàn)同樣的任務(wù)拣凹。

ntop和darkstat是面向Linux系統(tǒng)的其中兩個基本的基于Web的網(wǎng)絡(luò)監(jiān)控工具森爽。除此之外還有企業(yè)級監(jiān)控工具,比如nagios嚣镜,它們提供了一批功能特性爬迟,不僅僅可以監(jiān)控服務(wù)器,還能監(jiān)控整個基礎(chǔ)設(shè)施菊匿。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末付呕,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子跌捆,更是在濱河造成了極大的恐慌徽职,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,546評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件佩厚,死亡現(xiàn)場離奇詭異姆钉,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)抄瓦,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,224評論 3 395
  • 文/潘曉璐 我一進(jìn)店門潮瓶,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人闺鲸,你說我怎么就攤上這事筋讨。” “怎么了摸恍?”我有些...
    開封第一講書人閱讀 164,911評論 0 354
  • 文/不壞的土叔 我叫張陵悉罕,是天一觀的道長。 經(jīng)常有香客問我立镶,道長壁袄,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,737評論 1 294
  • 正文 為了忘掉前任媚媒,我火速辦了婚禮嗜逻,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘缭召。我一直安慰自己栈顷,他們只是感情好逆日,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,753評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著萄凤,像睡著了一般室抽。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上靡努,一...
    開封第一講書人閱讀 51,598評論 1 305
  • 那天坪圾,我揣著相機(jī)與錄音,去河邊找鬼惑朦。 笑死兽泄,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的漾月。 我是一名探鬼主播病梢,決...
    沈念sama閱讀 40,338評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼栅屏!你這毒婦竟也來了飘千?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,249評論 0 276
  • 序言:老撾萬榮一對情侶失蹤栈雳,失蹤者是張志新(化名)和其女友劉穎护奈,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體哥纫,經(jīng)...
    沈念sama閱讀 45,696評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡霉旗,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,888評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了蛀骇。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片厌秒。...
    茶點(diǎn)故事閱讀 40,013評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖擅憔,靈堂內(nèi)的尸體忽然破棺而出鸵闪,到底是詐尸還是另有隱情,我是刑警寧澤暑诸,帶...
    沈念sama閱讀 35,731評論 5 346
  • 正文 年R本政府宣布蚌讼,位于F島的核電站,受9級特大地震影響个榕,放射性物質(zhì)發(fā)生泄漏篡石。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,348評論 3 330
  • 文/蒙蒙 一西采、第九天 我趴在偏房一處隱蔽的房頂上張望凰萨。 院中可真熱鬧,春花似錦、人聲如沸胖眷。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,929評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽珊搀。三九已至厅须,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間食棕,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,048評論 1 270
  • 我被黑心中介騙來泰國打工错沽, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留簿晓,地道東北人。 一個月前我還...
    沈念sama閱讀 48,203評論 3 370
  • 正文 我出身青樓千埃,卻偏偏與公主長得像憔儿,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子放可,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,960評論 2 355

推薦閱讀更多精彩內(nèi)容