SNMP介紹

Android下簡單使用的SNMP工具
https://github.com/wosika/SNMP4Android

轉(zhuǎn)載:
一、SNMP簡單概述
1.1溪厘、什么是Snmp
  SNMP是英文"Simple Network Management Protocol"的縮寫厚骗,中文意思是"簡單網(wǎng)絡(luò)管理協(xié)議"赡译。SNMP是一種簡單網(wǎng)絡(luò)管理協(xié)議共啃,它屬于TCP/IP五層協(xié)議中的應(yīng)用層協(xié)議居扒,用于網(wǎng)絡(luò)管理的協(xié)議概漱。SNMP主要用于網(wǎng)絡(luò)設(shè)備的管理。由于SNMP協(xié)議簡單可靠 喜喂,受到了眾多廠商的歡迎瓤摧,成為了目前最為廣泛的網(wǎng)管協(xié)議。
  SNMP協(xié)議主要由兩大部分構(gòu)成:SNMP管理站和SNMP代理玉吁。SNMP管理站是一個中心節(jié)點照弥,負(fù)責(zé)收集維護各個SNMP元素的信息,并對這些信息進行處理进副,最后反饋給網(wǎng)絡(luò)管理員这揣;而SNMP代理是運行在各個被管理的網(wǎng)絡(luò)節(jié)點之上,負(fù)責(zé)統(tǒng)計該節(jié)點的各項信息影斑,并且負(fù)責(zé)與SNMP管理站交互给赞,接收并執(zhí)行管理站的命令,上傳各種本地的網(wǎng)絡(luò)信息矫户。
  SNMP管理站和SNMP代理之間是松散耦合片迅。他們之間的通信是通過UDP協(xié)議完成的。一般情況下皆辽,SNMP管理站通過UDP協(xié)議向SNMP代理發(fā)送各種命令柑蛇,當(dāng)SNMP代理收到命令后芥挣,返回SNMP管理站需要的參數(shù)。但是當(dāng)SNMP代理檢測到網(wǎng)絡(luò)元素異常的時候耻台,也可以主動向SNMP管理站發(fā)送消息空免,通告當(dāng)前異常狀況。
  SNMP的基本思想:為不同種類的設(shè)備粘我、不同廠家生產(chǎn)的設(shè)備、不同型號的設(shè)備痹换,定義為一個統(tǒng)一的接口和協(xié)議征字,使得管理員可以是使用統(tǒng)一的外觀面對這些需要管理的網(wǎng)絡(luò)設(shè)備進行管理。通過網(wǎng)絡(luò)娇豫,管理員可以管理位于不同物理空間的設(shè)備匙姜,從而大大提高網(wǎng)絡(luò)管理的效率,簡化網(wǎng)絡(luò)管理員的工作冯痢。
  SNMP的工作方式:管理員需要向設(shè)備獲取數(shù)據(jù)氮昧,所以SNMP提供了【讀】操作;管理員需要向設(shè)備執(zhí)行設(shè)置操作浦楣,所以SNMP提供了【寫】操作袖肥;設(shè)備需要在重要狀況改變的時候,向管理員通報事件的發(fā)生振劳,所以SNMP提供了【Trap】操作椎组。
1.2、SNMP 和 UDP
  SNMP采用UDP協(xié)議在管理端和agent之間傳輸信息历恐。 SNMP采用UDP 161端口接收和發(fā)送請求寸癌,162端口接收trap,執(zhí)行SNMP的設(shè)備缺省都必須采用這些端口弱贼。SNMP消息全部通過UDP端口161接收蒸苇,只有Trap信息采用UDP端口162。
1.3吮旅、Snmp版本
  SNMP目前共有v1溪烤,v2,v3這三個版本:
