2011-02-01 6 views
1

SNMPバルクを行うのにSNMP4Jを使用しようとしています。これまで私はSNMP4Jを使用して呼び出しを行いましたが、「一般的な変数のバインディングエラー」というresponseEventエラーが返され、返されるデータはNullに等しくなりました。SNMP4J一般変数バインディングエラー

デバッグするには SNMP4Jで使用しているOIDとバージョン番号をコンソールに出力します。私はその後、コマンドラインでsnmpwalkを実行するために印刷されたデータを使用します。 しかし、私は正しい結果を返します。私はSNMP4Jに正しいOID、バージョン番号、最大反復回数などを送信していることを知っています。

私はSNMP4Jを使用しました。このコードでは、他のデバイスを何年も監視するためにsuccesffulyを書いています。だから今回は何が違うのか分からない。これは私を困惑させてしまいます。なぜ私は "一般的な変数のバインディングエラー?"そのエラーの原因は何ですか?デバッグのアイデア?

答えて

0

再生できますか?その場合は、WiresharkまたはMicrosoftネットワークモニタを使用してネットワークパケットを取得する必要があります。

私の推測では、

http://www.ietf.org/rfc/rfc1157.txt

+0

特定のOIDコールを作成するときに一貫して再現されます。常にコマンドラインで動作します。常にSNMP4Jでエラーが発生します。 – Brent

+0

その後、パケットをキャプチャしましたか? SNMPプロトコルレベルには何が含まれていますか? –

0

、突然エージェントはあなたに驚くべきものではありませんいるgenErr応答を与えることである私はコンバリピータSNMPエージェントと同様の不可解なエラーが発生しました。複数の変数バインディングを使用してSNMP Get(テーブル内の特定のMIB値を対象とする)を行うと、汎用変数バインディングエラーが返されます。しかし、単一の変数バインディングを使用してSNMP Get(テーブル内の特定のMIB値を対象とする)を実行すると、期待どおりに応答します。

他のデバイス(たとえばコーニング、SOLiD)で複数の変数バインディングを使用してSNMP Get(テーブル内の特定のMIB値を対象とする)を行いました。

これは、あなたがヒットしているデバイスのSNMPエージェントの実装と関係があります。