最近需要在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