你可能不知道的Linux網絡工具一

nethogs

nethogs 是一個免費的工具,當要查找哪個 PID (注:即 process identifier,進程 ID) 給你的網絡流量帶來了麻煩時,它是非常方便的。它按每個進程來分組帶寬,而不是像大多數的工具那樣按照每個協議或每個子網來劃分流量。它功能豐富,同時支持 IPv4 和 IPv6,並且我認為,若你想在你的 Linux 主機上確定哪個程序正消耗著你的全部帶寬,它是來做這件事的最佳的程序。

一個 Linux 用戶可以使用 nethogs 來顯示每個進程的 TCP 下載和上傳速率,可以使用命令 nethogs eth0 來監控一個指定的設備,上面的 eth0 是那個你想獲取信息的設備的名稱,你還可以得到有關正在傳輸的數據的傳輸速率信息。

例如要想使用混雜模式來嗅探,可以像下面展示的命令那樣使用選項 -p:

nethogs -p wlan0

假如你想更多地瞭解 nethogs 並深入探索它,那麼請毫不猶豫地閱讀我們做的關於這個網絡帶寬監控工具的整個教程。

(LCTT 譯註:關於 nethogs 的更多信息可以參考:https://linux.cn/article-2808-1.html )

nload

nload 是一個控制檯應用,可以被用來實時地監控網絡流量和帶寬使用情況,它還通過提供兩個簡單易懂的圖表來對流量進行可視化。這個絕妙的網絡監控工具還可以在監控過程中切換被監控的設備,而這可以通過按左右箭頭來完成。


你可能不知道的Linux網絡工具一

正如你在上面的截圖中所看到的那樣,由 nload 提供的圖表是非常容易理解的。nload 提供了有用的信息,也展示了諸如被傳輸數據的總量和最小/最大網絡速率等信息。

而更酷的是你只需要直接運行 nload 這個工具就行,這個命令是非常的短小且易記的:

nload

(LCTT 譯註:關於 nload 的更新信息可以參考:https://linux.cn/article-5114-1.html )

slurm

slurm 是另一個 Linux 網絡負載監控工具,它以一個不錯的 ASCII 圖來顯示結果,它還支持許多按鍵用以交互,例如 c 用來切換到經典模式, s 切換到分圖模式, r 用來重繪屏幕, L 用來啟用 TX/RX 燈(注:TX,發送流量;RX,接收流量) ,m 用來在經典分圖模式和大圖模式之間進行切換, q 退出 slurm。


你可能不知道的Linux網絡工具一

在網絡負載監控工具 slurm 中,還有許多其它的按鍵可用,你可以很容易地使用下面的命令在 man 手冊中學習它們。

man slurm

slurm 在 Ubuntu 和 Debian 的官方軟件倉庫中可以找到,所以使用這些發行版本的用戶可以像下面展示的那樣,使用 apt-get 安裝命令來輕鬆地下載它:

sudo apt-get install slurm

iftop

當你想顯示連接到網卡上的各個主機的帶寬使用情況時,iftop 是一個非常有用的工具。根據 man 手冊,iftop 在一個指定的接口或在它可以找到的第一個接口(假如沒有任何特殊情況,它應該是一個對外的接口)上監聽網絡流量,並且展示出一個表格來顯示當前的一對主機間的帶寬使用情況。

通過在虛擬終端中使用下面的命令,Ubuntu 和 Debian 用戶可以在他們的機器中輕易地安裝 iftop:

sudo apt-get install iftop

在你的機器上,可以使用下面的命令通過 yum 來安裝 iftop:

yum -y install iftop

(LCTT 譯註:關於 nload 的更多信息請參考:https://linux.cn/article-1843-1.html )

collectl

collectl 可以被用來收集描述當前系統狀態的數據,並且它支持如下兩種模式:

●記錄模式

●回放模式

記錄模式 允許從一個正在運行的系統中讀取數據,然後將這些數據要麼顯示在終端中,要麼寫入一個或多個文件或一個套接字中。

回放模式

根據 man 手冊,在這種模式下,數據從一個或多個由記錄模式生成的數據文件中讀取。

Ubuntu 和 Debian 用戶可以在他們的機器上使用他們默認的包管理器來安裝 colletcl。下面的命令將為他們做這個工作:

sudo apt-get install collectl

還可以使用下面的命令來安裝 collectl, 因為對於這些發行版本(注:這裡指的是用 yum 作為包管理器的發行版本),在它們官方的軟件倉庫中也含有 collectl:

yum install collectl

(LCTT 譯註:關於 collectl 的更多信息請參考: https://linux.cn/article-3154-1.html )

Netstat

Netstat 是一個用來監控傳入和傳出的網絡數據包統計數據的接口統計數據命令行工具。它會顯示 TCP 連接 (包括上傳和下行),路由表,及一系列的網絡接口(網卡或者SDN接口)和網絡協議統計數據。

Ubuntu 和 Debian 用戶可以在他們的機器上使用默認的包管理器來安裝 netstat。Netsta 軟件被包括在 net-tools 軟件包中,並可以在 shell 或虛擬終端中運行下面的命令來安裝它:

sudo apt-get install net-tools

CentOS, Fedora, RHEL 用戶可以在他們的機器上使用默認的包管理器來安裝 netstat。Netstat 軟件被包括在 net-tools 軟件包中,並可以在 shell 或虛擬終端中運行下面的命令來安裝它:

yum install net-tools

運行下面的命令使用 Netstat 來輕鬆地監控網絡數據包統計數據:

netstat


你可能不知道的Linux網絡工具一

更多的關於 netstat 的信息,我們可以簡單地在 shell 或終端中鍵入 man netstat 來了解:

man netstat


你可能不知道的Linux網絡工具一

(LCTT 譯註:關於 netstat 的更多信息請參考:https://linux.cn/article-2434-1.html )

Netload

netload 命令只展示一個關於當前網絡荷載和自從程序運行之後傳輸數據總的字節數目的簡要報告,它沒有更多的功能。它是 netdiag 軟件的一部分。

我們可以在 fedora 中使用 yum 來安裝 Netload,因為它在 fedora 的默認軟件倉庫中。但假如你運行的是 CentOS 或 RHEL,則我們需要安裝 rpmforge 軟件倉庫。

# yum install netdiag

Netload 是默認倉庫中 netdiag 的一部分,我們可以輕易地使用下面的命令來利用 apt 包管理器安裝 netdiag:

$ sudo apt-get install netdiag 

為了運行 netload,我們需要確保選擇了一個正在工作的網絡接口的名稱,如 eth0, eh1, wlan0, mon0等,然後在 shell 或虛擬終端中運行下面的命令:

$ netload wlan2

注意: 請將上面的 wlan2 替換為你想使用的網絡接口名稱,假如你想通過掃描了解你的網絡接口名稱,可以在一個虛擬終端或 shell 中運行 ip link show 命令。

Nagios

Nagios 是一個領先且功能強大的開源監控系統,它使得網絡或系統管理員可以在服務器的各種問題影響到服務器的主要事務之前,發現並解決這些問題。 有了 Nagios 系統,管理員便可以在一個單一的窗口中監控遠程的 Linux 、Windows 系統、交換機、路由器和打印機等。它會顯示出重要的警告並指出在你的網絡或服務器中是否出現某些故障,這可以間接地幫助你在問題發生前就著手執行補救行動。

Nagios 有一個 web 界面,其中有一個圖形化的活動監視器。通過瀏覽網頁 http://localhost/nagios/ 或 http://localhost/nagios3/ 便可以登錄到這個 web 界面。假如你在遠程的機器上進行操作,請使用你的 IP 地址來替換 localhost,然後鍵入用戶名和密碼,我們便會看到如下圖所展示的信息:


你可能不知道的Linux網絡工具一

(LCTT 譯註:關於 Nagios 的更多信息請參考:https://linux.cn/article-2436-1.html )

EtherApe

EtherApe 是一個針對 Unix 的圖形化網絡監控工具,它仿照了 etherman 軟件。它支持鏈路層、IP 和 TCP 等模式,並支持以太網, FDDI, 令牌環, ISDN, PPP, SLIP 及 WLAN 設備等接口,以及一些封裝格式。主機和連接隨著流量和協議而改變其尺寸和顏色。它可以過濾要展示的流量,並可從一個文件或運行的網絡中讀取數據包。

在 CentOS、Fedora、RHEL 等 Linux 發行版本中安裝 etherape 是一件容易的事,因為在它們的官方軟件倉庫中就可以找到 etherape。我們可以像下面展示的命令那樣使用 yum 包管理器來安裝它:

 yum install etherape

我們也可以使用下面的命令在 Ubuntu、Debian 及它們的衍生發行版本中使用 apt 包管理器來安裝 EtherApe :

sudo apt-get install etherape

在 EtherApe 安裝到你的系統之後,我們需要像下面那樣以 root 權限來運行 etherape:

sudo etherape

然後, etherape 的 圖形用戶界面 便會被執行。接著,在菜單上面的 捕捉 選項下,我們可以選擇 模式(IP,鏈路層,TCP) 和 接口。一切設定完畢後,我們需要點擊 開始 按鈕。接著我們便會看到類似下面截圖的東西:


你可能不知道的Linux網絡工具一



分享到:


相關文章: