本文將深入探討初學者需要了解的關於 SNMP 的所有基礎知識。
SNMP,即簡單網路管理協定,是一種標準化的網路協議,專門用於收集和整理網路設備上的資訊。它透過 UDP 埠 161 執行此操作。SNMP 最初於 1980 年代開發,當時許多 IT 組織的規模和複雜性都在快速增長。如今,在網路監控領域,SNMP 仍然是最廣泛使用的網路協定。
接下來,我將詳細解釋 SNMP 的各個方面。讓我們開始吧!
SNMP:定義與重要性
SNMP 代表簡單網路管理協定。它提供了一個框架,可以用來查詢設備的效能和配置,而不論該機器執行的是何種硬體或軟體。它主要用於管理和監控所有透過網路連接的設備。想像一下,如果一個組織有數千台設備連接到網路上。逐一監視每個設備以檢查它們是否正常運作將是一項繁瑣的工作,並且容易產生人為錯誤。這正是 SNMP 發揮作用的地方。它可以自動監控所有這些設備並檢查其狀態,而無需人工干預。
SNMP 對於網路管理至關重要。如果沒有 SNMP,網路管理工具將難以識別設備並監控它們的效能。追蹤具有多個供應商的網路變更也將變得非常具有挑戰性。
SNMP 版本 1 設計於 80 年代,安全性較弱。它使用未加密的預設憑證,這意味著任何有權存取網路的人都可以攔截透過 SNMP 版本 1 傳輸的資訊。未經授權的設備甚至可以偽裝成合法的管理員。不幸的是,SNMP 版本 1 仍然在許多尚未更新的網路設備中廣泛使用。
SNMP 版本 2 在效能方面有所改進,但已被 SNMP 版本 3 取代,SNMP 版本 3 仍然是最新的協定,也是最安全的。遷移到 SNMP 版本 3 的主要好處是它允許資料加密並強制管理員和代理進行身分驗證。這降低了未經授權的設備身分驗證的風險。它還為傳輸的資料提供隱私保護。我強烈建議盡可能使用 SNMP 版本 3,尤其是在公共網路上使用 SNMP 時。
關於 SNMP,您應該知道的最後一件事是,出於安全考量,預設情況下它在工作設備上是不啟用的。如果您需要監控您的網路設備,您必須登入它們並啟用 SNMP 監控。
SNMP 運行時元件
- SNMP 管理器:它是負責監控整個 SNMP 網路的中央系統。它可以控制 SNMP 網路中的所有 SNMP 代理。它向 SNMP 代理發送請求以定期檢查它們的狀態。
- SNMP 代理:它是運行在 SNMP 管理的設備和資源上的進程。它保留與受管理設備相關的所有資料,例如頻寬使用情況、CPU 使用情況、磁碟空間,並使用必要的信息回應 SNMP 管理器查詢。
- SNMP 管理的設備和資源:是由 SNMP 管理器管理的網路實體。代理在這些設備和網元上運行。此類設備的示例可以是路由器、交換機或印表機等。
- 管理資訊庫(MIB):它是一個副檔名為 .mib 的資料結構文字檔案,由 SNMP 管理器查詢和控制的網路上設備所使用的所有資料物件(變數)組成。它包含不同受管理物件的物件識別碼 (OID)。此外,它還提供存取權限、名稱、狀態、被管理物件資料的屬性定義。
SNMP 命令
以下是您必須了解的一些常用 SNMP 命令。
- Get Request:此請求命令由 SNMP 管理器發出,用於檢索一個或多個變數的值。
- Set Request:SNMP 管理器使用此請求命令向 SNMP 代理發出命令。
- GetNext Request:此請求命令由 SNMP 管理器發送給網路中的代理,以獲取 MIB 樹中下一條記錄的值。
- GetBulk Request:此請求命令由 SNMP 管理器發送給代理,以透過執行多個 GetNext 請求命令來檢索大量資料。
- SNMP Trap:與上面的 SNMP 管理器命令不同,此命令是由代理發起的。此命令用於通知 SNMP 管理器有關事件的資訊,例如故障或錯誤。
- SNMP Inform:此命令用於確認 SNMP 管理器已收到來自代理的 Trap 命令。
- SNMP Response:此命令由代理發送給 SNMP 管理器,其中包含管理器要求的資訊。
什麼是 SNMP 埠?
SNMP 管理器透過使用 SNMP 埠與 SNMP 代理進行通訊。例如,SNMP 管理器使用埠 161 向代理發送命令,代理使用埠 162 發送 SNMP Trap 以回應 SNMP 管理器的命令。
SNMP 如何運作?
SNMP 具有基於客戶端-伺服器模型的簡單架構。伺服器稱為管理器。它們收集和處理有關網路設備的資訊。客戶端稱為代理。代理是連接到您要從中收集資訊的網路的設備或設備組件。管理員透過 SNMP 收集的資料具有樹狀層次結構,資料樹有多個分支,稱為管理資訊庫或 MIB。
MIB 用於定義一組可以從特定代理收集的資料點。這些資料點組稱為物件識別碼或 OID。MIB 是 OID 的邏輯分組。目前有三個不同版本的 SNMP,每個版本都有不同的功能,尤其是在安全方面。
讓我們舉一個例子,假設您想監控您組織的一個非常關鍵的連結。您想知道它何時斷線或何時恢復,然後您想根據它來改變一些設定。為此,您可以在某處運行 SNMP 管理器。現在,SNMP 代理將是一個目前被監控並要求提供這些詳細資訊的網路設備。它可以是路由器或交換器,也可以是防火牆。
SNMP 管理器將向 SNMP 代理發送查詢請求,SNMP 代理將根據要求發送 Trap 通知。例如,如果連結開啟或關閉,代理可以向 SNMP 管理器發送 Trap 通知。
許多供應商,例如 SolarWinds,都配置了監控工具,在發生任何事件時會發送電子郵件。如果您的關鍵業務連結出現故障,您將收到一封電子郵件。
因此,您可以設定您的監控工具,如果它從 SNMP 代理收到某個 Trap 通知,它可以產生一封電子郵件並將其發送給網路團隊。這樣,您就不必請人持續監控特定連結。這就是 SNMP 幫助管理網路基礎內容的方式。
SNMP 管理的限制
SNMP 提供了許多與監控網路相關的功能。它仍然存在一些局限性和缺點。
- 儘管 SNMP v3 具有更好的安全性,但 SNMP v1 和 v2 容易受到許多安全問題的影響。
- 此外,使用 SNMP,您只能監控那些啟用了 SNMP 的設備。
- 它無助於理解用戶體驗的洞察力,它僅處理特定於設備的指標。
結論 👩💻
SNMP 是一種出色的網路監控工具,SNMP 第 3 版是您應該使用的最安全版本。您將能夠輕鬆監控網路中所有支援 SNMP 的設備並追蹤它們的狀態。因此,請繼續為您的網路設定 SNMP。
喜歡閱讀這篇文章嗎?為什麼不與世界分享?