我正在尝试开发 net-snmp
子代理,并遇到了令人困惑的事情。
为什么我不能get
一个net-snmp表列但是'getnext'在mib-browser中没问题?
我按mib2c -c mib2c.iterate.conf
生成了代码。
在mib浏览器中, get
操作提醒:can not retrieve data. unknown oid ...
,
getnext
没关系。
那么,为什么?它与mib2c.iterate.conf
有关吗?
答案 0 :(得分:0)
引用snmpgetnext手册页:
远程实体中按字典顺序“下一步”的变量 MIB将被退回。例如:snmpgetnext -c public zeus interfaces.ifTable.ifEntry.ifType.1将检索变量 interfaces.ifTable.ifEntry.ifType.2: interfaces.ifTable.ifEntry.ifType.2 = softwareLoopback(24)
换句话说,你正在查找的OID不存在所以GET失败了,但是在通过GETNEXT返回后,按字典顺序排列。
$ snmpget -v 2C -c public myserver .1.3.6.1.2.1.4.31.3.1.3.2.9
IP-MIB::ipIfStatsInReceives.ipv6.9 = Counter32: 48
$ snmpgetnext -v 2C -c public myserver .1.3.6.1.2.1.4.31.3.1.3.2.9
IP-MIB::ipIfStatsInReceives.ipv6.10 = Counter32: 24
$ snmpget -v 2C -c public myserver .1.3.6.1.2.1.4.31.3.1.3.2.10
IP-MIB::ipIfStatsInReceives.ipv6.10 = Counter32: 24