常用命令:
ps -ax|grep snmpd
export MIBS=ALL;
snmptranslate -Tp -IR Test-MIB::Test
snmpget -v 2c -c public localhost sysUpTime.0
env MIBS="+/usr/local/net-snmp-5.8/share/snmp/mibs/Test-MIB.txt" mib2c -c mib2c.scalar.conf Test
env MIBS="+/usr/local/net-snmp-5.8/share/snmp/mibs/ZZZVPXTIMING-MIB.txt" mib2c -c mib2c.iterate.conf VPXTIMING
mipsel-linux-gcc -o Test Test.c -I /usr/local/net-snmp-mips/include -L/usr/local/net-snmp-mips/lib -lnetsnmp -lnetsnmpagent -lnetsnmphelpers -lnetsnmpmibs -lpthread
/mnt/mtd/snmpd -Lf /mnt/mtd/snmpd.log -c /mnt/mtd/snmpd.conf -M /mnt/mtd/mibs
snmpget -v2c -c public 192.168.123.221 1.3.6.1.4.1.16535.1.1.0
snmpget -v2c -c public 192.168.123.221 1.3.6.1.4.1.16535.2.1.0
snmpgetnest -v2c -c public 192.168.123.221 1.3.6.1.4.1.16535.2
snmpwalk -v2c -c public 192.168.123.221 1.3.6.1.4.1.16535
一、安装嵌入式net-snmp
官网下载解压net-snmp-5.8,而后至解压目录(已创建好安装目录:/usr/local/net-snmp-mips)
1、配置
./configure -with-cc mipsel-linux-gcc -with-ar=mipsel-linux-ar -prefix=/usr/local/net-snmp-mips -build=i686-linux -host=mipsel-linux -with-endianness=little -disable-applications -disable-manuals -disable-debugging -disable-snmptrapd-subagent -disable-ipv6 -disable--scripts -enable-mini-agent -with-mib-modules="notification" -with-mib-modules="agentx" -disable-ucd-snmp-compatibility -disable-embedded-per -disable-perl-cc-checks -disable-without-perl-modules
参数(顺序不能更改):
-with-cc mipsel-linux-gcc 指明编译时使用的编译器
-with-ar=mipsel-linux-ar 指明编译库的工具
-prefix=/usr/local/net-snmp-mips 指定交叉编译后的net-snmp代理软件的安装路径
-build=i686-linux 指明编译源码的主机
-host=mipsel-linux 指明运行该程序的机器平台,即运行代理的平台
-with-endianness=little 指明采用小端模式
-disable-applications 指明不编译SNMP的应用程序
-disable-manuals 指明取消编译帮助信息
-disable-debugging 关闭调试信息
-disable-snmptrapd-subagent 指明不支持snmptrapd子代理
-disable-ipv6 指明不支持ipv6
-disable--scripts 指明不安装脚本
-enable-mini-agent 指明安装最简单的代理
-with-mib-modules="notification" 指明加载notification模块,用于发送trap
-with-mib-modules="agentx" 指明加载agentx模块,此模块支持主代理和子代理,默认是子代理,可在snmpd.conf中配置为主代理
-disable-ucd-snmp-compatibility 指明不安装UCD-SNMP的头文件和库
-disable-embedded-per 指明不支持嵌入式perl
-disable-perl-cc-checks 在支持嵌入式perl的情况下,不对编译perl的C编译器进行兼容性检查
-disable-without-perl-modules 指明不支持perl模块
2、编译
make
3、安装
make i

本文详细介绍如何在嵌入式系统中配置和开发SNMP代理,包括net-snmp的安装、MIB文件编写、mib2c工具使用、代码实现get和set功能,以及如何将开发成果直接加入项目。

1930

被折叠的 条评论
为什么被折叠?



