SNMP:此OID上此代理上没有可用的此类对象

SNMP:此OID上此代理上没有可用的此类对象,snmp,oid,Snmp,Oid,我正在尝试使用提供的mib文件监视UPS(NetVision)的状态。 因此,UpBatteryStatus应为.1.3.6.1.2.1.33.1.2.1.0 snmpwalk-c社区-v1 192.168.1.10.1.3.6.1.2.1.33.1.2.1.0 iso.3.6.1.2.1.33.1.2.1.0=整数:2 下面是棘手的部分: snmptranslate-Of SOCOMECUPS-MIB::UpBatteryStatus .iso.org.dod.internet.private

我正在尝试使用提供的mib文件监视UPS(NetVision)的状态。
因此,UpBatteryStatus应为.1.3.6.1.2.1.33.1.2.1.0

snmpwalk-c社区-v1 192.168.1.10.1.3.6.1.2.1.33.1.2.1.0 iso.3.6.1.2.1.33.1.2.1.0=整数:2

下面是棘手的部分:

snmptranslate-Of SOCOMECUPS-MIB::UpBatteryStatus .iso.org.dod.internet.private.enterprises.socomecSicon.software.netvision.upsObjects.upsBattery.upsBatteryStatus

snmptranslate-在SOCOMECUPS-MIB上::UpBatteryStatus .1.3.6.1.4.1.4555.1.1.1.1.2.1 它与.1.3.6.1.2.1.33.1.2.1.0不同,并且它不响应值

检查\u snmp-H 192.168.1.10-C社区-o upbatterystatus-w 1-C@3:7-m/var/lib/mibs/ietf/NetVision-nv6-unix.mib-l“电池状态:”

外部命令错误:数据包中有错误 原因:(noSuchName)此MIB中没有这样的变量名。 失败的对象:SOCOMECUPS-MIB::UpBatteryStatus


你知道为什么它不能识别为UpBatteryStatus吗?

在两个不同的MIB中似乎有两个对象名为UpBatteryStatus:和。这就解释了不同的OID。这没什么错。OID是一个对象的真正标识符,这个名称只适用于我们人类

至于这个错误,我不知道check_snmp是做什么的,所以我不能说什么。但是,你试过这个命令吗

snmpwalk-c COMMUNITY-v1 192.168.1.10.1.3.6.1.4.1.4555.1.1.1.1.1.2.1

有用的命令:

snmptranslate-Tp-m/usr/share/mibs/ietf/NetVision-nv6-unix.mib

以及:

“UpBatteryStatus”“1.3.6.1.2.1.33.1.2.1”

报告正确值的Nagios check_snmp命令为:

/usr/local/nagios/libexec/check_snmp -H 192.168.1.10 -C COMMUNITY -m /var/lib/mibs/ietf/NetVision-nv6-unix.mib -o upsBatteryStatus -w @0:1 -c @3:7 -l "Battery Status: "
SNMP OK - Battery Status:  2 | 'Battery Status: '=2;1;7; 

谢谢您的帮助。

“那么,UpBatteryStatus应该是.1.3.6.1.2.1.33.1.2.1.0”您从哪里获得这些信息的?很明显,MIB不同意。如果我不同意OID.1.3.6.1.2.1.33.1.2.1.0,我会得到一个有效的答复。另一方面,我什么也得不到。1.3.6.1.4.1.4555.1.1.1.1.2.1!是的,没错。但是我什么也没得到。1.3.6.1.4.1.4555.1.1.1.1.2.1!根据制造商的说法,这应该是正确的oid。“这没什么错”不正确,你不能合法地重复使用名称,这就是原因。见RFC 2578 3.6。SOCOMECUPS应该被称为其他名称以消除新的/替换MIB的歧义。实际上,您链接到的MIB是UPS-MIB,而不是SOCOMECUPS-MIB。面对分散注册,不可能保证所有MIB上描述符的唯一性。这就是为什么他们允许碰撞,即你的RFC2578 3.2。它们只是要求MIB和标准MIB具有唯一性,即RFC2578第3.1节。这就是为什么它没有问题。另外,在我的回答中,我引用了2个指向2个不同MIB的链接。@ampratino我们已经看到了一些设备,在这些设备中,公共社区无法访问私有MIB。确保这一点。
/usr/local/nagios/libexec/check_snmp -H 192.168.1.10 -C COMMUNITY -m /var/lib/mibs/ietf/NetVision-nv6-unix.mib -o upsBatteryStatus -w @0:1 -c @3:7 -l "Battery Status: "
SNMP OK - Battery Status:  2 | 'Battery Status: '=2;1;7;