SNMP v1是SNMP協(xié)議的最初版本庇勃,不過依然是眾多廠家實現(xiàn)SNMP基本方式氛什。
SNMP v2通常被指是基于community的SNMP V2。Community實質(zhì)上就是密碼匪凉。
SNMP v3 是最新版本的SNMP枪眉。它對網(wǎng)絡(luò)管理最大的貢獻在于其安全性。增加了對認(rèn)證和密文傳輸?shù)闹С帧?br> 二再层、Snmp的實現(xiàn)結(jié)構(gòu)
  在具體實現(xiàn)上贸铜,SNMP為管理員提供了一個網(wǎng)管平臺(NMS)堡纬,又稱為【管理站】,負(fù)責(zé)網(wǎng)管命令的發(fā)出蒿秦、數(shù)據(jù)存儲烤镐、及數(shù)據(jù)分析」鞅睿【被】監(jiān)管的設(shè)備上運行一個SNMP代理(Agent))炮叶,代理實現(xiàn)設(shè)備與管理站的SNMP通信。
  
  管理站與代理端通過MIB進行接口統(tǒng)一渡处,MIB定義了設(shè)備中的被管理對象镜悉。管理站和代理都實現(xiàn)了相應(yīng)的MIB對象,使得雙方可以識別對方的數(shù)據(jù)医瘫,實現(xiàn)通信侣肄。管理站向代理申請MIB中定義的數(shù)據(jù),代理識別后醇份,將管理設(shè)備提供的相關(guān)狀態(tài)或參數(shù)等數(shù)據(jù)轉(zhuǎn)換為MIB定義的格式稼锅,應(yīng)答給管理站,完成一次管理操作僚纷。
三矩距、Snmp有關(guān)的基本概念
3.1、代理和管理站的模型
  Snmp分2種角色:SNMP管理站(manager怖竭,我們的本機127.0.0.1)和SNMP代理(agent剩晴, 我們要操作的機器,比如 192.168.1.144)侵状。管理站指的是運行了可以執(zhí)行網(wǎng)絡(luò)管理任務(wù)軟件的服務(wù)器赞弥,通常被稱作為網(wǎng)絡(luò)管理工作站(NMS),NMS負(fù)責(zé)采樣網(wǎng)絡(luò)中agent的信息,并接受agent的trap趣兄。代理是實際網(wǎng)絡(luò)設(shè)備中用來實現(xiàn)SNMP功能的部分绽左。代理在UDP的161端口接收NMS的讀寫請求消息,管理站在UDP的162端口接收代理的事件通告消息艇潭。所以拼窥,一旦獲取設(shè)備的訪問權(quán)限(community,默認(rèn)為public)蹋凝,就可以訪問設(shè)備信息鲁纠、改寫和配置設(shè)備參數(shù)。由于采用UDP協(xié)議鳍寂,不需要在代理和管理站之間保持連接改含。
  
3.2、SNMP的操作命令
  SNMP協(xié)議之所以易于使用迄汛,這是因為它對外提供了三種用于控制MIB對象的基本操作命令捍壤。它們是:Get骤视、Set 和 Trap。
. Get:管理站讀取代理者處對象的值鹃觉。它是SNMP協(xié)議中使用率最高的一個命令专酗,因為該命令是從網(wǎng)絡(luò)設(shè)備中獲得管理信息的基本方式。
. Set:管理站設(shè)置代理者處對象的值盗扇。它是一個特權(quán)命令祷肯,因為可以通過它來改動設(shè)備的配置或控制設(shè)備的運轉(zhuǎn)狀態(tài)。它可以設(shè)置設(shè)備的名稱疗隶,關(guān)掉一個端口或清除一個地址解析表中的項等佑笋。
. Trap: 代理者主動向管理站通報重要事件。它的功能就是在網(wǎng)絡(luò)管理系統(tǒng)沒有明確要求的前提下抽减,由管理代理通知網(wǎng)絡(luò)管理系統(tǒng)有一些特別的情況或問題 發(fā)生了允青。如果發(fā)生意外情況橄碾,客戶會向服務(wù)器的162端口發(fā)送一個消息卵沉,告知服務(wù)器指定的變量值發(fā)生了變化。通常由服務(wù)器請求而獲得的數(shù)據(jù)由服務(wù)器的161 端口接收法牲。Trap 消息可以用來通知管理站線路的故障史汗、連接的終端和恢復(fù)、認(rèn)證失敗等消息拒垃。管理站可相應(yīng)的作出處理停撞。
3.3、SNMP的消息構(gòu)成
  SNMP協(xié)議定義了數(shù)據(jù)包的格式悼瓮,及網(wǎng)絡(luò)管理員和管理代理之間的信息交換戈毒,它還控制著管理代理的MIB數(shù)據(jù)對象。因此横堡,可用于處理管理代理定義的各種任務(wù)埋市。 一條SNMP消息由"版本號"、"SNMP共同體名"和"協(xié)議數(shù)據(jù)單元(PDU)"構(gòu)成命贴,數(shù)據(jù)包的長度不是固定的道宅。
  
