执行snmpwalk时如何显示MIB对象的单位?
解决SNMP对象显示单位的问题
问题原因
你使用的DISPLAY-HINT格式不正确,仅写"%"无法让SNMP工具将整数与单位关联显示;同时需确保工具正确加载了自定义MIB并支持解析DISPLAY-HINT字段。
解决方案
修正MIB中的DISPLAY-HINT格式
对于Integer32类型,需要用格式化字符串指定数值与单位的组合方式,正确写法为"d%%":callSuccessRate OBJECT-TYPE SYNTAX Integer32 DISPLAY-HINT "d%%" UNITS "%" MAX-ACCESS read-write STATUS current DESCRIPTION "Success rate of call" DEFVAL { 0 } ::= { call 1 }格式说明:
d表示将整数以十进制形式输出%%表示输出一个%符号(单个%是格式转义符,需用两个表示实际的百分号)
确保SNMP工具正确加载自定义MIB
使用snmpwalk时,若自定义MIB不在默认搜索路径,需指定MIB文件所在目录,命令示例:snmpwalk -v2c -c public -M /path/to/your/mib-files localhost MY-MIB::callSuccessRate
验证结果
正确配置后,输出会显示为:
MY-MIB::callSuccessRate = INTEGER: 33%
内容的提问来源于stack exchange,提问作者gee22
相关产品推荐
相关产品推荐

