20個(gè)你可能不知道的 Linux 網(wǎng)絡(luò )工具
如果要在你的系統上監控網(wǎng)絡(luò ),那么使用命令行工具是非常實(shí)用的,并且對于 Linux 用戶(hù)來(lái)說(shuō),有著(zhù)許許多多現成的工具可以使用,如: nethogs, ntopng, nload, iftop, iptraf, bmon, slurm, tcptrack, cbm, netwatch, collectl, trafshow, cacti, etherape, ipband, jnettop, netspeed 以及 speedometer。
本文引用地址:http://dyxdggzs.com/article/201808/385713.htm鑒于世上有著(zhù)許多的 Linux 專(zhuān)家和開(kāi)發(fā)者,顯然還存在其他的網(wǎng)絡(luò )監控工具,但在這篇教程中,我不打算將它們所有包括在內。
上面列出的工具都有著(zhù)自己的獨特之處,但歸根結底,它們都做著(zhù)監控網(wǎng)絡(luò )流量的工作,只是通過(guò)各種不同的方法。例如 nethogs 可以被用來(lái)展示每個(gè)進(jìn)程的帶寬使用情況,以防你想知道究竟是哪個(gè)應用在消耗了你的整個(gè)網(wǎng)絡(luò )資源; iftop 可以被用來(lái)展示每個(gè)套接字連接的帶寬使用情況,而像 nload 這類(lèi)的工具可以幫助你得到有關(guān)整個(gè)帶寬的信息。
1) nethogs
nethogs 是一個(gè)免費的工具,當要查找哪個(gè) PID (注:即 process identifier,進(jìn)程 ID) 給你的網(wǎng)絡(luò )流量帶來(lái)了麻煩時(shí),它是非常方便的。它按每個(gè)進(jìn)程來(lái)分組帶寬,而不是像大多數的工具那樣按照每個(gè)協(xié)議或每個(gè)子網(wǎng)來(lái)劃分流量。它功能豐富,同時(shí)支持 IPv4 和 IPv6,并且我認為,若你想在你的 Linux 主機上確定哪個(gè)程序正消耗著(zhù)你的全部帶寬,它是來(lái)做這件事的最佳的程序。
一個(gè) Linux 用戶(hù)可以使用 nethogs 來(lái)顯示每個(gè)進(jìn)程的 TCP 下載和上傳速率,可以使用命令 nethogs eth0 來(lái)監控一個(gè)指定的設備,上面的 eth0 是那個(gè)你想獲取信息的設備的名稱(chēng),你還可以得到有關(guān)正在傳輸的數據的傳輸速率信息。
對我而言, nethogs 是非常容易使用的,或許是因為我非常喜歡它,以至于我總是在我的 Ubuntu 12.04 LTS 機器中使用它來(lái)監控我的網(wǎng)絡(luò )帶寬。
例如要想使用混雜模式來(lái)嗅探,可以像下面展示的命令那樣使用選項 -p:
nethogs -p wlan0
假如你想更多地了解 nethogs 并深入探索它,那么請毫不猶豫地閱讀我們做的關(guān)于這個(gè)網(wǎng)絡(luò )帶寬監控工具的整個(gè)教程。
2) nload
nload 是一個(gè)控制臺應用,可以被用來(lái)實(shí)時(shí)地監控網(wǎng)絡(luò )流量和帶寬使用情況,它還通過(guò)提供兩個(gè)簡(jiǎn)單易懂的圖表來(lái)對流量進(jìn)行可視化。這個(gè)絕妙的網(wǎng)絡(luò )監控工具還可以在監控過(guò)程中切換被監控的設備,而這可以通過(guò)按左右箭頭來(lái)完成。

