Snmp 为字段的数组类型定义MIB

Snmp 为字段的数组类型定义MIB,snmp,mib,Snmp,Mib,我正在尝试为以下示例MO定义MIB: tabular_mo_struct { int index1; int index2; int address [10]; int flag; } 上面的标志可以采用如下值(位掩码类型): 瓦尔1, val2, val3 或以上值1 | val2 |的组合 我有点不清楚 我的MIB是否应该将“地址”表示为八位字节字符串?我找不到其他合适的类型 在MIB中表示“标志”的最佳方式是什么 提前感谢。要解析地址字段,您可能需要定

我正在尝试为以下示例MO定义MIB:

tabular_mo_struct
{
    int index1;
    int index2;
    int address [10];
    int flag;
}
上面的标志可以采用如下值(位掩码类型):

瓦尔1, val2, val3

或以上值1 | val2 |的组合

我有点不清楚

  • 我的MIB是否应该将“地址”表示为八位字节字符串?我找不到其他合适的类型
  • 在MIB中表示“标志”的最佳方式是什么

提前感谢。

要解析地址字段,您可能需要定义一个表

对于标志,您可以使用
,它是从
八位字符串
派生的类型


什么类型的“地址”?街道地址、MAC地址、IPv4、IPv6?您会发现,除了其中一个之外,所有这些都在SNMP中有一个专门定义的“语法”。谢谢。我的生产任务单中的地址为整数类型。MO中的一行由index1索引,index2因此可能有10个地址(如上面结构中定义的)。恐怕我仍然不理解“地址”的含义。我想不出任何由十个整数组成的地址。MAC地址是6个字节,IPv4地址是4个字节,IPv6地址是128位,等等。如果它只是“整数序列”的另一个词,那么是的,您可能应该制定一个文本约定,将它们描述为八位字符串,并带有类似“1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1d 1我指的是,不确定是否可以使用任何当前类型和TC。据我所知,要实现这一目标,将需要一个新的TC。谢谢你的帮助,谢谢。是的,上面的结构对我来说是一个表格对象,表中的特定行将有一个名为“address”的字段(10个整数的序列)。正如我从前面的评论中了解到的,这可以通过定义一个新的TC来实现,因为现有的TC不适合这种情况。此外,根据BITs的定义,“此集合被分配非负的、连续的(但见下文)值,从零开始”。我可以使用它吗,即使有时这个变量的值是这些命名位的一个或多个组合?如果tablar\u mo\u struct已经是表中的一行,那么您需要定义第二个表来保存地址。类似的情况可以从标准RFC(如TCP和UDP MIB文档)中找到。对于你的问题,我不明白你为什么不能。