【问题标题】:snmp: correct behavior when only part of a table index is given?snmp:仅给出部分表索引时的正确行为?
【发布时间】:2010-08-17 15:30:55
【问题描述】:

假设一个 MIB 包含一个由 MAC 地址索引的表。当经理请求myTable.0.1 时,代理的正确行为是什么?这是一个不完整的索引。

我看到的一些可能性:

  1. 返回表中的第一行 - 将此部分索引视为在第一行之前。
  2. 将此视为子树 - 返回表中与此 MAC 前缀匹配的行。
  3. 不返回任何行 - 将其视为在表中的最后一行之后。
  4. 返回某种错误?

【问题讨论】:

    标签: snmp mib


    【解决方案1】:

    取决于操作。

    对不完整 OID 的 GET 将返回 noSuchName。

    不完整 OID 上的 GETNEXT 将返回下一个完整 OID。

    请注意,许多制造商未能正确实施 SNMP 代理。您不能总是指望它们按预期返回下一个 OID。

    【讨论】:

    • 谢谢。这个net-snmp tutorial 说了同样的话。 (在这种情况下,我是“制造商”,所以我正在努力做对......)
    • 我的第一个职业编程角色是为 SNMP 开发代理。随后,我惊讶于一些最大的路由器和交换机制造商如何无法正确实施 RFC——getnexts 经常在 MIB 中途停止——以及有多少代理开发人员真正理解标量对象和列对象之间的区别(标量对象总是以.0)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-21
    • 1970-01-01
    • 2023-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多