正如你在上面的截圖中所看到的那樣,由 nload 提供的圖表是非常容易理解的。nload 提供了有用的信息,也展示了諸如被傳輸數據的總量和最小/最大網(wǎng)絡(luò )速率等信息。
而更酷的是你只需要直接運行 nload 這個(gè)工具就行,這個(gè)命令是非常的短小且易記的:
nload
我很確信的是:我們關(guān)于如何使用 nload 的詳細教程將幫助到新的 Linux 用戶(hù),甚至可以幫助那些正尋找關(guān)于 nload 信息的老手。
3) slurm
slurm 是另一個(gè) Linux 網(wǎng)絡(luò )負載監控工具,它以一個(gè)不錯的 ASCII 圖來(lái)顯示結果,它還支持許多按鍵用以交互,例如 c 用來(lái)切換到經(jīng)典模式, s 切換到分圖模式, r 用來(lái)重繪屏幕, L 用來(lái)啟用 TX/RX 燈(注:TX,發(fā)送流量;RX,接收流量) ,m 用來(lái)在經(jīng)典分圖模式和大圖模式之間進(jìn)行切換, q 退出 slurm。

在網(wǎng)絡(luò )負載監控工具 slurm 中,還有許多其它的按鍵可用,你可以很容易地使用下面的命令在 man 手冊中學(xué)習它們。
man slurm
slurm 在 Ubuntu 和 Debian 的官方軟件倉庫中可以找到,所以使用這些發(fā)行版本的用戶(hù)可以像下面展示的那樣,使用 apt-get 安裝命令來(lái)輕松地下載它:
sudo apt-get install slurm
我們已經(jīng)在一個(gè)教程中對 slurm 的使用做了介紹,不要忘記和其它使用 Linux 的朋友分享這些知識。
4) iftop
當你想顯示連接到網(wǎng)卡上的各個(gè)主機的帶寬使用情況時(shí),iftop 是一個(gè)非常有用的工具。根據 man 手冊,iftop 在一個(gè)指定的接口或在它可以找到的第一個(gè)接口(假如沒(méi)有任何特殊情況,它應該是一個(gè)對外的接口)上監聽(tīng)網(wǎng)絡(luò )流量,并且展示出一個(gè)表格來(lái)顯示當前的一對主機間的帶寬使用情況。
通過(guò)在虛擬終端中使用下面的命令,Ubuntu 和 Debian 用戶(hù)可以在他們的機器中輕易地安裝 iftop:
sudo apt-get install iftop
在你的機器上,可以使用下面的命令通過(guò) yum 來(lái)安裝 iftop:
yum -y install iftop
5) collectl
collectl 可以被用來(lái)收集描述當前系統狀態(tài)的數據,并且它支持如下兩種模式:
記錄模式
回放模式
記錄模式 允許從一個(gè)正在運行的系統中讀取數據,然后將這些數據要么顯示在終端中,要么寫(xiě)入一個(gè)或多個(gè)文件或一個(gè)套接字中。
回放模式
根據 man 手冊,在這種模式下,數據從一個(gè)或多個(gè)由記錄模式生成的數據文件中讀取。
Ubuntu 和 Debian 用戶(hù)可以在他們的機器上使用他們默認的包管理器來(lái)安裝 colletcl。下面的命令將為他們做這個(gè)工作:
sudo apt-get install collectl
還可以使用下面的命令來(lái)安裝 collectl, 因為對于這些發(fā)行版本(注:這里指的是用 yum 作為包管理器的發(fā)行版本),在它們官方的軟件倉庫中也含有 collectl:
yum install collectl
6) Netstat
Netstat 是一個(gè)用來(lái)監控傳入和傳出的網(wǎng)絡(luò )數據包統計數據的接口統計數據命令行工具。它會(huì )顯示 TCP 連接 (包括上傳和下行),路由表,及一系列的網(wǎng)絡(luò )接口(網(wǎng)卡或者SDN接口)和網(wǎng)絡(luò )協(xié)議統計數據。
Ubuntu 和 Debian 用戶(hù)可以在他們的機器上使用默認的包管理器來(lái)安裝 netstat。Netsta 軟件被包括在 net-tools 軟件包中,并可以在 shell 或虛擬終端中運行下面的命令來(lái)安裝它:
sudo apt-get install net-tools
CentOS, Fedora, RHEL 用戶(hù)可以在他們的機器上使用默認的包管理器來(lái)安裝 netstat。Netstat 軟件被包括在 net-tools 軟件包中,并可以在 shell 或虛擬終端中運行下面的命令來(lái)安裝它:
yum install net-tools
運行下面的命令使用 Netstat 來(lái)輕松地監控網(wǎng)絡(luò )數據包統計數據:
netstat

