题 通过SNMP HP Laserjet查询总页数


我被要求掌握我们工作的100多台打印机的总页数。所有这些都是HP Laser或Business Jets的一些描述,绝大多数是通过某种形式的HP JetDirect网卡/交换机连接的。在输入IP地址并将相关数字复制并粘贴到Excel中数小时后,我现在已被要求每周执行此操作。这让我觉得必须有一种更简单的方法,作为一名IT专业人士,我肯定可以节省一些时间来解决这个问题。

我只想说,在尝试让SNMP为我工作一天后,我现在感觉不太专业!

据我所知,第一件事是在打印机上启用SNMP。完成。接下来我需要一些东西来查询SNMP位。我决定开源和免费,有人在这里推荐net-snmp作为一个不错的工具(我想在SolarWinds中添加打印机作为节点,但我们对许可证显然有些紧张)。接下来我需要MIB的名称。为此我相信HP-LASERJET-COMMON-MIB中包含正确的信息。下载此内容并添加到net-snmp。现在我需要OID,我相信经过多次精练后,打印 - media-simplex-count(我们没有双面打印机,我们至少对它感兴趣)。运行以下命令会产生以下令人沮丧的输出:

snmpget -v 2c -c public 10.168.5.1 HP-LASERJET-COMMON-MIB:.1.3.6.1.2.1.1.16.1.1.1

(OID源于运行:

snmptranslate -IR -On printed-media-simplex-count  
Unlinked OID in HP-LASERJET-COMMON-MIB: hp ::= { enterprises 11 }  
Undefined identifier: enterprises near line 3 of C:/usr/share/snmp/mibs/HP-LASER  
JET-COMMON-MIB..txt  
.1.3.6.1.2.1.1.16.1.1.1  )  


Unlinked OID in HP-LASERJET-COMMON-MIB: hp ::= { enterprises 11 }  
Undefined identifier: enterprises near line 3 of C:/usr/share/snmp/mibs/HP-LASER  
JET-COMMON-MIB..txt  
HP-LASERJET-COMMON-MIB:.1.3.6.1.2.1.1.16.1.1.1:  

我是否完全用错误的树吠了?我的目标是将所有脚本编写为输出到打印机所有IP地址的文件,然后在Excel中为我的领主和主人在闲暇时消化它。我有一种感觉,我使用错误的MIB或来自所述MIB(或两者)的错误OID。有没有人对我有任何指示?或者我应该放弃并返回单独导航每个打印机网页(希望不是)。


4
2018-06-08 13:56






答案:


这很奇怪 - 我认为信息是通过SNMP公开的。然而,我们的P4515之一的快速snmpwalk只显示了当前安装的定影器打印的页数。要查看通过snmp公开的所有信息,我执行了以下操作:

snmpwalk -Cc -v 1 -c public ipaddress

如果当前安装的热凝器上打印页面的OID是任何用途,它是:

2.43.10.2.1.4.1.1

6
2018-06-08 16:08



谢谢你。在我们的打印机上,OID是正确的页数,并且感谢指向snmpwalk命令的指针。 - Tim Alexander


标准“总页数”为1.3.6.1.2.1.43.10.2.1.4.1.1

不同的型号使用不同的OID来获取详细信息,例如传真/复印/打印/双面/彩色/黑色/ ....


3
2017-10-08 14:26





我无法帮助MIB,但我可以使用PowerShell从打印机上的网页中获取值。应该可以修改下面的示例来做你需要的:

http://blogs.technet.com/b/otto/archive/2007/08/23/quick-and-dirty-web-site-monitoring-with-powershell.aspx

Perl / Python也有Web抓取模块,如果这是一个选项。


1
2018-06-08 15:40



+1。我也会投票支持这个,但还没有代表。认为这对我在管道中的无数其他项目都很有用。感谢您抽出宝贵的时间。 - Tim Alexander