netsnmp“snmptable”命令检索过多的MIB对象

时间:2018-04-03 13:08:49

标签: snmp net-snmp snmpd

我使用net-snmp-5.7.3软件包实现了不同的自定义MIB。例如,自定义OID如下:

  • .1.3.6.1.4.1.XXXXXX.1.1 //标量
  • .1.3.6.1.4.1.XXXXXX.1.2 // scalar
  • .1.3.6.1.4.1.XXXXXX.3.2 // table
  • .1.3.6.1.4.1.XXXXXX.6.1 //标量
  • .1.3.6.1.4.1.XXXXXX.6.2 //标量
  • .1.3.6.1.4.1.XXXXXX.6.3 // scalar

对于字符串mib的类型,我按如下方式注册了实例:

String contentencoding = null;
JSONArray headers = new JSONArray(yourHeadersJsonString);
for ( int n = 0; n < headers.length(); n++ )
{
    if ( headers[n].name.equals("content-encoding") )
   {
      contentencoding = headers[n].value;
      break;
    }
}

snmpget命令适用于标量。但是,snmptable命令不仅检索表OID,还检测错误地调用以下标量处理程序。

我已经引用了data_set示例http://net-snmp.sourceforge.net/dev/agent/data_set_8c-example.html

此外,我尝试使用不同的mib2c表配置模板实现。

有趣的是,如果我检索net-snmp包中提供的示例mib(例如data_set,netSnmpHostsTable),我的自定义处理程序(因为它们都有后续的OID)会被错误地调用。

如何防止snmptable错误地调用其他mib对象处理程序? snmptable命令失败了吗?

0 个答案:

没有答案