Create SNMP Client in JAVA Using SNMP4j for ipv6 addresses -


i trying create snmp client in java.

snmpmanager client = new snmpmanager("udp:73.251.102.191/162"); 

this ipv4 address, when trying same ipv6 addresses throws below error.

error:

---------------exception in thread "main" org.snmp4j.messageexception: no route host @ org.snmp4j.messagedispatcherimpl.sendpdu(unknown source) @ org.snmp4j.snmp.sendmessage(unknown source) @ org.snmp4j.snmp.send(unknown source) @ org.snmp4j.snmp.send(unknown source) @ snmptrial1.snmpmanager.get(snmpmanager.java:55) @ snmptrial1.snmpmanager.getasstring(snmpmanager.java:45) @ snmptrial1.snmpmanager.main(snmpmanager.java:34) 

code: code works ipv4 addresses not ipv6

public class snmpmanager { snmp snmp = null; string address = null; public snmpmanager(string add) {     address = add; } public static void main(string[] args) throws ioexception {     snmpmanager client = new snmpmanager("udp:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx/162"); // ipv6 address     client.start();     string sysdescr = client.getasstring(new oid(".1.3.6.1.4.1.4115.1.20.1.1.3.62.4.1.1.1"));     system.out.println(sysdescr); } private void start() throws ioexception {     transportmapping transport = new defaultudptransportmapping();     snmp = new snmp(transport);     transport.listen(); }  public string getasstring(oid oid) throws ioexception {     responseevent event = get(new oid[] { oid });     return event.getresponse().get(0).getvariable().tostring(); } public responseevent get(oid oids[]) throws ioexception {     pdu pdu = new pdu();     (oid oid : oids) {         pdu.add(new variablebinding(oid));     }     pdu.settype(pdu.get);     responseevent event = snmp.send(pdu, gettarget(), null);     if(event != null) {         return event;     }     throw new runtimeexception("get timed out"); } private target gettarget() {     address targetaddress = genericaddress.parse(address);     communitytarget target = new communitytarget();     target.setcommunity(new octetstring("xxxxx"));     target.setaddress(targetaddress);     target.setretries(2);     target.settimeout(2000);     target.setversion(snmpconstants.version2c);     return target; } 

}

if os mac osx java 7 , 8 has bug related ipv6 , socket connections. here link: jvm bug java 6 seems work fine.


Comments