我需要从SNMP HP打印机jetleg代理程序中检索HP打印机信息。我可以使用这个snmpget命令检索打印机计数器:
snmpwalk -v1 -c public 10.0.0.110 mib-2.43.10.2.1.4.1.1
SNMPv2-SMI::mib-2.43.10.2.1.4.1.1 = Counter32: 16101
但是现在我需要从SNMP代理获取打印机位置,有没有人知道如何做到这一点?请指教。
答案 0 :(得分:3)
该OID的一些谷歌搜索显示它属于MIB模块“Printer-MIB”,由IETF作为RFC 3805发布。您可以在这里阅读: http://tools.ietf.org/html/rfc3805
它包含许多有关打印机的有趣变量,包括打印机中每个“标记”的计数器,正如您所注意到的那样。 在激光打印机上,计数器单元可能是“印刷印刷”,但也要注意检查.1.3.6.1.2.1.43.10.2.1.3.1.1的值,因为它定义了计数单位。以下任何一个都是有效的单位!
3=tenThousandthsOfInches(3)
4=micrometers(4)
5=characters(5)
6=lines(6)
7=impressions(7)
8=sheets(8)
9=dotRow(9)
11=hours(11)
16=feet(16)
17=meters(17)
如果您正在寻找剩余的碳粉/墨水量,请检查prtMarkerSuppliesTable,尤其是prtMarkerSuppliesLevel,.1.3.6.1.2.1.43.11.1.1.9。
现在,location是一个变量,不出现在Printer-MIB中。在变量.1.3.6.1.2.1.1.6(sysLocation)中查看SNMPv2-MIB可能会更好。
"The physical location of this node (e.g., 'telephone closet, 3rd floor'). If the location is unknown, the value is the zero-length string."
当然,只有在
时才会设置此变量更新: 尝试完整的SNMP步行。也就是说,检索MIB的所有变量。
snmpwalk -v1 -Ont -c public 10.0.0.110
( - Ont标志禁用MIB名称解释,并在输出中提供数字OID。)
然后很容易找到变量.1.3.6.1.2.1.1.6。它会附加.0实例OID,表明它是一个标量值,所以它实际上看起来像 “.1.3.6.1.2.1.1.6.0 = 4楼打印机房”
如果输出很大,请尝试使用grep。
同样,如果没有设置任何有用的东西,你必须设置它(或让打印机工作人员设置它)。如果无法弄清楚,请查看打印机的手册,或与HP支持部门联系以获取有关如何持久设置变量的详细信息。
答案 1 :(得分:1)
1)你可以从这里开始 - > Printer SNMP-RFC1759。这是SNMP可以为您提供有关打印机的所有重要信息。
2)尝试使用MIB浏览器软件搜索更多用于检索信息的oid。在系统mib下的mib树中浏览。所有信息,如描述,upTime,联系人,姓名,位置,服务。
3)您无法通过SNMP从jetdirect中检索位置。类似位置的打印机说明已设置到系统MIB中。