eSight(V200R005C00版本)通过SNMPv3协议添加设备失败

发布时间:  2015-10-29 浏览次数:  1150 下载次数:  9
问题描述

eSight(V200R005C00版本)通过SNMPv3协议添加设备失败。

处理过程

 设备与eSight网管中心能够正常双向ping通。



 检查SNMP v3在网管侧和设备侧的配置是否一致。



 在eSight的MIB管理中,测试设备到eSight中SNMP的连通性。


 在eSight服务器上抓取数据包。



查看抓包信息,设备的报文中engineid值为 MISSING,没有获得正确的engineid值。

怀疑设备snmp-agent local-engineid 配置存在异常,执行undo snmp-agent local-engineid命令恢复本地SNMP实体的缺省引擎ID值,并重新配置SNMP后,设备添加成功。

根因

snmp-agent local-engineid命令可以为本地SNMP实体设置引擎ID,从而标识一个SNMP实体。

SNMP引擎ID是对SNMP模块进行管理的唯一标识,它在一个管理域内唯一的标识一个SNMP实体。SNMP引擎ID是SNMP实体的重要组成部分,通过它完成SNMP消息的消息调度、消息处理、安全验证、访问控制等功能。

SNMPv3需要SNMP 代理定义一个唯一的“engineid”用于对SNMPv3请求进行响应。

设备本地默认local-engineid被修改,与本地网络中的某台设备的local-engineid 冲突,在eSight收到两个local-engineid相同的设备信息,导致无法对SNMPv3请求进行响应,所以在eSight给设备回应的数据包中local-engineid字段未识别,从而造成在eSight上设备无法正确被添加。

解决方案

在设备端执行undo snmp-agent local-engineid命令用来恢复本地SNMP实体的引擎ID为缺省值,并再次进行SNMP配置。

如果选择自行设置引擎ID必须遵从以下的原则:

  • 前4个字节是IANA(Internet Assigned Numbers Authority)分配的企业私有设备号,16进制形式。华为公司的设备号是十进制2011,第一位二进制固定取值为1,因此16进制形式为800007DB。
  • 设备信息部分的取值由用户自行设置,建议取设备IP地址或MAC地址作为设备信息唯一标识该设备。
建议与总结

对于设备的某些默认参数不要随意进行改动。

END