6

net-snmp には少数のタイプがあります。

i: INTEGER、u: unsigned INTEGER、t: TIMETICKS、a: IPADDRESS o: OBJID、s: STRING、x: HEX STRING、d: DECIMAL STRING U: unsigned int64、I: signed int64、F: float、D: double

興味深いことに、話はそれだけではありません。たとえば、署名なしの int64 がある場合、「snmpget」を送信した後、タイプとして Gauge32 を受け取ります。文字列が関連付けられている実際のタイプとともに Net-SNMP が返すすべての可能な「タイプ文字列」(「Gauge32」や「INTEGER」など) をリストした表を探しています。したがって、このテーブルには次のような明らかなエントリがあります。

(snmpget からの戻り値、型、snmpset シンボル) -> ("INTEGER", INTEGER, i)

包括的なリストの場所を知っている人は、投稿してください。

4

1 に答える 1

11

これはあなたの質問に対する直接的な答えではありません。

IETF で発行された SNMP RFC ドキュメントは、限定されたタイプのセットのみを定義しています。

http://www.logmatrix.com/blog/bid/69744/Understanding-SNMP-Data-Types

これらは組み込み型と見なす必要があります。

ここに画像の説明を入力

組み込み型の他に、DisplayString など、MACRO を介して定義された他の派生型があります。

#SNMP に基づいて NET-SNMP ユーティリティのクローンを作成しました。私が学んだことは、NET-SNMP マニュアル ページのすべてのタイプが正しいとは限らないということです。したがって、私の snmpset のクローンは、これらのタイプのサブセットのみを処理します (U、I、F、および D はサポートされていません)。

https://github.com/lextm/sharpsnmplib/blob/master/Samples/CSharp/snmpset/Program.cs

于 2013-01-29T02:36:52.207 に答える