0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

監(jiān)控網(wǎng)絡(luò)使用情況的Linux命令行工具

馬哥Linux運(yùn)維 ? 來(lái)源:未知 ? 作者:胡薇 ? 2018-10-29 10:49 ? 次閱讀

一些命令可以顯示單個(gè)進(jìn)程所使用的帶寬。這樣一來(lái),用戶很容易發(fā)現(xiàn)過(guò)度使用網(wǎng)絡(luò)帶寬的某個(gè)進(jìn)程。

這些工具使用不同的機(jī)制來(lái)制作流量報(bào)告。nload等一些工具可以讀取"proc/net/dev"文件,以獲得流量統(tǒng)計(jì)信息;而一些工具使用pcap庫(kù)來(lái)捕獲所有數(shù)據(jù)包,然后計(jì)算總數(shù)據(jù)量,從而估計(jì)流量負(fù)載。

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

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

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

每個(gè)套接字連接的帶寬使用――iftop、iptraf、tcptrack、pktstat、netwatch和trafshow

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

1. nload

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

所以,如果你只需要快速查看總帶寬使用情況,無(wú)需每個(gè)進(jìn)程的詳細(xì)情況,那么nload用起來(lái)很方便。

$ nload

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

# fedora或centos

$ yum install nload -y

# ubuntu/debian

$ sudo apt-get install nload

2. iftop

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

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

$ sudo iftop -n

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

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

# fedora或centos

yum install iftop -y

# ubuntu或 debian

$ sudo apt-get install iftop

3. iptraf

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

$ sudo iptraf

安裝iptraf:

# Centos(基本軟件庫(kù))

$ 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"工具,可以顯示每個(gè)進(jìn)程所使用的帶寬,并對(duì)列表排序,將耗用帶寬最多的進(jìn)程排在最上面。萬(wàn)一出現(xiàn)帶寬使用突然激增的情況,用戶迅速打開(kāi)nethogs,就可以找到導(dǎo)致帶寬使用激增的進(jìn)程。nethogs可以報(bào)告程序的進(jìn)程編號(hào)(PID)、用戶和路徑。

$ sudo nethogs

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

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

$ sudo apt-get install nethogs

# fedora或centos(來(lái)自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)軟件庫(kù)來(lái)安裝。CentOS用戶則需要安裝repoforge,因?yàn)镋pel里面沒(méi)有bmon。

# ubuntu或debian

$ sudo apt-get install bmon

# fedora或centos(來(lái)自repoforge)

$ sudo yum install bmon

bmon支持許多選項(xiàng),能夠制作HTML格式的報(bào)告。欲知更多信息,請(qǐng)參閱參考手冊(cè)頁(yè)。

6. slurm

slurm是另一款網(wǎng)絡(luò)負(fù)載監(jiān)控器,可以顯示設(shè)備的統(tǒng)計(jì)信息,還能顯示ASCII圖形。它支持三種不同類型的圖形,使用c鍵、s鍵和l鍵即可激活每種圖形。slurm功能簡(jiǎn)單,無(wú)法顯示關(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庫(kù)來(lái)捕獲數(shù)據(jù)包,并計(jì)算各種統(tǒng)計(jì)信息,比如每個(gè)連接所使用的帶寬。它還支持標(biāo)準(zhǔn)的pcap過(guò)濾器,這些過(guò)濾器可用來(lái)監(jiān)控特定的連接。

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

# ubuntu, debian

$ sudo apt-get install tcptrack

# fedora, centos(來(lái)自repoforge軟件庫(kù))

$ sudo yum install tcptrack

8. vnstat

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

$ service vnstat status

* vnStat daemon is running

運(yùn)行沒(méi)有任何選項(xiàng)的vnstat,只會(huì)顯示自守護(hù)進(jìn)程運(yùn)行以來(lái)所傳輸?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)控帶寬使用情況,請(qǐng)使用"-l"選項(xiàng)(實(shí)時(shí)模式)。然后,它會(huì)顯示入站數(shù)據(jù)和出站數(shù)據(jù)所使用的總帶寬量,但非常精確地顯示,沒(méi)有關(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)告的工具,顯示每天或過(guò)去一個(gè)月使用了多少帶寬。它并不是嚴(yán)格意義上的實(shí)時(shí)監(jiān)控網(wǎng)絡(luò)的工具。

vnstat支持許多選項(xiàng),支持哪些選項(xiàng)方面的詳細(xì)信息請(qǐng)參閱參考手冊(cè)頁(yè)。

安裝vnstat

