java snmpget_Java Snmp.getNext方法代码示例

段干飞翔
2023-12-01

import org.snmp4j.Snmp; //导入方法依赖的package包/类

public static void main(String[] args) throws Exception

{

System.out.println("SNMP GET-NEXT Simple Request");

// Create TransportMapping and Listen

TransportMapping transport = new DefaultUdpTransportMapping();

transport.listen();

// Create Target Address object

CommunityTarget comtarget = new CommunityTarget();

comtarget.setCommunity(new OctetString(community));

comtarget.setVersion(snmpVersion);

comtarget.setAddress(new UdpAddress(ipAddress + "/" + port));

comtarget.setRetries(2);

comtarget.setTimeout(1000);

// Create the PDU object

PDU pdu = new PDU();

pdu.add(new VariableBinding(new OID(oidValue)));

pdu.setRequestID(new Integer32(1));

pdu.setType(PDU.GETNEXT);

// Create Snmp object for sending data to Agent

Snmp snmp = new Snmp(transport);

System.out.println("Sending GetNext Request to Agent ...");

ResponseEvent response = snmp.getNext(pdu, comtarget);

// Process Agent Response

if (response != null)

{

System.out.println("\nResponse:\nGot GetNext Response from Agent...");

PDU responsePDU = response.getResponse();

if (responsePDU != null)

{

int errorStatus = responsePDU.getErrorStatus();

int errorIndex = responsePDU.getErrorIndex();

String errorStatusText = responsePDU.getErrorStatusText();

if (errorStatus == PDU.noError)

{

System.out.println("Snmp GetNext Response for sysObjectID = " + responsePDU.getVariableBindings());

}

else

{

System.out.println("Error: Request Failed");

System.out.println("Error Status = " + errorStatus);

System.out.println("Error Index = " + errorIndex);

System.out.println("Error Status Text = " + errorStatusText);

}

}

else

{

System.out.println("Error: GetNextResponse PDU is null");

}

}

else

{

System.out.println("Error: Agent Timeout... ");

}

snmp.close();

}

 类似资料: