MIB模块之间的Net-SNMP共享变量

时间:2017-11-01 04:15:01

标签: snmp net-snmp

我编写了多个需要在它们之间共享全局结构的Net-SNMP MIB模块。

我想到的选项:

  1. 找到让2个或更多MIB模块使用公共代码的方法。 (不确定这是否可行)
  2. 在init__MODULE功能期间将MIB模块组合成一个MIB模块设置结构。 (这是不好的做法,它将是模块中的10个处理程序)
  3. Linux共享内存(不是真的想要这样做)
  4. 其他信息: MIB模块正在编译到主代理中。

1 个答案:

答案 0 :(得分:0)

这取决于那些"不同的MIB模块"实际上是:

  • 来自不同MIB文件的对象 - 不执行此操作,因为公共代码将违反某些标准(一个MIB文件代表一个特定代理;代理不假设了解其他代理商)
  • 来自同一个MIB的
  • 不同的对象(在此标量和表格中) - 是的,你可以,但我会不推荐这样做。最好分别为表格使用某些特定的API函数,因为它们可能非常有用。
  • 来自同一分支的标量(如 MIB-2 MIB的1.3.6.1.2.1.5 icmp 分支) - ,这是推广代码的不错选择。在这里您可以使用 scalar_group 处理程序。