最近需要在unix機器上安裝net-snmp,然後看到在windows下也可以使用,所以就想在本機試試。但對這個東西還是很陌生,只是想先記錄下過程,然後再進一步學習。
到底是用來做什麼的,我從別人那借來一段話:
簡單網絡管理協議產生的目的,就是爲了使鬆散的網絡更加有效地運行。它廣泛的應用於監測網絡的狀態、網絡設備的運行情況、各種電腦設備以及一些輔助的外圍設備,使得網絡管理員通過對節點的查詢和設置,發現並定位故障,進而採取相應措施維護網絡。網絡管理的研究已經發展了許多年,對於日益紛繁的需求,簡捷性和擴展性仍是研究的主題。
1、下載
2、安裝,我安裝在了d:/usr下。
然後查看下安裝是否成功,通過查看版本可以知道:
3、註冊服務
此過程遇到一個錯誤:
註冊不了,因爲使用的操作系統是win7,所以應該是權限的問題:
到安裝目錄使用管理員進行註冊:
安裝成功
4、啓動服務,在cmd命令行中啓動不了,還是沒有權限的原因,services.msc執行後在服務列表中啓動。
5、配置snmpd.conf文件
在安裝目錄下找到etc目錄,進行到其中的snmp文件夾,會發現已經有一個snmp.conf文件,我們的是snmpd.conf不是它已有的,新建立一個普通文件名稱爲 :snmpd.conf,在其中寫入
rocommunity public
僅此一句。
說明,如果這一句不加經常就是報主機無響應,因爲相當於你沒有訪問協議的通行證。
然後重啓服務。
6、測試
在cmd切換到安裝目錄下的bin文件夾下,執行:
snmpwalk -v 1 -c public 135.32.9.189
snmpwalk.exe -v 1 -c public localhost versiontag
snmpwalk.exe -v 1 -c public localhost sysdesc
測試基本通過,以後再繼續學習
參考資料:
http://bibu.blogchina.com/inc/net_snmp_doc.htm
http://forums.cacti.net/viewtopic.php?t=26151
更新:
如果要設置端口,可以在snmpd.conf文件中增加一行
agentaddress 10061
如果要使用snmptrap則需要在擴展協議後,在這個文件中加入要發送消息的目標主機和端口
trap2sink 135.32.247.18:10062
三個其它命令示例
snmpget -v2c -c public 135.32.24.161:10061 1.3.6.1.4.1.81000.2.103.2.2.8.1.1.6.0
snmpgetnext -v2c -c public 135.32.24.161:10061 1.3.6.1.4.1.81000.2.103.2.2.8.2.1.1.0
snmpget -v2c -c public 135.32.24.161:10061 1.3.6.1.4.1.81000.2.103.2.2.8.2.1.1.0