通過 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,我認為經過多次搜尋是列印介質單工計數(我們沒有雙面列印機,至少我們對此感興趣)。執行以下命令會產生以下令人沮喪的輸出:
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(或兩者)。有人對我有任何指示嗎?或者我應該放棄並返回單獨導航每個列印機網頁(希望不是)。
嗯,這很奇怪——我認為資訊是通過 SNMP 暴露的。然而,對我們其中一台 P4515 的快速 snmpwalk 僅顯示使用目前安裝的熱凝器列印的頁數。要查看通過 snmp 公開的所有資訊,我執行了以下操作:
snmpwalk -Cc -v 1 -c public ipaddress
如果目前安裝的熱凝器上列印頁面的 OID 是任何用途,則它是:
2.43.10.2.1.4.1.1
標準的“總頁數”為 1.3.6.1.2.1.43.10.2.1.4.1.1
不同的型號使用不同的 OID 來獲取詳細資訊,例如傳真/複印/列印/雙面/彩色/黑色/…的頁數。