简单网络管理かんり协议

本页使用了标题或全文手工转换
维基百科ひゃっか自由じゆうてき百科ひゃっかぜん
重定しげさだこうSimple Network Management Protocol

简单网络管理かんり协议(SNMP,Simple Network Management Protocol)构成りょうあみぎわもう工程こうてい工作こうさくしょう(IETF,Internet Engineering Task Force)てい义的Internet协议ぞくてきいち部分ぶぶん。该协议能够支持しじもう管理かんり系統けいとうよう以监测连せっいた网络じょうてき设备いやゆうにんなん引起管理かんりじょう关注てきじょう况。它由いちくみもう管理かんりてき標準ひょうじゅん組成そせい包含ほうがんいち應用おうようそう協議きょうぎ(application layer protocol)、資料しりょうしき(database schema),いちくみ資料しりょう物件ぶっけん

概論がいろん基礎きそ觀念かんねん[编辑]

ざい典型てんけいてきSNMP用法ようほうちゅうゆう許多きょた系統けいとう管理かんり,而且ゆう一或多個系統在管理它們。まい一個被管理的系統上有運行一個叫做代理者(agent)てき軟體もとけん,且透過とうかSNMPたい管理かんり系統けいとう報告ほうこく訊。

基本きほんじょう,SNMP代理だいりしゃ以變すうていげん管理かんり資料しりょう管理かんり系統けいとう透過とうかGETGETNEXTGETBULK協定きょうてい指令しれいかい訊,ある代理だいりしゃざいぼつゆう詢問てき情況じょうきょう使用しようTRAPあるINFORM傳送でんそう資料しりょう管理かんり系統けいとう也可以傳送でんそう配置はいち更新こうしんあるひかえせいてき請求せいきゅう透過とうかSET協定きょうてい指令しれいたちいた主動しゅどう管理かんり系統けいとうてき目的もくてき配置はいちひかえせい指令しれいただゆうとうもう基本きほん結構けっこう需要じゅよう改變かいへんてき時候じこう使用しよう,而監ひかえ指令しれいそく通常つうじょう常態じょうたい性的せいてき工作こうさく

透過とうかSNMPそん取的とりてき變數へんすう以階そうてき方式ほうしき結合けつごう。這些ぶんそう其他もとすうよりどころれい如變すうてき類型るいけい描述)以管理かんりしんいきMIBs)てき方式ほうしき描述。

SNMP基本きほんもとけん[编辑]

いちSNMP管理かんりてきもうよしれつ三個關鍵元件組成:

  1. あみ管理かんり系統けいとう(NMSs,Network-management systems)
  2. 管理かんりてき設備せつび(managed device)
  3. 代理だいりしゃ(agent)

一個網路管理系統執行應用程式,以該應用おうようほどしき監視かんしなみひかえせい管理かんりてき設備せつび。也稱ため管理かんり實體じったい(managing entity),あみ管理かんりいんざい這兒あずかもう裝置そうち進行しんこう互動。あみ管理かんり系統けいとう提供ていきょうもう管理かんり需要じゅようてき大量たいりょう運算うんざん記憶きおく資源しげん。一個被管理的網路可能存在一個以上的網路管理系統。

一個被管理的設備是一個網路節點,它包含ほうがん一個存在於被管理的網路中的SNMP代理だいりしゃ管理かんりてき設備せつび透過とうか管理かんりしんいき(MIB)收集しゅうしゅうなみもうかそん管理かんり訊,なみ且讓もう管理かんり系統けいとうのう透過とうかSNMP代理だいりしゃ取得しゅとく這項訊。

代理だいりしゃ一種存在於被管理的設備中的網路管理軟體模組。代理だいりしゃひかえせい本地ほんじ機器ききてき管理かんり訊,以和SNMPしょうようてき格式かくしき傳送でんそう這項訊。

SNMP[编辑]

したがえ體系たいけい結構けっこううえらいこう,SNMPかまちよしぬし代理だいり代理だいり管理かんり組成そせい

しゅ代理だいり[编辑]

