Snmp 从实例/动态OID分支静态OID

Snmp 从实例/动态OID分支静态OID,snmp,mib,Snmp,Mib,我想知道是否/如何将OID从动态OID中分支出来 数字: .1.3.6.1.4.1.(笔).1.1.(变量OID).1.1.1 已应用: .iso.org.dod.internet.private.enterprises.company.category.device.deviceinstance.property.sensor.level 其中deviceinstance是一个唯一ID 如果没有设备实例,则分支的其余部分,.property.sensor.level不存在。换句话说,附加的OI

我想知道是否/如何将OID从动态OID中分支出来

数字:
.1.3.6.1.4.1.(笔).1.1.(变量OID).1.1.1

已应用:
.iso.org.dod.internet.private.enterprises.company.category.device.deviceinstance.property.sensor.level

其中deviceinstance是一个唯一ID


如果没有设备实例,则分支的其余部分,
.property.sensor.level
不存在。换句话说,附加的OID结构是基于每个实例构建的

您可以通过定义MIB表轻松实现这一点。我会用这样的方式:

deviceInstancesTable OBJECT-TYPE
      SYNTAX   SEQUENCE OF deviceInstanceEntry
      ACCESS   not-accessible
      STATUS   mandatory
      ::= { device 1 }

deviceInstanceEntry OBJECT-TYPE
      SYNTAX   DeviceInstanceEntry
      ACCESS   not-accessible
      STATUS   mandatory
      INDEX    { deviceInstanceIndex }
      ::= { deviceInstancesTable 1 }

DeviceInstanceEntry::=
      SEQUENCE {
         deviceInstanceIndex INTEGER,
         property            DisplayString,
         sensor              DisplayString,
         level               INTEGER,
         deviceInstanceRowStatus        RowStatus
         }

因此,您可以使用RowStatus动态创建实例

我可以这样动态设置OID吗?i、 e.对OID使用变量而不是特定的数字?您可以有任何索引和任何数量的索引字段/列,而不仅仅是数字。因此,如果我有一棵树的形式需要为
.1.3.5.1.4.1.(我的笔).1.1.[未知值].[未知值].1.1
,我可以用它来完成吗?如有必要,可以从文件中检索“未知值”,但不能明确说明,因为它可能基于IP地址或其他UID。在SNMP中,您可以使用IP地址、OID甚至八位字节字符串作为索引。所以没有问题。IP/OID/OCTET字符串的实际值是否对MIB未知并仍然有效?i、 e.在我的MIB中:staticNode(不管需要什么语法):={aWildcardNode 1}……其中:aWildcardNode(不管需要什么语法):={anotherNode undefinedValue}……如果这确实是可能的,你能在回答中添加一个例子吗?非常感谢!