版本識別符(version identifier):用于說明現(xiàn)在使用的是哪個版本的SNMP協(xié)議,確保SNMP代理使用相同的協(xié)議胸蛛,每個SNMP代理都直接拋棄與自己協(xié)議版本不同的數(shù)據(jù)報污茵。
團體名(Community Name):團體(community)是基本的安全機制,用于實現(xiàn)SNMP網(wǎng)絡(luò)管理員訪問SNMP管理代理時的身份驗證葬项。類似于密碼泞当,默認(rèn)值為 public。團體名(Community name)是管理代理的口令民珍,管理員被允許訪問數(shù)據(jù)對象的前提就是網(wǎng)絡(luò)管理員知道網(wǎng)絡(luò)代理的口令零蓉。如果把配置管理代理成可以執(zhí)行Trap命令笤受,當(dāng)網(wǎng)絡(luò)管理 員用一個錯誤的分區(qū)名查詢管理代理時,系統(tǒng)就發(fā)送一個autenticationFailure trap報文敌蜂。
協(xié)議數(shù)據(jù)單元(PDU):PDU (協(xié)議數(shù)據(jù)單元)是SNMP消息中的數(shù)據(jù)區(qū)箩兽, 即Snmp通信時報文數(shù)據(jù)的載體。PDU指明了SNMP的消息類型及其相關(guān)參數(shù)
3.4章喉、PDU(協(xié)議數(shù)據(jù)單元)
  PDU (協(xié)議數(shù)據(jù)單元)是SNMP消息中的數(shù)據(jù)區(qū)汗贫, 即Snmp通信時報文數(shù)據(jù)的載體。
3.5秸脱、MIB(管理信息庫)
  管理信息(MIB)庫可以理解成為agent維護的管理對象數(shù)據(jù)庫落包,MIB中定義的大部分管理對象的狀態(tài)和統(tǒng)計信息都可以被NMS訪問。MIB是一個按照層次結(jié)構(gòu)組織的樹狀結(jié)構(gòu)摊唇,每個被管對象對應(yīng)樹形結(jié)構(gòu)的一個葉子節(jié)點咐蝇,稱為一個object,擁有唯一的數(shù)字標(biāo)識符
  MIB數(shù)據(jù)對象以一種樹狀分層結(jié)構(gòu)進行組織巷查,這個樹狀結(jié)構(gòu)中的每個分枝都有一個專用的名字和一個數(shù)字形式的標(biāo)識符有序。結(jié)構(gòu)樹的分枝實際表示的是數(shù)據(jù)對象的邏 輯分組。而樹葉岛请,有時候也叫節(jié)點(node)旭寿,代表了各個數(shù)據(jù)對象。在結(jié)構(gòu)樹中使用子樹表示增加的中間分枝和增加的樹葉崇败。 使用這個樹狀分層結(jié)構(gòu)盅称,MIB瀏覽器能夠以一種方便而且簡潔的方式訪問整個MIB數(shù)據(jù)庫。MIB瀏覽器是這樣一種工具后室,它可以遍歷整棵MIB結(jié)構(gòu)樹缩膝,通常 以圖形顯示的形式來表示各個分枝和樹葉對象“杜可以通過其數(shù)字標(biāo)識符來查找MIB中的數(shù)據(jù)對象疾层,這個數(shù)字標(biāo)識符號從結(jié)構(gòu)樹的頂部(或根部)開始,直到各個葉 子節(jié)點(即數(shù)據(jù)對象)為止松申。這種訪問方式和文件系統(tǒng)的組織方式一致云芦。兩者的主要區(qū)別在于文件系統(tǒng)中的路徑名可以以絕對也可以以相對方式表示,而MIB數(shù)據(jù) 對象只能以絕對方式表示贸桶,不能使用相對方式舅逸。 每一個節(jié)點都有一個對象標(biāo)識符(OID)來唯一的標(biāo)識,每個節(jié)點用數(shù)字和字符兩種方式顯示皇筛,其中對象標(biāo)識符OID是由句點隔開的一組整數(shù)琉历,也就是從根節(jié)點 通向它的路徑。一個帶標(biāo)號節(jié)點可以擁有包含其它帶標(biāo)號節(jié)點為它的子樹,如果沒有子樹它就是葉子節(jié)點旗笔,它包含一個值并被稱為對象彪置。比如網(wǎng)絡(luò)設(shè)備名的oid 是.1.3.6.1.2.1.1.5.0,其值為設(shè)備名稱的字符串蝇恶。 網(wǎng)絡(luò)資源被抽象為對象進行管理拳魁。但SNMP中的對象是表示被管資源某一方面的數(shù)據(jù)變量。對象被標(biāo)準(zhǔn)化為跨系統(tǒng)的類撮弧,對象的集合被組織為管理信息庫 (MIB)潘懊。MIB作為設(shè)在代理者處的管理站訪問點的集合,管理站通過讀取MIB中對象的值來進行網(wǎng)絡(luò)監(jiān)控贿衍。管理站可以在代理者處產(chǎn)生動作授舟,也可以通過修改變量值改變代理者處的配置。
