- 论坛徽章:
- 0
|
我想使用snmp4j与设备通信,是不是首先要知道snmp的版本,和oid,oid怎么获取\r\n String ip = \"192.168.100.1\";\r\n Address targetAddress = GenericAddress.parse(\"udp:\" + ip + \"/161\");\r\n log.debug(\"ip\"+ip);\r\n TransportMapping transport;\r\n transport = new DefaultUdpTransportMapping();\r\n Snmp snmp = new Snmp(transport);\r\n transport.listen();\r\n CommunityTarget target = new CommunityTarget();\r\n target.setCommunity(new OctetString(\"public\"));\r\n target.setAddress(targetAddress);\r\n target.setRetries(2);\r\n target.setTimeout(1000);\r\n target.setVersion(SnmpConstants.version1);\r\n // creating PDU\r\n PDU pdu = new PDU();\r\n\r\n String oidPrefix = \"1.3.6.1.2.1.1.1\";\r\n pdu.add(new VariableBinding(new OID(oidPrefix )));\r\n pdu.setType(PDU.GET);\r\n\r\n ResponseEvent event = snmp.send(pdu, target);\r\n PDU resposePDU = event.getResponse();\r\n \r\n Vector result = resposePDU.getVariableBindings();\r\n VariableBinding vb = (VariableBinding) result.get(0);\r\n String sID = vb.getVariable().toString();\r\n log.debug(\"sID\"+sID);\r\n\r\n这样取对不对,为什么每次result 中的值都是空的,有做过的兄弟给个例子吧,多谢了 |
|