歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux技術 >> 你可能不知道的 一大波 Linux 網絡工具

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

日期:2017/3/1 17:43:28   编辑:Linux技術

如果要在你的系統上監控網絡,那麼使用命令行工具是非常實用的,並且對於 Linux 用戶來說,有著許許多多現成的工具可以使用,如: nethogs, ntopng, nload, iftop, iptraf, bmon, slurm, tcptrack, cbm, netwatch, collectl, trafshow, cacti, etherape, ipband, jnettop, netspeed 以及 speedometer。

鑒於世上有著許多的 Linux 專家和開發者,顯然還存在其他的網絡監控工具,但在這篇教程中,我不打算將它們所有包括在內。

上面列出的工具都有著自己的獨特之處,但歸根結底,它們都做著監控網絡流量的工作,只是通過各種不同的方法。例如 nethogs 可以被用來展示每個進程的帶寬使用情況,以防你想知道究竟是哪個應用在消耗了你的整個網絡資源; iftop 可以被用來展示每個套接字連接的帶寬使用情況,而像 nload 這類的工具可以幫助你得到有關整個帶寬的信息。

1) nethogs

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

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

對我而言, nethogs 是非常容易使用的,或許是因為我非常喜歡它,以至於我總是在我的 Ubuntu 12.04 LTS 機器中使用它來監控我的網絡帶寬。

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

nethogs -p wlan0

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

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

2) nload

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

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

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

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

nload

我很確信的是:我們關於如何使用 nload 的詳細教程將幫助到新的 Linux 用戶,甚至可以幫助那些正尋找關於 nload 信息的老手。

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

3) 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

我們已經在一個教程中對 slurm 的使用做了介紹,不要忘記和其它使用 Linux 的朋友分享這些知識。

4) 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)

5) 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)

本文由 LCTT 原創翻譯,Linux中國首發。也想加入譯者行列,為開源做一些自己的貢獻麼?歡迎加入LCTT!

翻譯工作和譯文發表僅用於學習和交流目的,翻譯工作遵照CC 協議規定,如果我們的工作有侵犯到您的權益,請及時聯系我們。

歡迎遵照CC 協議規定轉載,敬請在正文中標注並保留原文/譯文鏈接和作者/譯者等信息。

文章僅代表作者的知識和看法,如有不同觀點,請樓下排隊吐槽:D

Copyright © Linux教程網 All Rights Reserved