3.6贸辈、OID(Object Identifier)
  每個管理對象都有自己的OID(Object Identifier)释树,管理對象通過樹狀結(jié)構(gòu)進行組織,OID由樹上的一系列整數(shù)組成擎淤,整數(shù)之間用點( . )分隔開奢啥,樹的葉子節(jié)點才是真正能夠被管理的對象。

轉(zhuǎn)自:https://blog.csdn.net/jonbb/article/details/51353201

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末揉燃,一起剝皮案震驚了整個濱河市扫尺,隨后出現(xiàn)的幾起案子筋栋,更是在濱河造成了極大的恐慌炊汤,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,104評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件弊攘,死亡現(xiàn)場離奇詭異抢腐,居然都是意外死亡,警方通過查閱死者的電腦和手機襟交,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評論 3 399
  • 文/潘曉璐 我一進店門迈倍,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人捣域,你說我怎么就攤上這事啼染。” “怎么了焕梅?”我有些...
    開封第一講書人閱讀 168,697評論 0 360
  • 文/不壞的土叔 我叫張陵迹鹅,是天一觀的道長。 經(jīng)常有香客問我贞言,道長斜棚,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,836評論 1 298
  • 正文 為了忘掉前任,我火速辦了婚禮弟蚀,結(jié)果婚禮上蚤霞,老公的妹妹穿的比我還像新娘。我一直安慰自己义钉,他們只是感情好昧绣,可當(dāng)我...
    茶點故事閱讀 68,851評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著捶闸,像睡著了一般滞乙。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上鉴嗤,一...
    開封第一講書人閱讀 52,441評論 1 310
  • 那天斩启,我揣著相機與錄音,去河邊找鬼醉锅。 笑死兔簇,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的硬耍。 我是一名探鬼主播垄琐,決...
    沈念sama閱讀 40,992評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼经柴!你這毒婦竟也來了狸窘?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,899評論 0 276
  • 序言:老撾萬榮一對情侶失蹤坯认,失蹤者是張志新(化名)和其女友劉穎翻擒,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體牛哺,經(jīng)...
    沈念sama閱讀 46,457評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡陋气,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,529評論 3 341
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了引润。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片巩趁。...
    茶點故事閱讀 40,664評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖淳附,靈堂內(nèi)的尸體忽然破棺而出议慰,到底是詐尸還是另有隱情,我是刑警寧澤奴曙,帶...
    沈念sama閱讀 36,346評論 5 350
  • 正文 年R本政府宣布别凹,位于F島的核電站,受9級特大地震影響缆毁,放射性物質(zhì)發(fā)生泄漏番川。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,025評論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望颁督。 院中可真熱鬧践啄,春花似錦、人聲如沸沉御。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽吠裆。三九已至伐谈,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間试疙,已是汗流浹背诵棵。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留祝旷,地道東北人履澳。 一個月前我還...
    沈念sama閱讀 49,081評論 3 377
  • 正文 我出身青樓,卻偏偏與公主長得像怀跛,于是被迫代替她去往敵國和親距贷。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,675評論 2 359

推薦閱讀更多精彩內(nèi)容