新聞中心
對于系統(tǒng)和網(wǎng)絡(luò)管理員來說每天監(jiān)控和調(diào)試Linux系統(tǒng)的性能問題是一項繁重的工作。監(jiān)控和保持系統(tǒng)啟動并運行是很不容易的一件事,本篇文章重點為大家講解一下Linux下常用的網(wǎng)絡(luò)監(jiān)控命令。

創(chuàng)新互聯(lián)服務(wù)項目包括清原網(wǎng)站建設(shè)、清原網(wǎng)站制作、清原網(wǎng)頁制作以及清原網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,清原網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到清原省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
1. nload
nload是一個命令行工具,讓用戶可以分開來監(jiān)控入站流量和出站流量。它還可以繪制圖表以顯示入站流量和出站流量,視圖比例可以調(diào)整。用起來很簡單,不支持許多選項。
所以,如果你只需要快速查看總帶寬使用情況,無需每個進(jìn)程的詳細(xì)情況,那么nload用起來很方便。結(jié)果是bit/s
-
$ nload
安裝nload:Fedora和Ubuntu在默認(rèn)軟件庫里面就有nload。CentOS用戶則需要從Epel軟件庫獲得nload。
2. iftop
iftop可測量通過每一個套接字連接傳輸?shù)臄?shù)據(jù);它采用的工作方式有別于nload。iftop使用pcap庫來捕獲進(jìn)出網(wǎng)絡(luò)適配器的數(shù)據(jù)包,然后匯總數(shù)據(jù)包大小和數(shù)量,搞清楚總的帶寬使用情況。
雖然iftop報告每個連接所使用的帶寬,但它無法報告參與某個套按字連接的進(jìn)程名稱/編號(ID)。不過由于基于pcap庫,iftop能夠過濾流量,并報告由過濾器指定的所選定主機(jī)連接的帶寬使用情況。
-
$ sudo iftop -n
n選項可以防止iftop將IP地址解析成主機(jī)名,解析本身就會帶來額外的網(wǎng)絡(luò)流量。
安裝iftop:Ubuntu/Debian/Fedora用戶可以從默認(rèn)軟件庫獲得它。CentOS用戶可以從Epel獲得它。
3. iptraf
iptraf是一款交互式、色彩鮮艷的IP局域網(wǎng)監(jiān)控工具。它可以顯示每個連接以及主機(jī)之間傳輸?shù)臄?shù)據(jù)量。下面是屏幕截圖。
-
$ sudo iptraf
4. nethogs
nethogs是一款小巧的”net top”工具,可以顯示每個進(jìn)程所使用的帶寬,并對列表排序,將耗用帶寬最多的進(jìn)程排在最上面。萬一出現(xiàn)帶寬使用突然激增的情況,用戶迅速打開nethogs,就可以找到導(dǎo)致帶寬使用激增的進(jìn)程。nethogs可以報告程序的進(jìn)程編號(PID)、用戶和路徑。
-
$ sudo nethogs
安裝nethogs:Ubuntu、Debian和Fedora用戶可以從默認(rèn)軟件庫獲得。CentOS用戶則需要Epel。
5. bmon
bmon(帶寬監(jiān)控器)是一款類似nload的工具,它可以顯示系統(tǒng)上所有網(wǎng)絡(luò)接口的流量負(fù)載。輸出結(jié)果還含有圖表和剖面,附有數(shù)據(jù)包層面的詳細(xì)信息。
安裝bmon:Ubuntu、Debian和Fedora用戶可以從默認(rèn)軟件庫來安裝。CentOS用戶則需要安裝repoforge,因為Epel里面沒有bmon。
bmon支持許多選項,能夠制作HTML格式的報告。欲知更多信息,請參閱參考手冊頁。
6. slurm
slurm是另一款網(wǎng)絡(luò)負(fù)載監(jiān)控器,可以顯示設(shè)備的統(tǒng)計信息,還能顯示ASCII圖形。它支持三種不同類型的圖形,使用c鍵、s鍵和l鍵即可激活每種圖形。slurm功能簡單,無法顯示關(guān)于網(wǎng)絡(luò)負(fù)載的任何更進(jìn)一步的詳細(xì)信息。
-
$ slurm -s -i eth0
7. tcptrack
tcptrack類似iftop,使用pcap庫來捕獲數(shù)據(jù)包,并計算各種統(tǒng)計信息,比如每個連接所使用的帶寬。它還支持標(biāo)準(zhǔn)的pcap過濾器,這些過濾器可用來監(jiān)控特定的連接。
安裝tcptrack:Ubuntu、Debian和Fedora在默認(rèn)軟件庫里面就有它。CentOS用戶則需要從RepoForge獲得它,因為Epel里面沒有它。
8. vnstat
vnstat與另外大多數(shù)工具有點不一樣。它實際上運行后臺服務(wù)/守護(hù)進(jìn)程,始終不停地記錄所傳輸數(shù)據(jù)的大小。之外,它可以用來制作顯示網(wǎng)絡(luò)使用歷史情況的報告。
-
$ service vnstat status
-
* vnStat daemon is running
運行沒有任何選項的vnstat,只會顯示自守護(hù)進(jì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 |
想實時監(jiān)控帶寬使用情況,請使用”-l”選項(實時模式)。然后,它會顯示入站數(shù)據(jù)和出站數(shù)據(jù)所使用的總帶寬量,但非常精確地顯示,沒有關(guān)于主機(jī)連接或進(jìn)程的任何內(nèi)部詳細(xì)信息。
-
$ vnstat -l -i eno1
-
Monitoring eth0… (press CTRL-C to stop)
-
rx: 12 kbit/s 10 p/s tx: 12 kbit/s 11 p/s
vnstat更像是一款制作歷史報告的工具,顯示每天或過去一個月使用了多少帶寬。它并不是嚴(yán)格意義上的實時監(jiān)控網(wǎng)絡(luò)的工具。
vnstat支持許多選項,支持哪些選項方面的詳細(xì)信息請參閱參考手冊頁。
9. bwm-ng
bwm-ng(下一代帶寬監(jiān)控器)是另一款非常簡單的實時網(wǎng)絡(luò)負(fù)載監(jiān)控工具,可以報告摘要信息,顯示進(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
10. cbm:Color Bandwidth Meter
這是一款小巧簡單的帶寬監(jiān)控工具,可以顯示通過諸網(wǎng)絡(luò)接口的流量大小。沒有進(jìn)一步的選項,僅僅實時顯示和更新流量的統(tǒng)計信息。
11. speedometer
這是另一款小巧而簡單的工具,僅僅繪制外觀漂亮的圖形,顯示通過某個接口傳輸?shù)娜胝玖髁亢统稣玖髁俊?/p>
-
$ speedometer -r eth0 -t eth0
12. pktstat
pktstat可以實時顯示所有活動連接,并顯示哪些數(shù)據(jù)通過這些活動連接傳輸?shù)乃俣取K€可以顯示連接類型,比如TCP連接或UDP連接;如果涉及HTTP連接,還會顯示關(guān)于HTTP請求的詳細(xì)信息。
-
$ sudo pktstat -i eth0 -nt
13. netwatch
netwatch是netdiag工具庫的一部分,它也可以顯示本地主機(jī)與其他遠(yuǎn)程主機(jī)之間的連接,并顯示哪些數(shù)據(jù)在每個連接上所傳輸?shù)乃俣取?/p>
-
$ sudo netwatch -e eth0 -nt
14. trafshow
與netwatch和pktstat一樣,trafshow也可以報告當(dāng)前活動連接、它們使用的協(xié)議以及每條連接上的數(shù)據(jù)傳輸速度。它能使用pcap類型過濾器,對連接進(jìn)行過濾。
只監(jiān)控TCP連接
-
$ sudo trafshow -i eth0 tcp
15. netload
netload命令只顯示關(guān)于當(dāng)前流量負(fù)載的一份簡短報告,并顯示自程序啟動以來所傳輸?shù)目傋止?jié)量。沒有更多的功能特性。它是netdiag的一部分。
-
$ netload eth0
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獲得它,因為Epel里面沒有它。
17. dstat
dstat是一款用途廣泛的工具(用python語言編寫),它可以監(jiān)控系統(tǒng)的不同統(tǒng)計信息,并使用批處理模式來報告,或者將相關(guān)數(shù)據(jù)記入到CSV或類似的文件。這個例子顯示了如何使用dstat來報告網(wǎng)絡(luò)帶寬。
-
$ 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的格式報告系統(tǒng)的統(tǒng)計信息;與dstat一樣,它也收集關(guān)于系統(tǒng)不同資源(如處理器、內(nèi)存和網(wǎng)絡(luò)等)的統(tǒng)計信息。這里給出的一個簡單例子顯示了如何使用collectl來報告網(wǎng)絡(luò)使用/帶寬。
-
$ collectl -sn -oT -i0.5
-
waiting for 0.5 second sample…
-
#
-
#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
文章名稱:Linux下高效的網(wǎng)絡(luò)監(jiān)控命令
文章地址:http://m.fisionsoft.com.cn/article/dphogde.html


咨詢
建站咨詢
