编辑MIB模块

问题描述 投票:0回答:1

我一直在我工作的公司负责对公司生成的MIB进行更改。那就是它生活在私人子树下。

MIB有一个表,其中包含表中定义的几个对象。他们想要重命名的一个对象的名称。例: TableEntry :: = SEQUENCE {yada,yada OldName Integer32}

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

TableEntry :: = SEQUENCE {yada,yada OldName Integer32,NewName Integer32}

看起来这样在NMS上会更难,因为OldName上的GET不会为此表返回任何此类对象。

snmp
1个回答
1
投票

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

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

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

如果您想要安全,可以添加一个OBJECT IDENTIFIER子句,在您的示例中,在定义NewName之后,为该OID创建第二个名称等效项,例如。

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

你可以补充一下

OldName  OBJECT IDENTIFIER ::= { tableentry N }
© www.soinside.com 2019 - 2024. All rights reserved.