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

有趣的是,故事并没有就此结束。例如,如果我有一个 unsigned int64,我将在发送“snmpget”后收到 Gauge32 作为类型。我正在寻找一个表格,其中列出了 Net-SNMP 将返回的所有可能的“类型字符串”(如“Gauge32”或“INTEGER”)以及与该字符串关联的实际类型。所以这个表会有明显的条目,比如:

(从 snmpget、type、snmpset 符号返回值)-> ("INTEGER", INTEGER, i)

如果有人知道在哪里可以找到完整列表,请发布。

4

1 回答 1

11

这不是您问题的直接答案。

IETF 上发布的 SNMP RFC 文档仅定义了一组有限的类型,

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

它们应该被视为内置类型。

在此处输入图像描述

除了内置的 int 类型外,还有其他通过 MACRO 定义的派生类型,例如 DisplayString 等。

我创建了基于#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 回答