3

我是snmp新手,我想弄清楚我应该获取/捕获什么 OID 以查看我的打印机、交换机(和服务器)是否正在运行?我不需要知道细节——只是一个简单的测试。我已经成功地从 bash 和iReasoning MIB browser的设备获取、getbulk(和walk)请求。

编辑:

也许

.1.3.6.1.2.1.1.3.0
Name/OID: sysUpTime.0; Value (TimeTicks): 194 hours 43 seconds (69844352)

只是为了那个!?当出现问题时会发生什么?- 这会立即重置吗?- 或者它会停止计数吗?还是只是上次开机以来的时间?

4

1 回答 1

3

打印机

您应该使用打印机 MIBv2来监控打印机卡纸错误状态...

  • hrPrinterDetectedErrorState报告打印机错误,例如碳粉不足、卡纸等... RFC 包含有关特定代码含义的详细信息
  • hrDeviceStatus将揭示打印机处理任务的全局能力。有关详细信息,请参阅打印机 MIBv2,第 2.2.13.2 节

sysUpTime.0是一个 OID,它报告系统的 SNMP 堆栈已启动的时间(参考RFC 1213:MIB-II)。如果此值返回并递增,则 99% 的安全赌注是打印机已启动。大多数人sysUpTime用来检测设备是否因某种原因重启;如果发生这种情况,您会看到 突然减少sysUpTime.0,除非您的最后一个值是 248 天左右(32 位计数器会滚动)。

以太网交换机

检查以太网交换机的基本运行状况通常通过检查sysDescr.0或来完成sysUpTime.0;如果您关心特定链接的上/下状态,则此启发式的问题就来了...此时,您需要检查来自 的值ifOperStatus,该值由 索引ifIndex并使用来自 的接口名称ifName。请参阅以下示例...

[mpenning@Hotcoffee ~]$ ## Walk ifName correlated to ifIndex
[mpenning@Hotcoffee ~]$ snmpwalk -v 2c -c Public 172.25.116.6 .1.3.6.1.2.1.31.1.1.1.1
iso.3.6.1.2.1.31.1.1.1.1.1 = STRING: "Fa0/0"
iso.3.6.1.2.1.31.1.1.1.1.2 = STRING: "Nu0"
[mpenning@Hotcoffee ~]$ ## Walk ifOperStatus (up==1)
[mpenning@Hotcoffee ~]$ snmpwalk -v 2c -c Public 172.25.116.6 .1.3.6.1.2.1.2.2.1.8
iso.3.6.1.2.1.2.2.1.8.1 = INTEGER: 1
iso.3.6.1.2.1.2.2.1.8.2 = INTEGER: 1
[mpenning@Hotcoffee ~]$

因此,我们从示例中知道,接口“Fa0/0”(索引:1)和“Nu0”(索引:2)的 ifOperStatus 均为“up”;索引值是结果的 OID 中返回的最后一个整数。

脚本

我假设您将使用bash您的监控脚本;如果是这样,请检查您的 SNMP 管理器的Net-SNMP

于 2012-04-26T20:21:13.380 回答