[SNMP4J] Unknown engine ID
Marcel Bassuener
Marcel.Bassuener at unibw.de
Sat Nov 27 22:57:32 CET 2010
Hi,
I have a problem. I wrote an SNMP Agent, which works (I tested it with
an other programm). But now I tried to write my own manager and send
messages. Every time I start it the agent says: (Unknown engine ID)
3283585 [DefaultUDPTransportMapping_127.0.0.1/161] DEBUG
org.snmp4j.transport.DefaultUdpTransportMapping - Received message from
/127.0.0.1/63167 with length 61:
30:3b:02:01:03:30:11:02:04:05:e4:af:d7:02:03:00:ff:ff:04:01:04:02:01:03:04:10:30:0e:04:00:02:01:00:02:01:00:04:00:04:00:04:00:30:11:04:00:04:00:a0:0b:02:01:00:02:01:00:02:01:00:30:00
3283585 [DefaultUDPTransportMapping_127.0.0.1/161] DEBUG
org.snmp4j.mp.MPv3 - SNMPv3 header decoded: msgId=98873303,
msgMaxSize=65535, msgFlags=04, secModel=3
3283585 [DefaultUDPTransportMapping_127.0.0.1/161] DEBUG
org.snmp4j.security.USM - RFC3414 §3.2.3 Unknown engine ID:
3283586 [DefaultUDPTransportMapping_127.0.0.1/161] DEBUG
org.snmp4j.mp.MPv3 - Adding cache entry:
StateReference[msgID=98873303,pduHandle=PduHandle[1990949864],securityEngineID=,securityModel=org.snmp4j.security.USM at c5c3ac,securityName=,securityLevel=1,contextEngineID=,contextName=]
3283587 [DefaultUDPTransportMapping_127.0.0.1/161] DEBUG
org.snmp4j.mp.MPv3 - Removed cache entry:
StateReference[msgID=98873303,pduHandle=PduHandle[1990949864],securityEngineID=,securityModel=org.snmp4j.security.USM at c5c3ac,securityName=,securityLevel=1,contextEngineID=,contextName=]
3283587 [DefaultUDPTransportMapping_127.0.0.1/161] DEBUG
org.snmp4j.security.USM - RFC3414 §3.1.4.b Outgoing message is not
encrypted
3283587 [DefaultUDPTransportMapping_127.0.0.1/161] DEBUG
org.snmp4j.transport.DefaultUdpTransportMapping - Sending message to
127.0.0.1/63167 with length 87:
30:55:02:01:03:30:11:02:04:05:e4:af:d7:02:03:00:ff:ff:04:01:00:02:01:03:04:19:30:17:04:09:80:00:13:70:01:c0:a8:0b:02:02:01:00:02:01:00:04:00:04:00:04:00:30:22:04:00:04:00:a8:1c:02:01:00:02:01:00:02:01:00:30:11:30:0f:06:0a:2b:06:01:06:03:0f:01:01:04:00:41:01:22
3283587 [DefaultUDPTransportMapping_127.0.0.1/161] WARN
org.snmp4j.MessageDispatcherImpl - 1.3.6.1.6.3.15.1.1.4.0 = 34
Here my code:
Snmp snmp = new Snmp(new DefaultUdpTransportMapping());
OctetString localEngineID = new
OctetString(MPv3.createLocalEngineID());
((MPv3)snmp.getMessageProcessingModel(MPv3.ID)).
setLocalEngineID(localEngineID.getValue());
USM usm = new USM(SecurityProtocols.getInstance(),
localEngineID,
0);
SecurityModels.getInstance().addSecurityModel(usm);
snmp.getUSM().addUser(new OctetString("SHADES"),new
UsmUser(new OctetString("SHADES"),
AuthSHA.ID,
new OctetString("SHADESAuthPassword"),
PrivDES.ID,
new OctetString("SHADESPrivPassword")));
UserTarget target = new UserTarget();
target.setSecurityLevel(SecurityLevel.AUTH_PRIV);
target.setSecurityName(new OctetString("SHADES"));
target.setVersion(SnmpConstants.version3);
target.setAddress(new UdpAddress("127.0.0.1/161"));
target.setRetries(1);
target.setTimeout(500);
// target.setMaxSizeRequestPDU(maxSizeResponsePDU);
snmp.listen();
ScopedPDU request = new ScopedPDU();
request.setType(PDU.GET);//createPDU(target);
if (request.getType() == PDU.GETBULK) {
request.setMaxRepetitions(50);
request.setNonRepeaters(1);
}
request.add(new VariableBinding(new OID("0.1.0")));
PDU response = null;
ResponseEvent responseEvent;
long startTime = System.currentTimeMillis();
responseEvent = snmp.send(request, target);
if (responseEvent != null) {
response = responseEvent.getResponse();
System.out.println("Received response after "+
(System.currentTimeMillis()-startTime)+"
millis"+response.getVariableBindings());
}
snmp.close();
Please help me!!
Thanks and Best regards
Marshall
More information about the SNMP4J
mailing list