しゅ代理だいりいちざい執行しっこうSNMPてきもうもとけんじょううんさくてき軟體,かいおうしたがえ管理かんり發出はっしゅつてきSNMP要求ようきゅう。它的かくしょく類似るいじきゃくはし/伺服結構けっこう(Client/Server)術語じゅつごちゅうてき伺服しゅ代理だいり依賴いらい代理だいり提供ていきょうゆうせき特定とくていこうのうてき管理かんり訊。

如果系統けいとうとうぜんようゆう管理かんりてき系統けいとうしゅ代理だいり就會でん遞它したがえ一個或多個子代理處收到的請求。這些代理だいりざいいち系統けいとう以及たい系統けいとう進行しんこうかんはか管理かんり操作そうさてきかいめん內為關心かんしんてき物件ぶっけんけんしゅ代理だいり和子わこ代理だいりてきかくしょく合併がっぺいざい這種情況じょうきょうわが們可以簡單かんたんてきしょうため代理だいり(agent)。

代理だいり[编辑]

代理だいりいちざい執行しっこうSNMPてきもうもとけんじょううんさくてき軟體,執行しっこうざい特定とくてい系統的けいとうてき特定とくてい管理かんりしんいき(MIB,Management Information Base)ちゅう定義ていぎてき訊和管理かんりこうのう代理だいりてきいち些能りょくゆう

  • さがせしゅうしゅ代理だいりてき
  • 配置はいちぬし代理だいりてきさんすう
  • かいおう管理かんりしゃてき要求ようきゅう
  • さんせい警告けいこくあるおちい

たい協定きょうてい管理かんり結構けっこうてき良好りょうこう分離ぶんり使とく使用しようSNMPらいかんはか管理かんりどう一網路內上百的不同子系統非常簡單。MIB模型もけい運行うんこう管理かんりOSI參考さんこう模型もけいてき所有しょゆうそうなみ以擴てんいたりしょ資料しりょう電子でんし郵件以及J2EE參考さんこう模型もけいるいてき應用おうよう

管理かんり[编辑]

管理かんりしゃあるもの管理かんり提供ていきょうだいさんもとけん。它和いちきゃくはし/伺服結構けっこうしたてきようはしいちよう工作こうさく。它根據こんきょ一個管理員或應用程式的行為發出管理操作的請求,也接收せっしゅうしたがえ代理だいりしょ獲得かくとくてきTRAP。

SNMP協議きょうぎ[编辑]

SNMPだいいちはんSMI規格きかくてき資料しりょうがたたい[编辑]

SNMPだいいちはんSMI指定してい許多きょたSMI規格きかくてき資料しりょうがたたい,它們ぶんためりょう大類おおるい

  1. 簡單かんたん資料しりょうがたたい
  2. 應用おうよう資料しりょうがたたい

SNMPだい二版和管理資訊結構[编辑]

SNMPだいはんSMIざいRFC 2578ちゅう描述,它在SNMPだいいちはんてきSMI規格きかく資料しりょうがたたいじょう進行しんこう增加ぞうか強化きょうかれい如位もとくし(bit strings)、あみ(network addresses)かず計數けいすう(counters)。

SNMP協定きょうていざいOSI模型もけいてき應用おうようそうだいななそううんさくざいだいいちはんちゅう指定していしゅ核心かくしんPDU:

  1. GET REQUEST
  2. GET NEXT REQUEST
  3. GET RESPONSE
  4. SET REQUEST
  5. TRAP

其他PDUざいSNMPだいはん加入かにゅう包含ほうがん

  1. GETBULK REQUEST
  2. INFORM

SNMPだいはんSMI訊模かたまり[编辑]

SNMPだいはんSMI也指定していりょう訊模かたまりらい詳細しょうさい說明せつめいいちぐんしょう關連かんれんてき定義ていぎゆうさんしゅSMI訊模かたまり:MIBかたまりかいおう狀態じょうたい能力のうりょく狀態じょうたい

SNMPだいさんはん[编辑]

