我正在写一个php脚本,它允许我使用snmp在设备上获取和设置某些值。我有设备的MIB,并可以轻松地将它加载到PHP中。问题是我无法使用'人类可读'oid字符串而不是数字字符串(数字oid工作正常)来获取我正在查找的值。php snmp MIB和walk
我的代码:
$host = "localhost";
$community = "public";
$mibFile = "C:\wamp\www\extra\AvenueMIBv105.mib";
$oid = '.1.3.6.1.4.1.19021.1.1.0.0.1';
snmp_read_mib($mibFile);
print_r(snmprealwalk($host, $community, $oid));
与$oid = '.1.3.6.1.4.1.19021.1.1.0.0.1'
,我得到这样的输出:
阵列([AvenueMIBv105 :: private.1.19021.1.1.0.0.1.1.0] => INTEGER: 1 [AvenueMIBv105 :: private.1.19021.1.1.0.0.1.2.0] => INTEGER:1
与$ OID = 'AvenueMIBv105 :: private.slotSelect' 我得到这样的输出:
阵列([AvenueMIBv105 :: internet.2.1.1.3.0] => INTEGER:129663870 [AvenueMIBv105 :: internet.2.1.1.4.0] =>六角STRING:75 73 65 72 4E 61 6D 65 00
我希望两个输出都一样。我意识到我必须有'人类可读的'oid错误,但我已经尝试了大量不同的字符串,并且我总是得到相同的错误输出。我应该怎么做?另外我知道它有时会有所作为,php脚本运行在WAMP服务器上。
这里是我的MIB树: