我担心 Ubuntu 的明确 MIB 文件集似乎存在语法错误。我是否使用了错误的 MIB?
我用过了
sudo apt-get install snmp-mibs-downloader
sudo download-mibs
Run Code Online (Sandbox Code Playgroud)
要安装大量似乎运行良好的 MIB,我几乎可以按预期进行 snmpwalk 和 snmptranslate。但是,每次运行这些命令时我都会看到一些错误,表明 MIB 有一些语法错误。
Bad operator (INTEGER): At line 73 in /usr/share/mibs/ietf/SNMPv2-PDU
Unlinked OID in IPATM-IPMC-MIB: marsMIB ::= { mib-2 57 }
Undefined identifier: mib-2 near line 18 of /usr/share/mibs/ietf/IPATM-IPMC-MIB
Expected "::=" (RFC5644): At line 493 in /usr/share/mibs/iana/IANA-IPPM-METRICS-REGISTRY-MIB
Expected "{" (EOF): At line 651 in /usr/share/mibs/iana/IANA-IPPM-METRICS-REGISTRY-MIB
Bad object identifier: At line 651 in /usr/share/mibs/iana/IANA-IPPM-METRICS-REGISTRY-MIB
Bad parse of OBJECT-IDENTITY: At line 651 in /usr/share/mibs/iana/IANA-IPPM-METRICS-REGISTRY-MIB
Run Code Online (Sandbox Code Playgroud)
仅举一个例子:
Unlinked OID in IPATM-IPMC-MIB: marsMIB ::= { mib-2 57 }
Run Code Online (Sandbox Code Playgroud)
这里的错误是导入中缺少 mib-2。
虽然我可以尝试解决这些错误,但我担心我没有使用正确的 MIB。这些错误肯定不应该发生吗?
我的 snmp.conf 有
mibs + ALL
我认为这是必要的,如果按照某些建议,我们评论该行,我们在遍历树时似乎没有获得完整的 OID 集。
tel*_*coM 11
您使用的是哪个版本的 Ubuntu?
Ubuntu 可能snmp-mibs-downloader
从 Debian获取其软件包,而 Debian 对可再发行性非常严格,因此snmp-mibs-downloader
它从公共来源获取其 MIB,包括实际的 RFC 和 Internet 上的其他标准文档。
然而,其中一些标准文件包含拼写错误和其他错误……在某些情况下,修复这些显然需要发布相应标准文件的全新修订版。而这需要相当多的时间和精力。(可能有官方勘误文件,但不一定是适合自动打补丁的格式。)
在 Debian 中,当前版本snmp-mibs-downloader
包含一个.diff
文件,用于修复各种基于 RFC 的 MIB 中的许多错误,但并非总是如此。您包含的错误列表对我来说很熟悉......
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=584657
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=689483
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=689485
所有这些以及更多内容都在snmp-mib-downloader
最初于 2016 年 9 月发布的1.1+nmu1 版本中得到修复。如果您使用的版本早于此,并且您的 Ubuntu 版本没有可用的更新,请考虑在某些版本上下载 MIB具有更新版本软件包的其他计算机,然后将生成的固定 MIB 复制到您需要的任何位置。
在那之后,应该只剩下一个错误:
Bad operator (INTEGER): At line 73 in /usr/share/snmp/mibs/ietf/SNMPv2-PDU
Run Code Online (Sandbox Code Playgroud)
该网页有一个包含固定 SNMPv2-PDU MIB 文件的 pastebin的链接。修改只是将命名常量整数值max-bindings
替换为其实际数值并注释掉常量定义,同样将BulkPDU的定义调整为完全自包含。这些更改使 net-snmp MIB 解析器满意。
或者,您可以删除 SNMPv2-PDU MIB 文件,因为它只是 SNMPv2 协议数据单元的正式定义,并且该定义已内置于大多数 SNMP 工具中。
归档时间: |
|
查看次数: |
10482 次 |
最近记录: |