我正在使用snmp nodes发送这个例子请求
PDU pdu = new PDU();
pdu.add(new VariableBinding(new OID("1.3.6.1.2.1.1.1")));
pdu.add(new VariableBinding(new OID("1.3.6.1.2.1.1.9.1.2.1")));
pdu.setType(PDU.GETNEXT);其结果是:
Linux pia 2.6.26-2-686 #1 SMP Thu Sep 16 19:35:51 UTC 2010 i686
1.3.6.1.6.3.11.3.1.1使用侦听器:
Received response PDU is: RESPONSE[requestID=307256023, errorStatus=Success(0), errorIndex=0, VBS[1.3.6.1.2.1.1.9.1.2.2 = 1.3.6.1.6.3.11.3.1.1]]snmpwalk命令给出了以下结果:
root@pia:~/workspace_c/SNMP# snmpwalk -v2c -c public localhost 1.3.6.1.2.1.1.1
SNMPv2-MIB::sysDescr.0 = STRING: Linux pia 2.6.26-2-686 #1 SMP Thu Sep 16 19:35:51 UTC 2010 i686
root@pia:~/workspace_c/SNMP# snmpwalk -v2c -c public localhost 1.3.6.1.2.1.1.9.1.2.1
SNMPv2-MIB::sysORID.1 = OID: SNMP-FRAMEWORK-MIB::snmpFrameworkMIBCompliance为什么snmpwalk返回SNMP-FRAMEWORK-MIB::snmpFrameworkMIBCompliance和snmp4j 1.3.6.1.6.3.11.3.1.1?
为什么在第一种情况下有节点的名称,在第二种情况下有节点的数量?
更新: Aha,似乎节点可以是OID、STRING、Timesticks对象:
发布于 2012-04-23 10:19:10
不是完全一样吗?(SNMP可以是字符串或“带点的数字”-不同的表示形式,但指向树中的完全相同的信息)。
来自MIBExplorer:
snmpMPDCompliance模块-遵从状态当前描述“实现SNMP的SNMP实体的遵从性声明.” 模块强制-组{ snmpMPDGroup } -- 1.3.6.1.6.3.11.3.1.1 -- ::= { snmpMPDMIBCompliances 1}
发布于 2014-02-07 22:58:20
对于大多数应用程序来说,MIB对象的对象名称是不相关的,而且可能是矛盾的。SMI只要求对象名称在MIB模块中和所有IETF标准MIB规范中都是唯一的。
因此,最好在可能的情况下使用虚数表示法(例如"1.3.6.1.4.1")。默认情况下,SNMP4J没有内置的MIB解析器,因此提供虚号OID字符串。
但是,如果您希望使用MIB规范定义的对象名称或其他值转换,只需使用几行代码添加SNMP4J-SMI,就可以随心所欲地使用对象名称。
https://stackoverflow.com/questions/10278234
复制相似问题