snmp response 问题 请问我使用的是snmp4j,现在想接收一个set消息后,向set发送端返回一个resopse,这个应怎么实现呢?请给位高手多多指教,谢谢!!!!小弟整了好几天了,还是未果,十分感谢!!! 在线等 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 需要在snmp agent里接收set消息和返回response消息,其实就是udp协议,你怎么发送set的,就怎么response。端口和ip明确就行。 同意楼上的response是根据你的发送的set接受的 我初学的,写了一个测试,共同研究了.CommandResponder responder = new CommandResponder(){ public void processPdu(CommandResponderEvent event){ /*取得PDU信息*/ PDU gpdu = event.getPDU(); if(gpdu == null){ System.out.println("pdu is null."); }else{ /*分析PDU信息*/ System.out.println("client rcv:"+gpdu.toString()); switch(gpdu.getType()){ case PDU.GET: CommunityTarget target = new CommunityTarget(); Address addr = event.getPeerAddress(); target.setAddress(addr); PDU rpdu = new PDU(); rpdu.setType(PDU.RESPONSE); rpdu.setRequestID(gpdu.getRequestID()); for(int i=0; i<gpdu.getVariableBindings().size(); i++){ VariableBinding vb = gpdu.get(i); OID oid = vb.getOid(); //System.out.println("get oid:"+oid); //.....get oid value //vb.setOid(oid); //String svar = "hehe+"+i; //vb.setVariable(new OctetString(svar)); rpdu.add(vb); } try{ /*回复PDU信息*/ event.getMessageDispatcher() .sendPdu(event.getTransportMapping(), event.getPeerAddress(), event.getMessageProcessingModel(), event.getSecurityModel(), event.getSecurityName(), event.getSecurityLevel(), rpdu, false); }catch(Exception ex){ ex.printStackTrace(); } break; default: } } }};snmp.addCommandResponder(responder); JRE 1.6.0_22 签名jar包里调用未签名jar包类异常 finally和catch的问题 百思不得其解,如何判断两个长方形是否有部分重叠呢? 高分求java连接oracle 10g,执行存储过程的程序。 关于如何在java中控制小数点后面位数的问题 怎样在JTextArea中光标定位处实现粘贴的功能? 谁知道 jsp web 编程指南的电子书籍在哪下载!!!急!!! JDBC问题求助,谢谢 谁又JReport的UserID和Install Key 分离锁和分拆锁的区别? 一个关于java调用shell的问题 关于静态引用的问题,很点怪,请指教
CommandResponder responder = new CommandResponder(){
public void processPdu(CommandResponderEvent event){
/*取得PDU信息*/
PDU gpdu = event.getPDU();
if(gpdu == null){
System.out.println("pdu is null.");
}else{
/*分析PDU信息*/
System.out.println("client rcv:"+gpdu.toString());
switch(gpdu.getType()){
case PDU.GET:
CommunityTarget target = new CommunityTarget();
Address addr = event.getPeerAddress();
target.setAddress(addr);
PDU rpdu = new PDU();
rpdu.setType(PDU.RESPONSE);
rpdu.setRequestID(gpdu.getRequestID());
for(int i=0; i<gpdu.getVariableBindings().size(); i++){
VariableBinding vb = gpdu.get(i);
OID oid = vb.getOid();
//System.out.println("get oid:"+oid);
//.....get oid value
//vb.setOid(oid);
//String svar = "hehe+"+i;
//vb.setVariable(new OctetString(svar));
rpdu.add(vb);
}
try{
/*回复PDU信息*/
event.getMessageDispatcher()
.sendPdu(event.getTransportMapping(),
event.getPeerAddress(),
event.getMessageProcessingModel(),
event.getSecurityModel(),
event.getSecurityName(),
event.getSecurityLevel(),
rpdu, false);
}catch(Exception ex){
ex.printStackTrace();
}
break;
default:
}
}
}
};snmp.addCommandResponder(responder);