构建pysnmp mib:在Ubuntu 14.04上将cisco mib文件转换为python失败

构建pysnmp mib:在Ubuntu 14.04上将cisco mib文件转换为python失败,python,snmp,pysnmp,Python,Snmp,Pysnmp,我正在尝试将cisco站点中的一些.my文件转换为.py文件,以便与pysnmp应用程序一起使用,但每个文件都失败了 我已经用我的所有MIB将我的SMIPATH设置为当前目录。但我在每个cisco MIB上都收到了相同的错误 root@testbox:/home/johnny# build-pysnmp-mib -o CISCO-CDP-MIB.py CISCO-CDP-MIB.my Segmentation fault (core dumped) Empty input smidump -k

我正在尝试将cisco站点中的一些.my文件转换为.py文件,以便与pysnmp应用程序一起使用,但每个文件都失败了

我已经用我的所有MIB将我的SMIPATH设置为当前目录。但我在每个cisco MIB上都收到了相同的错误

root@testbox:/home/johnny# build-pysnmp-mib -o CISCO-CDP-MIB.py CISCO-CDP-MIB.my
Segmentation fault (core dumped)
Empty input
smidump -k -f python CISCO-CDP-MIB.my | /usr/bin/libsmi2pysnmp fails
make sure you are using libsmi version > 0.4.5 (or svn)

root@testbox:/home/johnny# build-pysnmp-mib -o CISCO-LWAPP-AAA-MIB.py CISCO-LWAPP-AAA-MIB.my
Segmentation fault (core dumped)
Empty input
smidump -k -f python CISCO-LWAPP-AAA-MIB.my | /usr/bin/libsmi2pysnmp fails
make sure you are using libsmi version > 0.4.5 (or svn)

自pysnmp 4.3以来,构建pysnmp mib脚本已过时。请使用包中的mibdump.py工具(版本0.0.7及更高版本)来生成pysnmp MIB模块。您可以将生成的模块与任何pysnmp版本一起使用

以下文件从中获取CISCO-LWAPP-MFP-MIB,并将其编译为pysnmp格式,以及它所依赖的所有其他MIB:

$ mibdump.py CISCO-LWAPP-MFP-MIB
Source MIB repositories: file:///usr/share/snmp/mibs, http://mibs.snmplabs.com/asn1/@mib@
Borrow missing/failed MIBs from: http://mibs.snmplabs.com/pysnmp/notexts/@mib@
MIBs to compile: CISCO-LWAPP-MFP-MIB
Destination format: pysnmp
Also compile all relevant MIBs: yes

Created/updated MIBs: CISCO-LWAPP-AP-MIB, CISCO-LWAPP-DOT11-CLIENT-MIB, CISCO-LWAPP-DOT11-MIB, CISCO-LWAPP-MFP-MIB, CISCO-LWAPP-TC-MIB, CISCO-LWAPP-WLAN-MIB, CISCO-SMI, CISCO-TC, CISCO-VTP-MIB, ENTITY-MIB, RMON-MIB
您可以为可信的Cisco MIBs存储库传递mibdump.py URL,以便它可以直接从那里获取可能更新的MIB

或者,如果您将pysnmp升级到版本4.3,则不需要显式的MIB转换——所有转换都将由pysnmp在幕后完成。包括ASN.1 MIB文件搜索和从Internet下载


以前的(基于libsmi的)转换过程非常脆弱且有缺陷。

如何“确保您使用的是libsmi版本>0.4.5”?如果这么简单,我早就修复了。这是我尝试使用mibdump.py的最新pysnmp包,但也出现了错误。我想我会放弃python而使用其他东西——pysmi不太可能有严重的bug。但有时mib是。如果你愿意解决问题,我需要更多关于失败的细节。在上面添加了更多细节。py在每个MIB I tryAlright上显示错误,这是pysmi中的一个bug。它在0.0.7版中已修复,我可以使用mibdump.py转换这些CISCO MIB。请尝试一下,如果有进一步的问题,请告诉我()。