简单网络协议SNMP

SNMP 是专门设计用于在 IP 网络管理网络节点(服务器、工作站、路由器、交换机及 HUBS 等)的一种标准协议,它是一种应用层协议。 SNMP 使网络管理员能够管理网络效能,发现并解决网络问题以及规划网络增长。通过 SNMP 接收随机消息(及事件报告)网络管理系统获知网络出现问题。

SNMP 管理的网络有三个主要组成部分:管理的设备、代理和网络管理系统。

管理设备是一个网络节点,包含 SNMP 代理并处在管理网络之中。

被管理的设备(如路由器、访问服务器,交换机和网桥、 HUBS 、相关主机)用于收集并储存管理信息。通过 SNMP , NMS 能得到这些信息。

SNMP 代理是被管理设备上的一个网络管理软件模块。

2.移植前准备

a.从网址下载net-snmp-5.6.1.1.tar.gz源码包

b.确定已安装交叉编译器arm-linux-gcc

3.移植过程

1.解压net-snmp-5.6.1.1.tar.gz

2.配置

CC=arm-linux-gcc ./configure --prefix=/usr/local/arm_netsnmp --build=i386-linux --host=arm-linux --enable-mini-agent --disable-ipv6 --with-endianness=little --disable-manuals --disable-ucd-snmp-compatibility --enable-as-needed --disable-embedded-perl --without-perl-modules --disable-snmptrapd-subagent --disable-applications --disable-scripts

3.编译make

4.安装make install

注:出错的话,看下出错原因,有些库没装的话,要装上。我的是这个库:apt-get install libperl.dev

5.移植到开发板

a.在arm_netsnmp底下生成的snmpd移植到开发板/tmp/ArmSnmp(目录自己随便找个地方放)

b.vi snmpd.conf,添加内容如下:

rocommunity public
rwcommunity 123456

wq保存退出

6.测试结果

a.先在开发板运行如下命令:

[root@EM9X60 /tmp/ArmSnmp]#./snmpd -C -c ./snmpd.conf

b.然后在linux主机运行:

root@an-virtual-machine:/usr/local/net-snmp/bin# ./snmpget -v2c -c public 192.168.1.94 sysDescr.0
SNMPv2-MIB::sysDescr.0 = STRING: Linux EM9X60 2.6.30 #92 Wed Mar 30 17:39:47 CST 2011 armv5tejl

注:snmpget是linux主机平台的(下载源码后,默认安装就可以得到)

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/ppxzj.html