假设一个 MIB 包含一个由 MAC 地址索引的表。当经理请求 myTable.0.1
时,代理的正确行为是什么?这是一个不完整的索引。
我看到的一些可能性:
- 返回表中的第一行——将此部分索引视为在第一行之前。
- 将其视为子树——返回表中与该 MAC 前缀匹配的行。
- 不返回任何行——将其视为表格中最后一行之后的行。
- 返回某种错误?
最佳答案
取决于操作。
对不完整的 OID 的 GET 将返回 noSuchName。
不完整的 OID 上的 GETNEXT 将返回下一个完整的 OID。
请注意,许多制造商未能正确实现 SNMP 代理。您不能总是指望它们按预期返回下一个 OID。
关于snmp:仅给出表索引的一部分时的正确行为?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3504166/