# ubuntu或debian

$ sudo apt-get install vnstat

# fedora或 centos(來(lái)自epel)

$ sudo yum install vnstat

9. bwm-ng

bwm-ng(下一代帶寬監(jiān)控器)是另一款非常簡(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

如果控制臺(tái)足夠大,bwm-ng還能使用curses2輸出模式,為流量繪制條形圖。

$ bwm-ng -o curses2

安裝bwm-ng:在CentOS上,可以從Epel來(lái)安裝bwm-ng。

# ubuntu或debian

$ sudo apt-get install bwm-ng

# fedora或centos(來(lái)自epel)

$ sudo apt-get install bwm-ng

10. cbm:Color Bandwidth Meter

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

$ sudo apt-get install cbm

11. speedometer

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

$ speedometer -r eth0 -t eth0

安裝speedometer

# ubuntu或debian用戶

$ sudo apt-get install speedometer

12. pktstat

pktstat可以實(shí)時(shí)顯示所有活動(dòng)連接,并顯示哪些數(shù)據(jù)通過(guò)這些活動(dòng)連接傳輸?shù)乃俣?。它還可以顯示連接類型,比如TCP連接或UDP連接;如果涉及HTTP連接,還會(huì)顯示關(guān)于HTTP請(qǐng)求的詳細(xì)信息。

$ sudo pktstat -i eth0 -nt

$ sudo apt-get install pktstat

13. netwatch

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

$ sudo netwatch -e eth0 -nt

$ sudo apt-get install netdiag

14. trafshow

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

只監(jiān)控TCP連接

$ sudo trafshow -i eth0 tcp

$ sudo apt-get install netdiag

15. netload

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

$ netload eth0

$ sudo apt-get install netdiag

16. ifstat

ifstat能夠以批處理式模式顯示網(wǎng)絡(luò)帶寬。輸出采用的一種格式便于用戶使用其他程序或?qū)嵱霉ぞ邅?lái)記入日志和分析。

$ ifstat -t -i eth0 0.5

Time eth0

HH:MM:SS KB/s inKB/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)軟件庫(kù)里面就有它。CentOS用戶則需要從Repoforge獲得它,因?yàn)镋pel里面沒(méi)有它。

# ubuntu, debian

$ sudo apt-get install ifstat

# fedora, centos(Repoforge)

$ sudo yum install ifstat

17. dstat

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

安裝dstat

$ dstat -nt

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

recvsend| 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ì)信息。這里給出的一個(gè)簡(jiǎn)單例子顯示了如何使用collectl來(lái)報(bào)告網(wǎng)絡(luò)使用/帶寬。

$ collectl -sn -oT -i0.5

waiting for 0.5 second sample...

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

#Time KBInPktInKBOutPktOut

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é)束語(yǔ)

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

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

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11378

    瀏覽量

    211341
  • 命令
    +關(guān)注

    關(guān)注

    5

    文章

    706

    瀏覽量

    22242

原文標(biāo)題:運(yùn)維工程師必備的18個(gè)網(wǎng)絡(luò)帶寬監(jiān)控常用命令

