snmp++开发snmpv3注意事项

本文详细介绍了SNMPv3中的v3_MP模块使用方法,包括如何设置engineID、contextEngineID等参数,以及get、set、getnext、getbulk等操作的特点。此外还涉及了USM用户管理及安全配置。

1、v3_MP = new v3MP(engineID, snmpEngineBoots, construct_status)

     engineID是开发者自己随意设置,无影响

 

2、pdu.set_context_name (contextName);
     pdu.set_context_engine_id(contextEngineID);

    contextEngineID和contextName是指代理端的要访问的上下方和引擎id。

    我在用交换机做测试时,发现这两个参数都设置为空即可,调用get等相关操作时,snmp++会从代理端获取代理的引擎id,并设置到这个值。直接设置成代理引擎id,也没问题。

 

3、get操作可以一次获取一个或多个项的值(如系统名)

     set操作可以一次设置一个或多个项的值(如系统名)

     getnext操作可以顺序获取一个或多个指定项的值(如路由表),一次操作返回一个或多个请求项的值,循环操作可顺序取出表中一个或多个请求项的值,直到返回的oid不是请求的oid的子树为止

     getbulk操作可以批量取出指定一个或多个项值,non_repeaters指定开头的多少项是get操作,max_reps指定后续的几项以getnext操作的最大次数。 假定指定m项,non_repeaters为n,max_reps为l,则最后取得的结果数: n + (m-n)*l

     trap和inform都是代理通知管理端,trap无应答无重发,inform有应答,超时重发。

4、get/set/getnext/getbulk操作时,add_usm_user的参数要与代理端的配置相一致;管理端接收trap/inform时,代理端要有与管理端add_usm_user的参数相一致的用户及相关配置

     USM *usm = v3_MP->get_usm();
     usm->add_usm_user(securityName,
                                    authProtocol, privProtocol,
                                    authPassword, privPassword);

   

 

 

转载于:https://www.cnblogs.com/wzsy/p/6814026.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值