您的位置:首页 > 移动开发

SNMP4J构建java snmp app

2012-04-10 12:05 253 查看
实现需要引入snmp4j的lib,地址:http://www.snmp4j.org/html/download.htmlGET

功能的实现:
import org.snmp4j.CommunityTarget;
import org.snmp4j.PDU;
import org.snmp4j.Snmp;
import org.snmp4j.TransportMapping;
import org.snmp4j.event.ResponseEvent;
import org.snmp4j.mp.SnmpConstants;
import org.snmp4j.smi.Address;
import org.snmp4j.smi.GenericAddress;
import org.snmp4j.smi.OID;
import org.snmp4j.smi.OctetString;
import org.snmp4j.smi.Variable;
import org.snmp4j.smi.VariableBinding;
import org.snmp4j.transport.DefaultUdpTransportMapping;

public class SNMPTest {

/**
* @param args
*/

public static final String OID_ARMCPU_INFO="1.3.6.1.2.1.1.5";

public static void main(String[] args) {
// TODO Auto-generated method stub

Address targetAddress = GenericAddress.parse("udp:192.168.1.153/161");
CommunityTarget target = new CommunityTarget();
target.setCommunity(new OctetString("public"));
target.setAddress(targetAddress);
target.setTimeout(10000);
target.setVersion(SnmpConstants.version2c);

PDU pdu = new PDU();
pdu.add(new VariableBinding(new OID(OID_ARMCPU_INFO)));
pdu.setType(PDU.GETNEXT);

try {
TransportMapping transport = new DefaultUdpTransportMapping();
transport.listen();
Snmp snmp = new Snmp(transport);
ResponseEvent response = snmp.send(pdu, target);
if(response!=null){
PDU respPdu = response.getResponse();
for(int i=0;i<respPdu.size();i++){
VariableBinding varBinding =respPdu.get(i);
Variable var = varBinding.getVariable();
System.out.println(var.toString());
}
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息