更多的關(guān)于 netstat 的信息,我們可以簡(jiǎn)單地在 shell 或終端中鍵入 man netstat 來(lái)了解:
man netstat

7) Netload
netload 命令只展示一個(gè)關(guān)于當前網(wǎng)絡(luò )荷載和自從程序運行之后傳輸數據總的字節數目的簡(jiǎn)要報告,它沒(méi)有更多的功能。它是 netdiag 軟件的一部分。
我們可以在 fedora 中使用 yum 來(lái)安裝 Netload,因為它在 fedora 的默認軟件倉庫中。但假如你運行的是 CentOS 或 RHEL,則我們需要安裝 rpmforge 軟件倉庫。
# yum install netdiag
Netload 是默認倉庫中 netdiag 的一部分,我們可以輕易地使用下面的命令來(lái)利用 apt 包管理器安裝 netdiag:
$ sudo apt-get install netdiag
為了運行 netload,我們需要確保選擇了一個(gè)正在工作的網(wǎng)絡(luò )接口的名稱(chēng),如 eth0, eh1, wlan0, mon0等,然后在 shell 或虛擬終端中運行下面的命令:
$ netload wlan2
注意: 請將上面的 wlan2 替換為你想使用的網(wǎng)絡(luò )接口名稱(chēng),假如你想通過(guò)掃描了解你的網(wǎng)絡(luò )接口名稱(chēng),可以在一個(gè)虛擬終端或 shell 中運行 ip link show 命令。
8) Nagios
Nagios 是一個(gè)領(lǐng)先且功能強大的開(kāi)源監控系統,它使得網(wǎng)絡(luò )或系統管理員可以在服務(wù)器的各種問(wèn)題影響到服務(wù)器的主要事務(wù)之前,發(fā)現并解決這些問(wèn)題。 有了 Nagios 系統,管理員便可以在一個(gè)單一的窗口中監控遠程的 Linux 、Windows 系統、交換機、路由器和打印機等。它會(huì )顯示出重要的警告并指出在你的網(wǎng)絡(luò )或服務(wù)器中是否出現某些故障,這可以間接地幫助你在問(wèn)題發(fā)生前就著(zhù)手執行補救行動(dòng)。
Nagios 有一個(gè) web 界面,其中有一個(gè)圖形化的活動(dòng)監視器。通過(guò)瀏覽網(wǎng)頁(yè) http://localhost/nagios/ 或 http://localhost/nagios3/ 便可以登錄到這個(gè) web 界面。假如你在遠程的機器上進(jìn)行操作,請使用你的 IP 地址來(lái)替換 localhost,然后鍵入用戶(hù)名和密碼,我們便會(huì )看到如下圖所展示的信息:

9) EtherApe
EtherApe 是一個(gè)針對 Unix 的圖形化網(wǎng)絡(luò )監控工具,它仿照了 etherman 軟件。它支持鏈路層、IP 和 TCP 等模式,并支持以太網(wǎng), FDDI, 令牌環(huán), ISDN, PPP, SLIP 及 WLAN 設備等接口,以及一些封裝格式。主機和連接隨著(zhù)流量和協(xié)議而改變其尺寸和顏色。它可以過(guò)濾要展示的流量,并可從一個(gè)文件或運行的網(wǎng)絡(luò )中讀取數據包。
在 CentOS、Fedora、RHEL 等 Linux 發(fā)行版本中安裝 etherape 是一件容易的事,因為在它們的官方軟件倉庫中就可以找到 etherape。我們可以像下面展示的命令那樣使用 yum 包管理器來(lái)安裝它:
yum install etherape
我們也可以使用下面的命令在 Ubuntu、Debian 及它們的衍生發(fā)行版本中使用 apt 包管理器來(lái)安裝 EtherApe :
sudo apt-get install etherape
在 EtherApe 安裝到你的系統之后,我們需要像下面那樣以 root 權限來(lái)運行 etherape:
sudo etherape
然后, etherape 的 圖形用戶(hù)界面 便會(huì )被執行。接著(zhù),在菜單上面的 捕捉 選項下,我們可以選擇 模式(IP,鏈路層,TCP) 和 接口。一切設定完畢后,我們需要點(diǎn)擊 開(kāi)始 按鈕。接著(zhù)我們便會(huì )看到類(lèi)似下面截圖的東西:

10) tcpflow
tcpflow 是一個(gè)命令行工具,它可以捕捉 TCP 連接(流)的部分傳輸數據,并以一種方便協(xié)議分析或除錯的方式來(lái)存儲數據。它重構了實(shí)際的數據流并將每個(gè)流存儲在不同的文件中,以備日后的分析。它能識別 TCP 序列號并可以正確地重構數據流,不管是在重發(fā)還是亂序發(fā)送狀態(tài)下。
通過(guò) apt 包管理器在 Ubuntu 、Debian 系統中安裝 tcpflow 是很容易的,因為默認情況下在官方軟件倉庫中可以找到它。
$ sudo apt-get install tcpflow
我們可以使用下面的命令通過(guò) yum 包管理器在 Fedora 、CentOS 、RHEL 及它們的衍生發(fā)行版本中安裝 tcpflow:
# yum install tcpflow
假如在軟件倉庫中沒(méi)有找到它或不能通過(guò) yum 包管理器來(lái)安裝它,則我們需要像下面展示的那樣從 http://pkgs.repoforge.org/tcpflow/ 上手動(dòng)安裝它:
假如你運行 64 位的 PC:
# yum install --nogpgcheck http://pkgs.repoforge.org/tcpflow/tcpflow-0.21-1.2.el6.rf.x86_64.rpm
假如你運行 32 位的 PC:
# yum install --nogpgcheck http://pkgs.repoforge.org/tcpflow/tcpflow-0.21-1.2.el6.rf.i686.rpm
我們可以使用 tcpflow 來(lái)捕捉全部或部分 tcp 流量,并以一種簡(jiǎn)單的方式把它們寫(xiě)到一個(gè)可讀的文件中。下面的命令就可以完成這個(gè)事情,但我們需要在一個(gè)空目錄中運行下面的命令,因為它將創(chuàng )建諸如 x.x.x.x.y-a.a.a.a.z 格式的文件,運行之后,只需按 Ctrl-C 便可停止這個(gè)命令。
$ sudo tcpflow -i eth0 port 8000
注意:請將上面的 eth0 替換為你想捕捉的網(wǎng)卡接口名稱(chēng)。
11) IPTraf
IPTraf 是一個(gè)針對 Linux 平臺的基于控制臺的網(wǎng)絡(luò )統計應用。它生成一系列的圖形,如 TCP 連接的包/字節計數、接口信息和活動(dòng)指示器、 TCP/UDP 流量故障以及局域網(wǎng)內設備的包/字節計數。
在默認的軟件倉庫中可以找到 IPTraf,所以我們可以使用下面的命令通過(guò) apt 包管理器輕松地安裝 IPTraf:
$ sudo apt-get install iptraf
我們可以使用下面的命令通過(guò) yum 包管理器輕松地安裝 IPTraf:
# yum install iptraf
我們需要以管理員權限來(lái)運行 IPTraf,并帶有一個(gè)有效的網(wǎng)絡(luò )接口名。這里,我們的網(wǎng)絡(luò )接口名為 wlan2,所以我們使用 wlan2 來(lái)作為參數:
$ sudo iptraf wlan2

