【问题标题】:Use pysnmp to determine OID value type使用 pysnmp 判断 OID 值类型
【发布时间】:2015-01-14 21:45:33
【问题描述】:

在处理 1 个 snmp 数据包中的多个变量绑定时,tshark 无法正确解析它,从而可以确定 OID-to-value。因此,我必须按值类型查询数据包并使用结果来确定将哪个 OID 设置为什么。为此,我需要事先知道每个 OID 的值类型。

有没有办法查询一个 OID(即使没有创建实例)并让它返回类型(例如 Integer32、Gauge32、OctetString 等)?

我也尝试过使用 snmpwalk,但它仅在 OID 实例已设置时才返回值。如果未设置,则返回“此 OID 处当前不存在此类实例”

MIB 必须已经知道它所期望的类型,因为如果您尝试将其设置为错误的类型,则会出现错误...我只是想弄清楚如何访问此信息

谢谢!

【问题讨论】:

    标签: variables snmp mib oid


    【解决方案1】:

    不,除了已实例化的变量之外,无法查询正在运行的 SNMP 代理。

    如果您需要知道变量将具有哪种类型,可以在 MIB 文档中为您提供帮助。它为每个标量变量和每个表列指定适当的类型。 当它收到对变量的查询时,代理有义务提供 MIB 中指定类型的值。如果它返回不同的类型,那是代理中的一个错误。

    您应该能够从您正在查询的 SNMP 代理的供应商处获得 MIB 文档。它通常作为系统管理员指南或类似指南的一部分发布,或者您可能需要向他们的客户支持部门索取。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-01-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多