snmp监控设备运行启动时间

项目场景:

监控网络设备运行时间
通过snmp oid监控


问题描述

snmp 通过sysUpTime 取时间最大是2^32
而且单位还是ms
类型是Timeticks


原因分析:

sysUpTime 是一个 32 位计数器,将在 496 天后翻转
snmpwalk结果如下
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (456349) 1:16:03.49

snmpEngineTime (.1.3.6.1.6.3.10.2.1.3) 以秒为单位返回正常运行时间,并且不应翻转 135 年。
snmpwalk结果如下
SNMP-FRAMEWORK-MIB::snmpEngineTime.0 = INTEGER: 41580822 seconds

解决方案:

换用snmpEngineTime 取值