如何在 tkmib 中打开 MIB 文件?

如何在 tkmib 中打开 MIB 文件?

我尝试打开几个 MIB 文件,但tkmib没有成功。例如:

$ sudo apt-get install tkmib
$ wget http://www.mibsearch.com/vendors/Compaq/download/CPQHLTH-MIB
$ tkmib CPQHLTH-MIB

单击“行走”,然后您应该收到如下错误消息:

setting opts
getaddrinfo: CPQHLTH-MIB No address associated with hostname
error:snmp_new_session: Couldn't open SNMP session at /usr/lib/perl5/SNMP.pm line 475.
unable to create session at /usr/lib/perl5/SNMP.pm line 547.
Tk::Error: Can't call method "getnext" on unblessed reference at /usr/bin/tkmib line 506.
 main::snmpwalk at /usr/bin/tkmib line 506
 Tk callback for .frame5.button2
 Tk::__ANON__ at /usr/lib/perl5/Tk.pm line 250
 Tk::Button::butUp at /usr/lib/perl5/Tk/Button.pm line 175
 <ButtonRelease-1>
 (command bound to event)

由于我对 SNMP 和 MIB 文件完全不熟悉,而且man tkmib了解得很少,我实际上需要做什么才能使用这个文件?

答案1

安装 snmp-mibs-downloader:

sudo apt-get install snmp-mibs-downloader

它在 /var/lib/mibs/ietf 中安装了很多 MIBS

然后加载文件 > 加载

答案2

你想做什么?

您提供给 tkmib 的命令行参数似乎已被用作主机名。

无需任何命令行参数即可运行它,然后使用文件->加载新 Mib 文件,并选择您的 MIB。但您可能会遇到问题,因为未安装基本 MIB。

您可能需要更改屏幕下方约 2/3 处显示的主机名(默认为“localhost”)。

您没有提到您使用的是哪个 Ubuntu 版本,但它们似乎没有包含在 12.04 中的任何软件包中。在 10.04 中,基本 MIB 是软件包的一部分libsnmp-base。如果您运行的版本不提供 libsnmp-base 中的基本 MIB,我建议手动下载 MIB 并将它们放在以下目录之一中:

  • $HOME/.snmp/mibs
  • /usr/共享/mibs/站点
  • /usr/share/snmp/mibs
  • /usr/share/mibs/iana
  • /usr/share/mibs/ietf
  • /usr/share/mibs/netsnmp

因为这些目录(显然)被 tkmib(和其他软件)用作搜索路径。

答案3

这个tkmib包裹似乎已经“破损”了一段时间了。

看看这个非常古老的错误tkmib 没有来自 OID 的值从 2010 年起在 Debian 邮件列表上。Ubuntunet-snmp附带的默认版本是 5.4.3,并且可以与其他依赖 SNMP 的应用程序(例如 Cacti)一起按预期运行,但不能与 一起运行tkmib

我最近编译了新版本的net-snmp(版本5.7.2),如下所示这些说明并且能够从中获得一些最低限度的用途tkmib

编译后,我能够获得 的一些返回值tkmib。但是应用程序接口的行为并不像预期的那样。也就是说,当get对 MIB 实例发出查询时(例如,查询 sysDesc MIB),tkmib 返回 的值NOSUCHINSTANCE。但是,对同一实例发出getnext查询时会返回实际的预期值。

我强烈建议使用其他 MIB 浏览器,例如SNMP 数据库. 在我看来,与 tkmib 相比,SnmpB 的功能和界面在获取准确的 SNMP 值方面更加出色。

MIB 浏览、轮询以及设置 MIBS 比使用 tkmib 要轻松得多

如果您打算使用tkmib,请记住您还需要手动创建一个~/.snmp目录来保存会话之间任何更改的值。

如果你有兴趣试用 snmpb,可以下载 .deb 文件这里并使用sudo dpkg -i snmpb_0.8_i386.deb

祝你好运。

相关内容