SNMPだいさんはんゆかりRFC 3411-RFC 3418定義ていぎ主要しゅよう增加ぞうかSNMPざい安全あんぜんせいどおはし配置はいち方面ほうめんてき強化きょうか

SNMPだい三版提供重要的安全性功能:

  • しんいきかんせいせい保證ほしょうふうつつみざい傳送でんそうちゅうぼつゆう竄改。
  • 認證にんしょうけんけんしんいきらい正確せいかくてきらいげん
  • ふうつつみみつ:避免授權てきらいげん窺探。

开发使用しよう[编辑]

だいいちはん[编辑]

SNMPてきだいいちRFC系列けいれつ现在1988ねん

  1. RFC 1065もと于TCP/IP网络てき管理かんりしんいきてき结构认定
  2. RFC 1066:以基于TCP/IP网络てき网络管理かんり为基础的管理かんりしんいき
  3. RFC 1067:一个简单网络管理协议

這些協議きょうぎ廢除はいじょ經由けいゆ

  1. RFC 1155もと于TCP/IP网络てき管理かんりしんいきてき结构认定
  2. RFC 1156:以基于TCP/IP网络てき网络管理かんり为基础的管理かんりしんいき
  3. RFC 1157:一个简单网络管理协议

SNMP协议工作こうさくざいOSI模型もけいてき应用层(だいなな层)。它(ざいだいいちはんちゅう指定していりょう四种核心协议数据单元(PDU):

  1. GET,ようらいいたいちじょう管理かんりしんいき
  2. GETNEXT,ようらいはん复得いた管理かんりしんいきてき序列じょれつ
  3. SET,もちいらい给一个被管理的子系统制造一个变化
  4. TRAP,もちいらい报告一个关于被管理子系统的警告或其他异步事件

典型てんけいてき,SNMP为代理だいり使用しようUDPはしこう161,为管理かんり使用しようUDPはしこう162。

だい一版因為其脆弱的安全性而備受爭議。きゃくはしてき認證にんしょう使用しようあかり傳送でんそうざい80年代ねんだい,SNMPだいいちはん設計せっけい出來できてき時期じきもうぎわもう標準ひょうじゅんてき認證にんしょう/安全あんぜんなみ主要しゅようてき協議きょうぎ設計せっけい團體だんたいしょ重視じゅうし

だいはん[编辑]

SNMPだいはんRFC 1441RFC 1452おさむ订了だい一版并且包含了在性能、安全あんぜんつくえみつせい管理かんりしゃ通信つうしん这些领域てきあらため进。它引にゅうりょうGETBULK以取だい反覆はんぷくてきGETNEXT,藉以ざい单个请求ちゅう获取大量たいりょうてき管理かんりすうすえしか而,SNMPだい二版的新安全系統被認為過於複雜,而不こう接受せつじゅ

SNMP v2c(もと於社ぐんてきSNMPだいはん定義ていぎ於RFC 1901–RFC 1908,一開始也非正式的被稱為SNMPだい1.5はん。SNMPv2c包含ほうがんSNMPだい二版除了受爭議的新SNMPだい二版安全模型以外的部份,なみ以SNMPだい一版的簡單的基於社群的安全性方案取而代之。

SNMP v2u(もと使用しようしゃてきSNMPだいはん定義ていぎ於RFC 1909–RFC 1910。這是いちSNMPだいいちはんSNMPだいはんてき折衷せっちゅう方案ほうあんためし提供ていきょうSNMPだいいちはんさらこのみてき安全あんぜんせいまた遭遇そうぐうSNMPだいはんてきだか複雜ふくざつ。這產せいいち商業しょうぎょうてき變種へんしゅしょうためSNMP v2*,而且它的せい最後さいごSNMPだい三版的兩個安全性框架之一採用。

SNMPだいいちはんSNMPv2cてき操作性そうさせいわる[编辑]

ざい目前もくぜんてき指定していちゅう,SNMPだいはんSNMPだい一版在兩個關鍵領域不相容:訊息格式かくしき協議きょうぎ操作そうさ。SNMPv2c訊息使用しようSNMPだい一版不同的標頭和協議數據單元(PDU)格式かくしき。SNMPv2c也使用しよう兩個りゃんこぼつゆうざいSNMPだいいちはん指定していてき協議きょうぎ操作そうさ。此外,RFC 1908定義ていぎ兩個りゃんこ可能かのうてきSNMPだいいちはん/だいはん共存きょうぞん策略さくりゃく代理だいり伺服代理だいり(proxy agents)かずそうもう管理かんり系統けいとう(bilingual network-management systems)。

だいさんはん[编辑]

Internet工程こうてい工作こうさくしょう组(IETF)ざいRFC3411-RFC3418(STD0062)ちゅうてい义的SNMPだいさんはんさく为2004ねんてき标准版本はんぽん。IETFしょうさきまえてき版本はんぽんてい为“Obsolete”ある“Historical”。

实际じょう,SNMP实现通常つうじょう支持しじ版本はんぽん典型てんけいてきSNMPv1、SNMPv2c以及SNMPv3。まいり见RFC3584“Internet标准网络管理かんりかまちだいいちさんはん间的共存きょうぞん”。

SNMPだいさんはん提供ていきょうさんこう重要じゅうようてき服務ふくむ認證にんしょうかくれわたしそんひかえせい

使用しよう举例[编辑]

SNMP v1 v2c[编辑]

  • かんひかえ裝置そうち正常せいじょう運行うんこう時間じかん (sysUpTimeInstance)
  • 作業さぎょう系統けいとう版本はんぽんきよしたん (sysDescr)
  • 收集しゅうしゅうかいめん訊 (ifName, ifDescr, ifSpeed, ifType, ifPhysAddr)
  • 測量そくりょうもうかいめん吞吐りょう (ifInOctets, ifOutOctets)
  • 查詢どおはしARPかい (ipNetToMedia)

下面かめんてき输出さく为在一个路由器上的snmpwalkてきれい展示てんじりょう设备てき基本きほんしんいき

 snmpwalk -c public punch system

 SNMPv2-MIB::sysDescr.0 = STRING: Cisco Internetwork Operating System Software IOS (tm) C2600
 Software (C2600-IO3-M), Version 12.2(15)T5, RELEASE SOFTWARE (fc1)
 TAC Support: http://www.cisco.com/tac

 Compiled Thu 12-Jun-03 15:49 by eaarm
 SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::enterprises.9.1.187
 DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (835747999) 96 days, 17:31:19.99
 SNMPv2-MIB::sysContact.0 = STRING: wikiuser
 SNMPv2-MIB::sysName.0 = STRING: punch
 SNMPv2-MIB::sysLocation.0 = STRING: test
 SNMPv2-MIB::sysServices.0 = INTEGER: 78
 SNMPv2-MIB::sysORLastChange.0 = Timeticks: (0) 0:00:00.00

SNMP v3[编辑]

よし於 SNMP v3 きょうりょう安全あんぜん設計せっけいそん取上とりあげよう提供ていきょう較多

透過とうか工具こうぐ指令しれいそん[编辑]

ざい Shell 環境かんきょう安全あんぜん取得しゅとくいちだいぬし所有しょゆう CPU Core 使用しようじょうきょうてき方法ほうほう

  • -l authPriv 表示ひょうじよう認證にんしょう也要でん輸加みつ
  • -a ため認證にんしょうみつ保護ほご方式ほうしき -A ため認證にんしょうみつ
  • -x ためでん輸加みつ方式ほうしき -X ためでん輸密鑰
  • 1.3.6.1.2.1.25.3.3.1.2 表示ひょうじよう監視かんし所有しょゆう CPU Core 使用しようじょうきょう
snmpwalk -v 3 -l authPriv -u user \
   -a SHA -A userpass \
   -x AES -X userpass \
   10.33.1.1 \
   1.3.6.1.2.1.25.3.3.1.2

HOST-RESOURCES-MIB::hrProcessorLoad.196608 = INTEGER: 7
HOST-RESOURCES-MIB::hrProcessorLoad.196609 = INTEGER: 8

透過とうか PHP そん[编辑]

if (function_exists('snmp3_get')) {
	$result = snmp3_real_walk(
		'10.33.1.1',         // よう監視かんしてきあるじ
		'user',                  // そん SNMP 服務ふくむてきとばりごう
		'authPriv',              // 安全あんぜん等級とうきゅう (よう認證にんしょう也要でん輸加みつ)
		'SHA',                   // 認證にんしょうみつ碼的保護ほご方式ほうしき
		'userpass',              // 認證にんしょうようみつ
		'AES',                   // つて輸加みつ方式ほうしき
		'userpass',              // つて輸用みつ
		'1.3.6.1.2.1.25.3.3.1.2' // かん所有しょゆう CPU core てきまけ狀況じょうきょうへんごうため CPU まけ狀況じょうきょうてき OID
	);
	print_r($result);
}

Array
(
    [HOST-RESOURCES-MIB::hrProcessorLoad.196608] => INTEGER: 7
    [HOST-RESOURCES-MIB::hrProcessorLoad.196609] => INTEGER: 11
)

經常けいじょう監視かんしてきすうよりどころ[编辑]

處理しょり記憶きおくたいもうかそん設備せつびあみ環境かんきょうためさいつね監視かんしてき項目こうもく,這些項目こうもくてきほそぶし訊如下表かひょう[1] [2] [3]

項目こうもく そん方式ほうしき OID MIB
處理しょり
使用しようしゃ佔用時間じかん GET .1.3.6.1.4.1.2021.11.9.0 UCD-SNMP-MIB::ssCpuUser
系統けいとう佔用時間じかん GET .1.3.6.1.4.1.2021.11.10.0 UCD-SNMP-MIB::ssCpuSystem
あいだおけ時間じかん GET .1.3.6.1.4.1.2021.11.11.0 UCD-SNMP-MIB::ssCpuIdle
まい Core てき用量ようりょう WALK .1.3.6.1.2.1.25.3.3.1.2 HOST-RESOURCES-MIB::hrProcessorLoad
記憶きおくたい
記憶きおくたい容量ようりょう GET .1.3.6.1.4.1.2021.4.5.0 UCD-SNMP-MIB::memTotalReal
記憶きおくたい消耗しょうもうりょう GET .1.3.6.1.4.1.2021.4.6.0 UCD-SNMP-MIB::memAvailReal
記憶きおくたい剩餘じょうよりょう GET .1.3.6.1.4.1.2021.4.11.0 UCD-SNMP-MIB::memTotalFree
きょなずらえ記憶きおくたい容量ようりょう GET .1.3.6.1.4.1.2021.4.3.0 UCD-SNMP-MIB::memTotalSwap
きょなずらえ記憶きおくたい剩餘じょうよりょう GET .1.3.6.1.4.1.2021.4.4.0 UCD-SNMP-MIB::memAvailSwap
もうかそん設備せつび
かく磁碟容量ようりょう WALK .1.3.6.1.4.1.2021.9.1.6.1 UCD-SNMP-MIB::dskTotal
かく磁碟消耗しょうもうりょう WALK .1.3.6.1.4.1.2021.9.1.7.1 UCD-SNMP-MIB::dskAvail
かく磁碟消耗しょうもうりょうひゃくふん WALK .1.3.6.1.4.1.2021.9.1.9.1 UCD-SNMP-MIB::dskPercent
あみ環境かんきょう
あみ設備せつび名稱めいしょう WALK .1.3.6.1.2.1.31.1.1.1.1 IF-MIB::ifName

まいり[编辑]

  1. ^ UCD-SNMP-MIB. Net-SNMP. [2016-07-29]. (原始げんし内容ないようそん于2019-05-02). 
  2. ^ HOST-RESOURCES-MIB. Net-SNMP. [2016-07-29]. (原始げんし内容ないようそん于2020-12-19). 
  3. ^ IF-MIB (ifMIBObjects). Net-SNMP. [2016-07-29]. (原始げんし内容ないようそん于2019-05-02). 

外部がいぶ链接[编辑]