snmp MIB error: scalar's parent node must be simple node

snmp MIB error: scalar's parent node must be simple node

我正在尝试创建 MIB 并遇到此错误,试图将 "child node" 添加到父项:

scalar's parent node must be simple node

来自 simpleweb mib validation

我想做的是根据这个OID创建parents/childs/elements:1.3.6.1.4.1.1234.1.2.3,我标记了有问题的部分加粗。

“1234”之后的元素“1、2 和 3”具有以下结构:

myParent1 OBJECT-TYPE
    SYNTAX         Integer32
    UNITS          "test"
    MAX-ACCESS     read-write
    STATUS         current
    DESCRIPTION
        "myParent1"
    DEFVAL { 42 }
::= { myNameOfEnterprise 1 }

myChild2 OBJECT-TYPE
    SYNTAX         Integer32
    UNITS          "test"
    MAX-ACCESS     read-write
    STATUS         current
    DESCRIPTION
        "myChild2"
    DEFVAL { 42 }
::= { myParent1 2 }

但是看起来我不能嵌套这种类型,什么是简单节点,我该如何嵌套它?我尝试嵌套的元素不必是任何特定类型,它即将了解嵌套的实际工作原理。

我猜,我找到了一个方法。即使用"OBJECT IDENTIFIER"到group/do嵌套。

myParent1    OBJECT IDENTIFIER ::= { myNameOfEnterprise 1 }
myChild2 OBJECT-TYPE
    SYNTAX         Integer32
    UNITS          "test"
    MAX-ACCESS     read-write
    STATUS         current
    DESCRIPTION
        "myChild2"
    DEFVAL { 42 }
::= { myParent1 2 }

如您所见,验证错误旨在指出 MIB 树中的两种类型的节点。将它们视为 "branches" 和 "leaves"。

  • 树枝可以没有任何价值,但可能会长出叶子。它必须连接到另一个分支。这些是对象标识符。
  • 一片叶子有一个值,但它下面不能有更多的叶子,并且必须连接到一个分支。这些是 OBJECT-TYPE。