如何在我的 PEN 下构建我的 OID 树而不是 Net-SNMP 的扩展?

How do I build my OID tree under my PEN instead of an extension of Net-SNMP?

目前,我的 OID 使用 extend 从 Net-SNMP 分支出来,结果是这样的 OID:

SNMPv2-SMI::enterprises.8072.1.3.2.4.1.2.1.49.1258

或没有 MIB:

.1.3.6.1.4.1.8072.1.3.2.4.1.2.1.49.1258

8072 是 Net-SNMP,
49 是 ASCII“1”(我给扩展名的任意名称)的十进制值,
1258 是我的根 OID (49) 上的 'leaf'。

现在我有一个 PEN我如何在我的 PEN 下创建我的 OID 树,以便我可以执行一个 snmpwalk显示:

.1.3.6.1.4.1.<MyPEN>.<MyOIDTree>

OS: Linux (Raspbian)

部分解:

-好-
extend 命令中指定一个 OID(在 snmpd.conf 中),如下所示:

extend [OID] <extName> </dir/binary> </dir/script>

OID 是可选的,但是,省略它会导致默认使用 Net-SNMP PEN。

在我的例子中,我的 extend 看起来像这样:

extend .1.3.6.1.4.1.<myPEN> SQL /bin/sh /usr/sbin/MyScript.sh

这会产生以下输出:

.1.3.6.1.4.1.[PEN redacted].4.1.2.3.83.81.76.1258 = STRING: "My Data"

这更接近于所需的结构,因为它现在是从自定义 PEN 扩展的,尽管现在面临着修剪 .4.1.2.3.83.81.76(由扩展名产生) 'SQL').

如果有人知道如何删除那些,post它作为一个新的答案!

-更好-
使用pass命令:
pass .1.3.6.1.4.1.PEN /bin/sh /home/pi/net-snmp/local/shellCode
Shell 代码示例:passtest

输出:

.1.3.6.1.4.1.PEN.1.0 = STRING: "Hello World!"
.1.3.6.1.4.1.PEN.2.1.2.1 = INTEGER: 9
.1.3.6.1.4.1.PEN.2.1.3.1 = OID: .1.3.6.1.4.1.PEN.99
.1.3.6.1.4.1.PEN.3.0 = Timeticks: (363136200) 42 days, 0:42:42.00
.1.3.6.1.4.1.PEN.4.0 = IpAddress: 127.0.0.1
.1.3.6.1.4.1.PEN.5.0 = Counter32: 9
.1.3.6.1.4.1.PEN.6.0 = Gauge32: 9

这似乎可以解决这两个问题,但是我不确定它与 'proper' OID 树安装相比的能力范围。

-最佳-(完整解决方案)
使用 MIB 注册 OID...