作業中の100台以上のプリンターの合計ページ数を取得するように依頼されました。それらのすべては、いくつかの説明のHPレーザーまたはビジネスジェットであり、大多数は何らかの形のHP JetDirectネットワークカード/スイッチを介して接続されています。 IPアドレスを何時間も入力し、関連する数値をExcelにコピーして貼り付けた後、毎週これを行うように依頼されました。これにより、もっと簡単な方法があるはずだと思いました。ITプロフェッショナルとして、この問題を解決するために時間を節約する方法を確実に考え出すことができます。
SNMPを機能させるために1日ほど経った今、私はあまりプロフェッショナルではないと感じていると言えば十分でしょう。
私が最初に理解しているのは、プリンタでSNMPを有効にすることです。できました。次に、SNMPビットを照会するために何かが必要になります。私はオープンソースで無料にすることに決めました、そしてここの誰かがまともなツールとしてnet-snmpを推奨しました(SolarWindsにノードとしてプリンターを追加したいのですが、ライセンスにはややきついです)。次に、MIBの名前が必要です。このため、HP-LASERJET-COMMON-MIBには正しい情報が含まれていると思います。これをダウンロードして、net-snmpに追加しました。ここでOIDが必要です。これは、多くの精練がprint-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または間違ったOIDを上記のMIB(またはその両方)から使用しているように感じます。誰かが私にこれについてのポインタを持っていますか?またはあきらめて戻る必要があります各プリンターのWebページを個別にナビゲートします(希望しない)。
まあこれはかなり奇妙です-私は情報がSNMPを介して公開されたと思いました。ただし、P4515の1つの簡単な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を使用して、ファックス/コピー/印刷/両面印刷/色/黒/ ....のページ数などの詳細を表示します。
申し訳ありませんが、MIBについてはサポートできませんが、PowerShellを使用して、GrindがプリンターのWebページから値を取得しないようにすることができます。以下の例を変更して、必要なことを行うことができるはずです。
Perl/Pythonには、オプションの場合、Webスクレイピングモジュールもあります。