開(kāi)始通常的網(wǎng)絡(luò )接口統計,鍵入:
# iptraf -g
查看接口 eth0 的詳細統計信息,使用:
# iptraf -d eth0
查看接口 eth0 的 TCP 和 UDP 監控信息,使用:
# iptraf -z eth0
查看接口 eth0 的包的大小和數目,使用:
# iptraf -z eth0
注意:請將上面的 eth0 替換為你的接口名稱(chēng)。你可以通過(guò)運行ip link show命令來(lái)檢查你的接口。
12) Speedometer
Speedometer 是一個(gè)小巧且簡(jiǎn)單的工具,它只用來(lái)繪出一幅包含有通過(guò)某個(gè)給定端口的上行、下行流量的好看的圖。
在默認的軟件倉庫中可以找到 Speedometer ,所以我們可以使用下面的命令通過(guò) yum 包管理器輕松地安裝 Speedometer:
# yum install speedometer
我們可以使用下面的命令通過(guò) apt 包管理器輕松地安裝 Speedometer:
$ sudo apt-get install speedometer
Speedometer 可以簡(jiǎn)單地通過(guò)在 shell 或虛擬終端中執行下面的命令來(lái)運行:
$ speedometer -r wlan2 -t wlan2

注:請將上面的 wlan2 替換為你想要使用的網(wǎng)絡(luò )接口名稱(chēng)。
13) Netwatch
Netwatch 是 netdiag 工具集里的一部分,它也顯示當前主機和其他遠程主機的連接情況,以及在每個(gè)連接中數據傳輸的速率。
我們可以使用 yum 在 fedora 中安裝 Netwatch,因為它在 fedora 的默認軟件倉庫中。但若你運行著(zhù) CentOS 或 RHEL , 我們需要安裝 rpmforge 軟件倉庫。
# yum install netwatch
Netwatch 是 netdiag 的一部分,可以在默認的軟件倉庫中找到,所以我們可以輕松地使用下面的命令來(lái)利用 apt 包管理器安裝 netdiag:
$ sudo apt-get install netdiag
為了運行 netwatch, 我們需要在虛擬終端或 shell 中執行下面的命令:
$ sudo netwatch -e wlan2 -nt

注意: 請將上面的 wlan2 替換為你想使用的網(wǎng)絡(luò )接口名稱(chēng),假如你想通過(guò)掃描了解你的網(wǎng)絡(luò )接口名稱(chēng),可以在一個(gè)虛擬終端或 shell 中運行 ip link show 命令。
14) Trafshow
Trafshow 同 netwatch 和 pktstat 一樣,可以報告當前活動(dòng)的連接里使用的協(xié)議和每個(gè)連接中數據傳輸的速率。它可以使用 pcap 類(lèi)型的過(guò)濾器來(lái)篩選出特定的連接。
我們可以使用 yum 在 fedora 中安裝 trafshow ,因為它在 fedora 的默認軟件倉庫中。但若你正運行著(zhù) CentOS 或 RHEL , 我們需要安裝 rpmforge 軟件倉庫。
# yum install trafshow
Trafshow 在默認倉庫中可以找到,所以我們可以輕松地使用下面的命令來(lái)利用 apt 包管理器安裝它:
$ sudo apt-get install trafshow
為了使用 trafshow 來(lái)執行監控任務(wù),我們需要在虛擬終端或 shell 中執行下面的命令:
$ sudo trafshow -i wlan2

為了專(zhuān)門(mén)監控 tcp 連接,如下面一樣添加上 tcp 參數:
$ sudo trafshow -i wlan2 tcp

注意: 請將上面的 wlan2 替換為你想使用的網(wǎng)絡(luò )接口名稱(chēng),假如你想通過(guò)掃描了解你的網(wǎng)絡(luò )接口名稱(chēng),可以在一個(gè)虛擬終端或 shell 中運行 ip link show 命令。
15) Vnstat
與大多數的其他工具相比,Vnstat 有一點(diǎn)不同。實(shí)際上它運行著(zhù)一個(gè)后臺服務(wù)或守護進(jìn)程,并時(shí)刻記錄著(zhù)傳輸數據的大小。另外,它可以被用來(lái)生成一個(gè)網(wǎng)絡(luò )使用歷史記錄的報告。
我們需要開(kāi)啟 EPEL 軟件倉庫,然后運行 yum 包管理器來(lái)安裝 vnstat。
# yum install vnstat
Vnstat 在默認軟件倉庫中可以找到,所以我們可以使用下面的命令運行 apt 包管理器來(lái)安裝它:
$ sudo apt-get install vnstat
不帶有任何選項運行 vnstat 將簡(jiǎn)單地展示出從該守護進(jìn)程運行后數據傳輸的總量。
$ vnstat

