2012-02-29 6 views
0

NETSNMPライブラリを使用して、SNMPv3と認証を使用してルータからデータを要求します。ルータがリセットされると、内部EngineTimeがリセットされ、NETSNMPライブラリによって認識されません。これにより、ルータは後続のコールで認証失敗を起こします。「SNMP Not In Time Window」エラー、内部NETSNMP SSL構造を手動でリセットする方法の後、NETSNMPはEngineTimeを更新しません。

NETSNMPを呼び出すと、手動で内部構造をリセットして新しい要求が行われますか?

すべての呼び出しをsnmp_sess_open/closeに囲んで、オープンセッションがないようにします。

答えて

0

ルータでハードリセットを行っている場合は、問題が発生します。ルータがSNMPv3仕様を再起動すると、にはが必要になり、snmpEngineBootsカウンタが増加し、snmpEngineTimeは0にリセットされます。デバイスがsnmpEngineBootsの値をインクリメントすることなく(つまり常に0または1)再起動すると、このデバイスは時間が経つと報告しているので問題になります。

int    set_enginetime(const u_char * engineID, u_int engineID_len, 
           u_int engine_boot, u_int engine_time, 
           u_int authenticated); 

をしかしあなたはインスタントあなたはリプレイ攻撃のために自分自身を設定していることを行うことを理解する必要があります:あなたは本当にこれを行うと、セキュリティ上の問題を無視する場合

、いつでも呼び出すことができます。だからあなたのデバイスは、snmpEngineBootsの値をインクリメントせずにリセットさせたり、失敗したりして、snmpEngineIDを変更してください。

関連する問題