编辑MIB模块

时间:2019-03-22 15:07:26

标签: snmp

我一直在我所在的公司受命对公司生成的MIB进行更改。那就是它驻留在私有子树下。

MIB有一个表,表中定义了几个对象。 他们想要重命名对象之一的名称。 示例:
TableEntry :: = SEQUENCE {   亚达亚达   旧名称Integer32 }

我可以只编辑MIB文档以使用新名称吗?还是我需要弃用OldName并为新名称添加新条目和对象?

TableEntry :: = SEQUENCE {   亚达亚达   OldName Integer32,   NewName Integer32 }

在NMS上,看起来像在OldName上的GET不会为该表返回任何此类对象,这似乎更困难。

1 个答案:

答案 0 :(得分:1)

对象名称纯粹供人类使用(或供人类使用的任何工具,例如MIB编译器或IDE)。 SNMP协议仅处理OID。

因此,最糟糕的事情是弃用并添加一个新条目,此后 您将破坏所有依赖旧OID的应用程序。

您的解决方案是用NewName替换OldName,而不是将其添加到SEQUENCE。

如果您想安全起见,可以添加OBJECT IDENTIFIER子句, 在您的示例中,在您定义之后,该OID的第二名称等效 NewName,例如。

NewName OBJECT-TYPE
...
::= { tableentry N } 
-- N is a decimal number

您可以添加

OldName  OBJECT IDENTIFIER ::= { tableentry N }