為了實(shí)時(shí)地監控帶寬使用情況,使用 ‘-l’ 選項(live 模式)。然后它將以一種非常精確的方式來(lái)展示上行和下行數據所使用的帶寬總量,但不會(huì )顯示任何有關(guān)主機連接或進(jìn)程的內部細節。
$ vnstat -l

完成了上面的步驟后,按 Ctrl-C 來(lái)停止,這將會(huì )得到如下類(lèi)型的輸出:

16) tcptrack
tcptrack 可以展示 TCP 連接的狀態(tài),它在一個(gè)給定的網(wǎng)絡(luò )端口上進(jìn)行監聽(tīng)。tcptrack 監控它們的狀態(tài)并展示出排序且不斷更新的列表,包括來(lái)源/目標地址、帶寬使用情況等信息,這與 top 命令的輸出非常類(lèi)似 。
鑒于 tcptrack 在軟件倉庫中,我們可以輕松地在 Debian、Ubuntu 系統中從軟件倉庫使用 apt 包管理器來(lái)安裝 tcptrack。為此,我們需要在 shell 或虛擬終端中執行下面的命令:
$ sudo apt-get install tcptrack
我們可以通過(guò) yum 在 fedora 中安裝它,因為它在 fedora 的默認軟件倉庫中。但若你運行著(zhù) CentOS 或 RHEL 系統,我們需要安裝 rpmforge 軟件倉庫。為此,我們需要運行下面的命令:
# wget http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
# rpm -Uvh rpmforge-release*rpm
# yum install tcptrack
注:這里我們下載了 rpmforge-release 的當前最新版本,即 0.5.3-1,你總是可以從 rpmforge 軟件倉庫中下載其最新版本,并請在上面的命令中替換為你下載的版本。
tcptrack 需要以 root 權限或超級用戶(hù)身份來(lái)運行。執行 tcptrack 時(shí),我們需要帶上要監視的網(wǎng)絡(luò )接口 TCP 連接狀況的接口名稱(chēng)。這里我們的接口名稱(chēng)為 wlan2,所以如下面這樣使用:
sudo tcptrack -i wlan2

假如你想監控特定的端口,則使用:
# tcptrack -i wlan2 port 80

請替換上面的 80 為你想要監控的端口號。注意: 請將上面的 wlan2 替換為你想使用的網(wǎng)絡(luò )接口名稱(chēng),假如你想通過(guò)掃描了解你的網(wǎng)絡(luò )接口名稱(chēng),可以在一個(gè)虛擬終端或 shell 中運行 ip link show 命令。
17) CBM
CBM ( Color Bandwidth Meter) 可以展示出當前所有網(wǎng)絡(luò )設備的流量使用情況。這個(gè)程序是如此的簡(jiǎn)單,以至于都可以從它的名稱(chēng)中看出其功能。CBM 的源代碼和新版本可以在 http://www.isotton.com/utils/cbm/ 上找到。
鑒于 CBM 已經(jīng)包含在軟件倉庫中,我們可以簡(jiǎn)單地使用 apt 包管理器從 Debian、Ubuntu 的軟件倉庫中安裝 CBM。為此,我們需要在一個(gè) shell 窗口或虛擬終端中運行下面的命令:
$ sudo apt-get install cbm
我們只需使用下面展示的命令來(lái)在 shell 窗口或虛擬終端中運行 cbm:
$ cbm

