問題タブ [pysnmp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Pythonを使用してnet-snmpでmibモジュールを実装する方法は?
よくある質問で、私はこれを読みました。「エージェントは、perlまたは(5.4から)pythonで実装されたMIBモジュールもサポートできます。」Pythonをサポートするnet-snmpを構築しましたが、Pythonを使用して独自のMIBモジュールを実際に実装する方法はまだ明確ではありません。pythonディレクトリにあるpythonスクリプトは、snmpエージェントではなく、snmpクライアントの実装に関連しています。たぶん私はどこかでポイントを逃しているだけです。誰かがこれを始める方法についてのヒントを教えてもらえますか?
ありがとう、
トム
python - PythonAsyncoreを使用したSNMP要求/応答サービスの構築
asyncoreの上に構築されたサードパーティのプロトコルモジュール(SNMP)があります。asyncoreインターフェースは、応答メッセージを処理するために使用されます。asyncoreメインループの実行中にプロトコルの要求側を生成するクライアントを設計するための適切な手法は何ですか。私は今2つのオプションを考えることができます:
asyncore.loop()のloop、timeoutパラメーターを使用して、クライアントプログラムが適切な要求を送信できるようにします。
レシーバーと同じ非同期処理ループで実行されるクライアント非同期ディスパッチャーを作成します。
最良の選択肢は何ですか?私は2番目のソリューションに取り組んでいます。これは、プロトコルAPIが非同期パラメーターへの直接アクセスを提供しないためです。非同期を利用するための適切なテクニックを誤解した場合は、訂正してください。
python - PySNMP エラー: pysnmp.smi.error.SmiError
Windows XP マシンで Python プログラムを実行しています。プログラムを実行すると、次のエラーが表示されます。
ファイル SNMPv2-MIB.py は現在 にありC:\Python27\Lib\pysnmp\smi\mibs
ます。これを解決する方法を知っている人はいますか?
python - Pythonバインディングからnet-snmpライブラリのすべてのグローバル内部状態をリセットする
コマンドインターフェイスとしてSNMPエージェントを実行するこのハードウェアとソフトウェアのテスト対象の自動統合テストを作成しようとしています。テストのセットアップは次のようになります。Fitnessをテストランナーとして使用し、PyFitを使用してPythonでテストを記述できるようにしています。次に、Pythonバインディングでnetsnmpを使用してSNMPコマンドを送信します。これはかなりうまくいきます。
ただし、スイートを実行しようとすると、SNMPエージェント(テスト対象)が再起動され(通常は別のシミュレートされた時間に)、netsnmpの内部であらゆる種類の興味深いエラーが発生します。
コミュニティ名やコンテキスト名などのnetsnmpライブラリ内に多くのグローバル状態が保存されており、問題があるのは、SNMPv3でのリプレイ攻撃を防ぐために使用されるEngineTimeとEngineBootCntです。これにより、エージェントは私のsnmpコマンドを拒否します。
私の問題は、内部のグローバル状態がリセットされるように、(Pythonバインディングから)netsnmpライブラリを再初期化する方法です。Pythonバインディングのnetsnmp.Sessionオブジェクトは、パラメーターEngineTimeとEngineBootsを取り、それらを0に設定するとリセットされるはずですが、実際にはそうはならないようです。また、リセットする必要のある他のグローバル状態がそこにあるかどうかもわかりません。
純粋なpythonsnmpライブラリpysnmpを使用するようにテストを書き直す必要があると思う時点ですが、それを避けたいと思っていました。
python - pyinstaller で Python 実行可能ファイルを作成するときにライブラリがインポートされない
Windows 用の Python .exe をビルドしようとしていますが、問題なく作成できます。ただし、アプリケーションを実行すると、すべてのライブラリがインポートされたわけではないため、すべての機能を実行できないことに気付きました。PySNMP が具体的にインポートされていません。ビルド プロセスの出力を見ると、プログラム内のいくつかのモジュールが PySNMP をインポートしているにもかかわらず、PySNMP がまったく表示されていないことに気付きました。この問題の原因を知っている人はいますか? ありがとう!
インストーラーを生成するコードは次のとおりです。
python - msession が定義されていません
このサンプル プログラムを実行しようとしています - http://pysnmp.sourceforge.net/examples/1.x/snmpbulk.html
私はMac OS Xを使用しており、pysnmpを-でインストールしました
プログラムを実行すると、次のようになります-
アップデート:
pysnmp 4.x には msession がないようなので、 http://pysnmp.sourceforge.net/examples/4.x/v3arch/index.htmlを試しました
そして今、私は-
ウェブページには、サードパーティのライブラリに依存していると書かれています -
最新の PySNMP リリース (4.x 以降) は、以下に依存します。
ASN.1 オブジェクトの処理に使用される Python 用の ASN.1 ライブラリ Python
メッセージの認証と暗号化に使用される Python 暗号化ツールキット
インストール方法を教えてください。また、Web ページの tarball から直接インストールする方がよいでしょうか?
python - テーブルの外に出たときの非同期 getNext エラー
GetNext
ツリーの SNMPWalk の操作例の 1 つを使用しています。OID を収集するために非同期バリアントを使用しています -
必要な OID を取得します。ただし、テーブルを出て cbFun から戻ると、最後の行の Dispatcher がエラーをスローしますが、これを解決することはできません。出力は次のようになります -
python - snmp オクテット文字列を人間が読める日付形式に変換します
pysnmp フレームワークを使用して、snmp ウォークを実行していくつかの値を取得します。残念ながら、oidにとっては
1.3.6.1.21.69.1.5.8.1.2 (ドキュメント ケーブル デバイス MIB)
次のようなASCII文字が含まれているため、ここに正しく印刷できない奇妙な結果が得られますBEL
ACK
repr を実行すると、次のようになります。
OctetString('\x07\xd8\t\x17\x03\x184\x00')
ただし、出力は次のようになります。
2008-9-23,3:24:52.0
形式は「DateAndTime」と呼ばれます。OctetString 出力を「人間が読める」日付/時刻に変換するにはどうすればよいですか?
python - Python SNMP GetBulk - 複数の OID
テーブル OID のリストを照会するには、PySNMP の GetBulk 実装を使用する必要があります。1 つのテーブル OID をクエリすることはできましたが、リストからテーブル OID を読み取ることはできませんでした。私は何を間違っていますか?助けてください。
snmp - build-pysnmp-mibs を使用して mib を解析し、pysnmp を使用して mib をロードする際のエラー
mibBuilder を使用していくつかのカスタム mib を読み込もうとしています。
最初に、pysnmp のドキュメントに従って、build-pysnmp-mib ユーティリティを使用して mib を pysnmp mib 形式に変換しました。しかし、次のエラーが表示されます。
また、-k
オプションを使用している間、smidump はファイルを生成しますが、mibBuilder は生成されたファイルをロードできません。
実装にバグがあることをどこかで読みましたが、インターネット上で十分なドキュメントや例を見つけることができません。