1、SNMP簡單概述
一、什麼是Snmp
SNMP是英文"Simple Network Management Protocol"的縮寫,中文意思是"簡單網絡管理協議"。SNMP是一種簡單網絡管理協議,它屬於TCP/IP五層協議中的應用層協議,用於網絡管理的協議。SNMP主要用於網絡設備的管理。因爲SNMP協議簡單可靠 ,受到了衆多廠商的歡迎,成爲了目前最爲普遍的網管協議。node
SNMP協議主要由兩大部分構成:SNMP管理站和SNMP代理。SNMP管理站是一箇中心節點,負責收集維護各個SNMP元素的信息,並對這些信息進行處理,最後反饋給網絡管理員;而SNMP代理是運行在各個被管理的網絡節點之上,負責統計該節點的各項信息,而且負責與SNMP管理站交互,接收並執行管理站的命令,上傳各類本地的網絡信息。數據庫
SNMP管理站和SNMP代理之間是鬆散耦合。他們之間的通訊是經過UDP協議完成的。通常狀況下,SNMP管理站經過UDP協議向SNMP代理髮送各類命令,當SNMP代理收到命令後,返回SNMP管理站須要的參數。可是當SNMP代理檢測到網絡元素異常的時候,也能夠主動向SNMP管理站發送消息,通告當前異常情況。數組
SNMP的基本思想:爲不一樣種類的設備、不一樣廠家生產的設備、不一樣型號的設備,定義爲一個統一的接口和協議,使得管理員能夠是使用統一的外觀面對這些須要管理的網絡設備進行管理。經過網絡,管理員能夠管理位於不一樣物理空間的設備,從而大大提升網絡管理的效率,簡化網絡管理員的工做。瀏覽器
SNMP的工做方式:管理員須要向設備獲取數據,因此SNMP提供了【讀】操做;管理員須要向設備執行設置操做,因此SNMP提供了【寫】操做;設備須要在重要情況改變的時候,向管理員通報事件的發生,因此SNMP提供了【Trap】操做。安全
二、SNMP 和 UDP
SNMP採用UDP協議在管理端和agent之間傳輸信息。 SNMP採用UDP 161端口接收和發送請求,162端口接收trap,執行SNMP的設備缺省都必須採用這些端口。SNMP消息所有經過UDP端口161接收,只有Trap信息採用UDP端口162。服務器
三、Snmp版本
SNMP目前共有v1,v2,v3這三個版本: 網絡
- SNMP v1是SNMP協議的最第一版本,不過依然是衆多廠家實現SNMP基本方式。
- SNMP v2一般被指是基於community的SNMP V2。Community實質上就是密碼。
- SNMP v3 是最新版本的SNMP。它對網絡管理最大的貢獻在於其安全性。增長了對認證和密文傳輸的支持。
2、Snmp的實現結構
在具體實現上,SNMP爲管理員提供了一個網管平臺(NMS),又稱爲【管理站】,負責網管命令的發出、數據存儲、及數據分析。【被】監管的設備上運行一個SNMP代理(Agent)),代理實現設備與管理站的SNMP通訊。ide
管理站與代理端經過MIB進行接口統一,MIB定義了設備中的被管理對象。管理站和代理都實現了相應的MIB對象,使得雙方能夠識別對方的數據,實現通訊。管理站向代理申請MIB中定義的數據,代理識別後,將管理設備提供的相關狀態或參數等數據轉換爲MIB定義的格式,應答給管理站,完成一次管理操做。工具
3、Snmp有關的基本概念
一、代理和管理站的模型
Snmp分2種角色:SNMP管理站(manager,咱們的本機127.0.0.1)和SNMP代理(agent, 咱們要操做的機器,好比 192.168.1.144)。管理站指的是運行了能夠執行網絡管理任務軟件的服務器,一般被稱做爲網絡管理工做站(NMS),NMS負責採樣網絡中agent的信息,並接受agent的trap。代理是實際網絡設備中用來實現SNMP功能的部分。代理在UDP的161端口接收NMS的讀寫請求消息,管理站在UDP的162端口接收代理的事件通告消息。因此,一旦獲取設備的訪問權限(community,默認爲public),就能夠訪問設備信息、改寫和配置設備參數。因爲採用UDP協議,不須要在代理和管理站之間保持鏈接。spa
二、SNMP的操做命令
SNMP協議之因此易於使用,這是由於它對外提供了三種用於控制MIB對象的基本操做命令。它們是:Get、Set 和 Trap。
- Get:管理站讀取代理者處對象的值。它是SNMP協議中使用率最高的一個命令,由於該命令是從網絡設備中得到管理信息的基本方式。
- Set:管理站設置代理者處對象的值。它是一個特權命令,由於能夠經過它來改動設備的配置或控制設備的運轉狀態。它能夠設置設備的名稱,關掉一個端口或清除一個地址解析表中的項等。
- Trap: 代理者主動向管理站通報重要事件。它的功能就是在網絡管理系統沒有明確要求的前提下,由管理代理通知網絡管理系統有一些特別的狀況或問題 發生了。若是發生意外狀況,客戶會向服務器的162端口發送一個消息,告知服務器指定的變量值發生了變化。一般由服務器請求而得到的數據由服務器的161 端口接收。Trap 消息能夠用來通知管理站線路的故障、鏈接的終端和恢復、認證失敗等消息。管理站可相應的做出處理。
三、SNMP的消息構成
SNMP協議定義了數據包的格式,及網絡管理員和管理代理之間的信息交換,它還控制着管理代理的MIB數據對象。所以,可用於處理管理代理定義的各類任務。
一條SNMP消息由"版本號"、"SNMP共同體名"和"協議數據單元(PDU)"構成,數據包的長度不是固定的。
- 版本識別符(version identifier):用於說明如今使用的是哪一個版本的SNMP協議,確保SNMP代理使用相同的協議,每一個SNMP代理都直接拋棄與本身協議版本不一樣的數據報。
- 團體名(Community Name):團體(community)是基本的安全機制,用於實現SNMP網絡管理員訪問SNMP管理代理時的身份驗證。相似於密碼,默認值爲 public。團體名(Community name)是管理代理的口令,管理員被容許訪問數據對象的前提就是網絡管理員知道網絡代理的口令。若是把配置管理代理成能夠執行Trap命令,當網絡管理 員用一個錯誤的分區名查詢管理代理時,系統就發送一個autenticationFailure trap報文。
- 協議數據單元(PDU):PDU (協議數據單元)是SNMP消息中的數據區, 即Snmp通訊時報文數據的載體。PDU指明瞭SNMP的消息類型及其相關參數
四、PDU(協議數據單元)
PDU (協議數據單元)是SNMP消息中的數據區, 即Snmp通訊時報文數據的載體。
五、MIB(管理信息庫)
管理信息(MIB)庫能夠理解成爲agent維護的管理對象數據庫,MIB中定義的大部分管理對象的狀態和統計信息均可以被NMS訪問。MIB是一個按照層次結構組織的樹狀結構,每一個被管對象對應樹形結構的一個葉子節點,稱爲一個object,擁有惟一的數字標識符
MIB數據對象以一種樹狀分層結構進行組織,這個樹狀結構中的每一個分枝都有一個專用的名字和一個數字形式的標識符。結構樹的分枝實際表示的是數據對象的邏 輯分組。而樹葉,有時候也叫節點(node),表明了各個數據對象。在結構樹中使用子樹表示增長的中間分枝和增長的樹葉。
使用這個樹狀分層結構,MIB瀏覽器可以以一種方便並且簡潔的方式訪問整個MIB數據庫。MIB瀏覽器是這樣一種工具,它能夠遍歷整棵MIB結構樹,一般 以圖形顯示的形式來表示各個分枝和樹葉對象。能夠經過其數字標識符來查找MIB中的數據對象,這個數字標識符號從結構樹的頂部(或根部)開始,直到各個葉 子節點(即數據對象)爲止。這種訪問方式和文件系統的組織方式一致。二者的主要區別在於文件系統中的路徑名能夠以絕對也能夠以相對方式表示,而MIB數據 對象只能以絕對方式表示,不能使用相對方式。
每個節點都有一個對象標識符(OID)來惟一的標識,每一個節點用數字和字符兩種方式顯示,其中對象標識符OID是由句點隔開的一組整數,也就是從根節點 通向它的路徑。一個帶標號節點能夠擁有包含其它帶標號節點爲它的子樹,若是沒有子樹它就是葉子節點,它包含一個值並被稱爲對象。好比網絡設備名的oid 是.1.3.6.1.2.1.1.5.0,其值爲設備名稱的字符串。
網絡資源被抽象爲對象進行管理。但SNMP中的對象是表示被管資源某一方面的數據變量。對象被標準化爲跨系統的類,對象的集合被組織爲管理信息庫 (MIB)。MIB做爲設在代理者處的管理站訪問點的集合,管理站經過讀取MIB中對象的值來進行網絡監控。管理站能夠在代理者處產生動做,也能夠經過修改變量值改變代理者處的配置。
六、OID(Object Identifier)
每一個管理對象都有本身的OID(Object Identifier),管理對象經過樹狀結構進行組織,OID由樹上的一系列整數組成,整數之間用點( . )分隔開,樹的葉子節點纔是真正可以被管理的對象。
4、H3C交換機配置
一、登陸交換機界面配置
5、添加主機
把交換機當成一臺主機添加進去
添加模板
稍等一下子就會有交換機的流量數據
6、配置報警
找到對應的接口鍵值
假設流量五分鐘的平均值大於40M,那麼表達式以下
而後配置動做,超過預設閾值發送報警信息
配置操做
告警主機:{HOSTNAME1}
告警時間:{EVENT.DATE} {EVENT.TIME}
告警等級:{TRIGGER.SEVERITY}
告警信息:{TRIGGER.NAME}
告警項目:{TRIGGER.KEY1}
問題詳情:{ITEM.NAME}:{ITEM.VALUE}
當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
配置恢復
釘釘機器人報警效果
郵件報警效果