18) bmon
Bmon ( Bandwidth Monitoring) ,是一個(gè)用于調試和實(shí)時(shí)監控帶寬的工具。這個(gè)工具能夠檢索各種輸入模塊的統計數據。它提供了多種輸出方式,包括一個(gè)基于 curses 庫的界面,輕量級的HTML輸出,以及 ASCII 輸出格式。
bmon 可以在軟件倉庫中找到,所以我們可以通過(guò)使用 apt 包管理器來(lái)在 Debian、Ubuntu 中安裝它。為此,我們需要在一個(gè) shell 窗口或虛擬終端中運行下面的命令:
$ sudo apt-get install bmon
我們可以使用下面的命令來(lái)運行 bmon 以監視我們的網(wǎng)絡(luò )狀態(tài):
$ bmon

19) tcpdump
TCPDump 是一個(gè)用于網(wǎng)絡(luò )監控和數據獲取的工具。它可以為我們節省很多的時(shí)間,并可用來(lái)調試網(wǎng)絡(luò )或服務(wù)器的相關(guān)問(wèn)題。它可以打印出在某個(gè)網(wǎng)絡(luò )接口上與布爾表達式相匹配的數據包所包含的內容的一個(gè)描述。
tcpdump 可以在 Debian、Ubuntu 的默認軟件倉庫中找到,我們可以簡(jiǎn)單地以 sudo 權限使用 apt 包管理器來(lái)安裝它。為此,我們需要在一個(gè) shell 窗口或虛擬終端中運行下面的命令:
$ sudo apt -get install tcpdump
tcpdump 也可以在 Fedora、CentOS、RHEL 的軟件倉庫中找到。我們可以像下面一樣通過(guò) yum 包管理器來(lái)安裝它:
# yum install tcpdump
tcpdump 需要以 root 權限或超級用戶(hù)來(lái)運行,我們需要帶上我們想要監控的 TCP 連接的網(wǎng)絡(luò )接口名稱(chēng)來(lái)執行 tcpdump 。在這里,我們有 wlan2 這個(gè)網(wǎng)絡(luò )接口,所以可以像下面這樣使用:
$ sudo tcpdump -i wlan2

假如你只想監視一個(gè)特定的端口,則可以運行下面的命令。下面是一個(gè)針對 80 端口(網(wǎng)絡(luò )服務(wù)器)的例子:
$ sudo tcpdump -i wlan2 'port 80'

20) ntopng
[ntopng][20] 是 ntop 的下一代版本。它是一個(gè)用于展示網(wǎng)絡(luò )使用情況的網(wǎng)絡(luò )探頭,在一定程度上它與 top 針對進(jìn)程所做的工作類(lèi)似。ntopng 基于 libpcap 并且它以可移植的方式被重寫(xiě),以達到可以在每一個(gè) Unix 平臺 、 MacOSX 以及 Win32 上運行的目的。
為了在 Debian,Ubuntu 系統上安裝 ntopng,首先我們需要安裝 編譯 ntopng 所需的依賴(lài)軟件包。你可以通過(guò)在一個(gè) shell 窗口或一個(gè)虛擬終端中運行下面的命令來(lái)安裝它們:
$ sudo apt-get install libpcap-dev libglib2.0-dev libgeoip-dev redis-server wget libxml2-dev build-essential checkinstall
現在,我們需要像下面一樣針對我們的系統手動(dòng)編譯 ntopng :
$ sudo wget http://sourceforge.net/projects/ntop/files/ntopng/ntopng-1.1_6932.tgz/download
$ sudo tar zxfv ntopng-1.1_6932.tgz
$ sudo cd ntopng-1.1_6932
$ sudo ./configure
$ sudo make
$ sudo make install
這樣,在你的 Debian 或 Ubuntu 系統上應該已經(jīng)安裝上了你編譯的 ntopng 。
我們已經(jīng)有了有關(guān) ntopng 的使用方法的教程,它既可以在命令行也可以在 Web 界面中使用,我們可以前往這些教程來(lái)獲得有關(guān) ntopng 的知識。
結論
在這篇文章中,我們介紹了一些在 Linux 下的網(wǎng)絡(luò )負載監控工具,這對于系統管理員甚至是新手來(lái)說(shuō),都是很有幫助的。在這篇文章中介紹的每一個(gè)工具都具有其特點(diǎn),不同的選項等,但最終它們都可以幫助你來(lái)監控你的網(wǎng)絡(luò )流量。
評論