网络设备监控实现及SNMP协议(5)

2023-05-03 来源:飞速影视
Agent:首先对消息进行认证,认证通过后对PDU进行解密。解密成功后,Agent根据请求查询MIB中的sysContact节点,得到sysContact的值并将其封装到Response报文中的PDU,并对PDU进行加密,向NMS发送响应。如果查询不成功或认证、解密失败,Agent会向NMS发送出错响应。

6. SNMP V3的Java实现


在发起Snmp请求时,需要先建立SNMP Session。如下代码示例:
UserTarget target = new UserTarget(); target.setAddress(GenericAddress.parse(sb.toString())); target.setRetries(retries); target.setTimeout(timeout); target.setVersion(SnmpConstants.version3); target.setSecurityLevel(SecurityLevel.AUTH_PRIV); target.setSecurityName(new OctetString(user)); SnmpSession session = new SnmpSession(); session.setTarget(target); session.addUsmUser(new OctetString(user), oidAuthProtocol, octAuthPassphrase, oidPrivProtocol, octPrivPassphrase);
和Snmp V1/V2C最大的区别在于,创建SnmpV3 Session时需要加入UsmUser安全认证模式。代码实现如下:
public void addUsmUser(OctetString octSecurityName, OID oidAuthProtocol, OctetString octAuthPassphrase, OID oidPrivProtocol, OctetString octPrivPassphrase) { USM usm = new USM(SecurityProtocols.getInstance(), new OctetString(MPv3.createLocalEngineID()), 0); SecurityModels.getInstance().addSecurityModel(usm); snmp.getUSM() .addUser(octSecurityName, new UsmUser(octSecurityName, oidAuthProtocol, octAuthPassphrase, oidPrivProtocol, octPrivPassphrase));}
相关影视
合作伙伴
本站仅为学习交流之用,所有视频和图片均来自互联网收集而来,版权归原创者所有,本网站只提供web页面服务,并不提供资源存储,也不参与录制、上传
若本站收录的节目无意侵犯了贵司版权,请发邮件(我们会在3个工作日内删除侵权内容,谢谢。)

www.fs94.org-飞速影视 粤ICP备74369512号