SNMP 協議簡介隨著網絡技術的飛速發展,企業中網絡設備的數量成幾何級數增長,網絡設備的種類也越來越多,這使得企業網絡的管理變得十分復雜。簡單網絡管理協議SNMP(Simple Network Management Protocol)可以實現對不同種類和不同廠商的網絡設備進行統一管理,大大提升了網絡管理的效率。網管系統模型SNMP包括NMS,Agent和MIB等Agent是被管理設備中的一個代理進程。MIB是一個數據庫,它包含了被管理設備所維護的變量。SNMP協議棧SNMP協議位于TCP/IP參考模型的應用層SNMP通過UDP/IP進行數據傳輸。SNMP協議模型SNMP就是用來規定NMS和Agent之間是如何傳遞管理信息的應用層協議。網關站(NMS)對網絡設備發送查詢報文,并接收來自被網關設備的響應及陷阱(Trap)報文。代理(Agent)是運行在被管理設備上的代理進程。被管理設備在接收到NMS發出的請求后,由Agent作出響應操作。Agent的主要功能包括:收集設備狀態信息、實現NMS對設備的遠程操作、向NMS發送告警消息。MIB(Management Information Base)管理信息數據庫(MIB)是一個信息存儲庫,其中包含分屬不同組的許多個數據對象。MIB數據對象以一種樹狀分層結構進行組織,這個樹狀結構中的每個分枝都有一個專用的名字和一個數字形式的標識符。標識符iso.org.dod.internet.mgmt.mib-2.system.sysDescr 還可以用 1.3.6.1.2.1.1.1 來表示。SNMP版本SNMPv1 支持的報文如下圖SNMPv2 增加了的報文如下圖SNMPv3 增加了的報文如下圖SNMPv1/SNMP2c PDU類型SNMP 規定了 5 種協議數據單元 PDU(也就是 SNMP 報文),用來在管理進程和代理之間的交換。get-request 操作:從代理進程處提取一個或多個參數值。get-next-request 操作:從代理進程處提取緊跟當前參數值的下一個參數值。set-request 操作:設置代理進程的一個或多個參數值。get-response 操作:返回的一個或多個參數值。這個操作是由代理進程發出的,它是前面三種操作的響應操作。trap 操作:代理進程主動發出的報文,通知管理進程有某些事情發生。 前面的 3 種操作是由管理進程向代理進程發出的, 后面的 2 個操作是代理進程發給管理進程的, 為了簡化起見, 前面 3 個操作今后叫做 get、 get-next 和 set 操作。在代理進程端是用熟知端口 161 倆接收 get 或 set 報文,而在管理進程端是用熟知端口 162 來接收 trap 報文。SNMPv1/SNMP2c Get/Set報文格式PDU 類型包含兩個字節:前一個字節為類型;后一個字節為長度。SNMPv1 Trap報文格式SNMP2c Trap報文格式SNMPv1 PDU總結SNMPv2c PDU總結SNMPv2c也采用團體名認證。在兼容SNMPv1的同時又擴充了SNMPv1的功能:它提供了更多的操作類型(GetBulk和inform操作);支持更多的數據類型(Counter32等);提供了更豐富的錯誤代碼,能夠更細致地區分錯誤。SNMPv3 PDU 總結SNMPv3主要在安全性方面進行了增強,它采用了USM和VACM技術。USM提供了認證和加密功能,VACM確定用戶是否允許訪問特定的MIB對象以及訪問方式。“1USM(基于用戶的安全模型)USM引入了用戶名和組的概念,可以設置認證和加密功能。認證用于驗證報文發送方的合法性,避免非法用戶的訪問;加密則是對NMS和Agent之間傳輸的報文進行加密,以免被竊聽。通過有無認證和有無加密等功能組合,可以為NMS和Agent之間的通信提供更高的安全性。“2VACM(基于視圖的訪問控制模型)VACM技術定義了組、安全等級、上下文、MIB視圖、訪問策略五個元素,這些元素同時決定用戶是否具有訪問的權限,只有具有了訪問權限的用戶才能管理操作對象。在同一個SNMP實體上可以定義不同的組,組與MIB視圖綁定,組內又可以定義多個用戶。當使用某個用戶名進行訪問的時候,只能訪問對應的MIB視圖定義的對象。整個SNMPv3消息可以使用認證機制,并對EngineID、ContextName、PDU消息體部分進行加密。RequestID、MaxSize、Flags、SecurityModel、SecurityParameters構成SNMPv3消息頭。SNMP Security Models/LevelsSCALANCE XM416 SNMP激活方式“1激活SNMP“2配置SNMP“3設置團體名“4設置Trap“5設置SNMPv3安全組“6設置SNMPv3用戶組“7查看已經設置了的用戶名及所屬組通過OID 查看器OidView查看MIB庫“1OidView連接SCALANCE XM416交換機“2查看創建了的會話“3查看XM416的接口表Python代碼的實現SNMPv2 Get-RequestGet-Request 抓取的報文分析Python代碼的實現 SNMPv2c GetbulkSNMPv2c Getbulk抓取的報文分析SNMPv1 Trap Python代碼的實現SCALANCE X416 SNMPv1 Trap的配置SNMPv1 Trap 抓取的報文分析SCALANCE X416 SNMPv3 安全組的設置SNMPv3 Get-Request Python代碼的實現SNMPv3 Get-Request 抓取的報文分析
- 西門子網絡協議:TCP協議實戰 2024-12-02
- 西門子PROFINET通訊之PN的過程報警 2024-12-02
- 西門子數據塊字節排序的測試 2024-12-02
- 西門子PLC更換CPU后為什么會出問題 2024-12-02
- 西門子屏蔽雙絞線的作用 2024-12-02
- 西門子PLC和變頻器之間通信線纜等電位線的連接注意事項 2024-12-02
- 西門子設備燒壞,什么原因?怎么排查? 2024-12-02
- 西門子CPU緩沖區被IO地址訪問錯誤占滿怎么辦 2024-12-02
- 西門子設備上電前如何檢查? 2024-12-02
- 大變頻器能帶小電機嗎 ? 2024-12-02
- 供電電源對西門子變頻器的影響 2024-12-02
- 西門子PLC什么時候需要設置網關地址 2024-12-02
- 串口通信標準RS232 RS485 RS422的區別 2024-12-02
- 西門子PLC S7-300移植到 S7-1500硬件的移植 2024-12-02
- 西門子S7-300移植到S7-1500_2_先別進行一致性檢查 2024-12-02
聯系方式
- 電 話:13510737515
- 聯系人:董海波
- 手 機:13185520415
- 微 信:13185520415