文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    64個(gè)Linux運(yùn)維必備命令行工具!

    iptables:一個(gè)用戶空間下的命令行工具,用于配置Linux內(nèi)核防火墻??梢詣?chuàng)建和修改Linux內(nèi)核空間的網(wǎng)絡(luò)包接收、轉(zhuǎn)發(fā)和發(fā)送規(guī)則。n
    發(fā)表于 07-15 11:52

    Linux命令行工具

    Linux 新手往往對(duì)命令行心存畏懼。部分原因是因?yàn)樾枰洃洿罅康?b class='flag-5'>命令,畢竟掌握命令是高效使用命令行的前提不幸的是,學(xué)習(xí)這些
    發(fā)表于 07-25 08:10

    linux命令行下載工具

    wget是linux下常用的命令行下載工具,是Linux用戶是必不可少的工具,尤其對(duì)于網(wǎng)絡(luò)管理員
    發(fā)表于 07-25 07:02

    cmd網(wǎng)絡(luò)經(jīng)典命令行

    cmd網(wǎng)絡(luò)經(jīng)典命令行:
    發(fā)表于 06-11 15:17 ?36次下載
    cmd<b class='flag-5'>網(wǎng)絡(luò)</b>經(jīng)典<b class='flag-5'>命令行</b>

    Xilinx軟件命令行工具:XSCT開(kāi)發(fā)和調(diào)試

    了解如何使用XSCT,Xilinx軟件命令行工具進(jìn)行開(kāi)發(fā)和調(diào)試。 該視頻演示了XSCT如何充當(dāng)Xilinx SDK的命令行控制臺(tái)。
    的頭像 發(fā)表于 11-21 06:02 ?1.4w次閱讀

    九款命令行實(shí)用工具助你監(jiān)測(cè)Linux磁盤(pán)分區(qū)及使用情況

    我們?cè)诒疚闹袑⒔榻B多款Linux命令行實(shí)用工具,你可以用它們?cè)?b class='flag-5'>Linux下檢查磁盤(pán)分區(qū)。監(jiān)測(cè)一個(gè)或多個(gè)存儲(chǔ)設(shè)備的空間使用情況
    發(fā)表于 04-02 14:32 ?1118次閱讀

    Linux系統(tǒng)下使用top命令查看CPU使用情況

    Linux系統(tǒng)下,使用top命令查看CPU使用情況。
    發(fā)表于 07-10 11:46 ?4507次閱讀
    在<b class='flag-5'>Linux</b>系統(tǒng)下使用top<b class='flag-5'>命令</b>查看CPU<b class='flag-5'>使用情況</b>

    Linux查看資源使用情況和性能調(diào)優(yōu)常用的命令

    ,包括進(jìn)程、線程、程序堆棧、內(nèi)存、Swap、CPU調(diào)度、內(nèi)存調(diào)度、網(wǎng)絡(luò)連接和IO讀寫(xiě)等。 本文介紹了Linux查看資源使用情況和性能調(diào)優(yōu)常用的命令,包括top、htop、ps、free
    的頭像 發(fā)表于 11-12 17:54 ?4323次閱讀

    Linux 命令行教程好書(shū)推薦

    今天跟大家推薦個(gè) Linux 命令行教程:《The Linux Command Line》,中文譯名:《Linux 命令行大全》。 該書(shū)作者
    的頭像 發(fā)表于 02-14 09:25 ?1563次閱讀

    18個(gè)用來(lái)監(jiān)控網(wǎng)絡(luò)使用情況Linux命令行工具

    導(dǎo)讀本文介紹了一些可以用來(lái)監(jiān)控網(wǎng)絡(luò)使用情況Linux命令行工具。這些
    的頭像 發(fā)表于 08-23 09:56 ?2185次閱讀
    18個(gè)用來(lái)<b class='flag-5'>監(jiān)控</b><b class='flag-5'>網(wǎng)絡(luò)</b><b class='flag-5'>使用情況</b>的<b class='flag-5'>Linux</b><b class='flag-5'>命令行</b><b class='flag-5'>工具</b>

    Linux命令行與shell腳本編寫(xiě)

    Linux命令行與shell腳本編寫(xiě)
    發(fā)表于 01-11 16:50 ?4次下載

    linux命令行與shell編程實(shí)戰(zhàn)

    Linux命令行與Shell編程實(shí)戰(zhàn)主要涉及以下內(nèi)容: Linux命令行基礎(chǔ):學(xué)習(xí)Linux命令行
    的頭像 發(fā)表于 11-08 10:57 ?890次閱讀

    linux虛擬機(jī)怎么調(diào)出命令行

    Linux虛擬機(jī)中調(diào)出命令行界面,可以通過(guò)以下步驟實(shí)現(xiàn): 打開(kāi)虛擬機(jī),進(jìn)入到Linux系統(tǒng)。 在桌面或應(yīng)用菜單中找到終端或命令行圖標(biāo),點(diǎn)擊打開(kāi)。 輸入
    的頭像 發(fā)表于 11-08 11:28 ?3344次閱讀

    linux切換到命令行模式

    Linux中,可以通過(guò)以下步驟切換到命令行模式: 打開(kāi)終端??梢栽趹?yīng)用菜單中找到終端或命令行終端。 在終端中輸入命令“exit”或“l(fā)ogout”,然后按回車(chē)鍵。 系統(tǒng)會(huì)提示您輸入管
    的頭像 發(fā)表于 11-13 16:47 ?1935次閱讀

    linux命令行運(yùn)行步驟

    運(yùn)行Linux命令行涉及以下步驟: 打開(kāi)終端 在Linux系統(tǒng)中,打開(kāi)命令行界面的方式有多種,最常見(jiàn)的是打開(kāi)終端應(yīng)用程序。可以在應(yīng)用程序菜單中找到終端,點(diǎn)擊打開(kāi)。 熟悉
    的頭像 發(fā)表于 11-17 10:18 ?928次閱讀