snmp - 使用 Net-SNMP API 从 MIB 获取 OID 的类型(语法)

标签 snmp net-snmp oid

如何使用 NET-SNMP API 获取 OID 的语法类型和读/写访问权限?

我正在编写一个 SNMP 工具,它使用 SNMP 协议(protocol)在远程机器上读取和设置值。在设置值之前,我需要从 MIB 文件中检查它的类型和访问权限(是否允许在服务器上写入这个值)。

不幸的是,我在 Net-SNMP 文档中找不到有关如何执行此操作的任何提及。

最佳答案

粗略地讲:

名称[128];
size_t name_length = OID_LENGTH(name);
严格树 *tp;

read_objid("sysContact.0", &name, &name_length);
tp = get_tree(名称,name_length,get_tree_head();


然后查看 net-snmp/library/parse.h 文件中的树结构,您需要的所有好数据都在其中。

另请参阅 apps/snmptranslate.c 文件以获取更多示例。

关于snmp - 使用 Net-SNMP API 从 MIB 获取 OID 的类型(语法),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4786682/

相关文章:

c++ - 如何使用c在net snmp中发送v2陷阱

c - net-snmp解析代码,如何解析MIB?

postgresql - 将 bytea 列转换为 OID,同时保留值

.net - Oracle 的 OID 服务、Oracle.DataAccess 和连接字符串

c# - SNMP mib 解析器

android INSTALL_FAILED_MISSING_SHARED_LIBRARY

snmp - TLV 编解码

Python SNMP 陷阱接收器

c++ - SNMP 类型 Unsigned32 的正确编码是什么?

perl - 有没有一种简单的方法可以将 snmp(MIB) 字符串映射到 Perl 中的 OID?