[SNMP4J] Need help sending an INFORM!!!

Frank Fock fock at agentpp.com
Mon Oct 24 23:33:35 CEST 2005


Hi Jo,

Sending an inform is quite different to sending a trap, mainly because
the authoritative engine changes. See RFC3414 for more information
on this.

Best regards,
Frank

jo at atsresults.com wrote:

>Hey Everyone,
>
>The code below is how I am sending a v3 trap to net-snmp.  
>
>I would like to send an INFORM.  However, when I change the PDU type to INFORM
>and call snmp.inform(pdu, target) it doesn't work.
>
>I looked at the debug output from net-snmp and one of theses seems to be the
>problem.
>
>"
>usm: USM processing begun...
>trace: usm_parse_security_parameters(): snmpusm.c, 1872:
>dumph_recv:     msgAuthoritativeEngineID
>dumpx_recv:      04 00   // This doesn't look right
>
>.....
>
>Parsed SNMPv3 message (secName:, secLevel:noAuthNoPriv): USM unknown engineID
>"
>
>Isn't an INFORM and NOTIFICATION the same thing except an INFORM wants a
>response?
>
>Can someone help me out here?  Is there something more you have to do to send an
>INFORM?  I know I am not looking for a response yet, but I want to make sure the
>INFORM is received before I move to the next step.
>
>This is very frustrating as my notifications work great, but the informs don't.
>:-(
>
>Thanks
>
>========================================================================
>OctetString MySecurityName = new OctetString("myuser");
>OctetString localEngineID = OctetString.fromHexString("01:02:03:04:05");
>
>Address targetAddress = GenericAddress.parse("udp:127.0.0.1/162");
>TransportMapping transport = new DefaultUdpTransportMapping();
>
>Snmp snmp = new Snmp(transport);
>
>MPv3 mpv3 = (MPv3)snmp.getMessageProcessingModel(MessageProcessingModel.MPv3);
>
>USM usm = new USM(SecurityProtocols.getInstance(), localEngineID, 0);  
>
>SecurityModels.getInstance().addSecurityModel(usm);
>
>// Add user to the USM
>snmp.setLocalEngine(localEngineID.getValue(),0,0);
>snmp.getUSM().addUser(	new OctetString("username"),new UsmUser(MySecurityName,
>AuthMD5.ID, new OctetString("mypassword") , null, null));
>
>// Create the target
>UserTarget target = new UserTarget();
>target.setAddress(targetAddress);
>target.setVersion(SnmpConstants.version3);
>target.setSecurityName(MySecurityName);
>target.setSecurityLevel(SecurityLevel.AUTH_NOPRIV);
>target.setRetries(1);
>target.setTimeout(500);
>
>// Create the PDU
>TimeTicks uptime = new TimeTicks(1200);
>
>PDU pdu = new ScopedPDU();
>pdu.setType(PDU.NOTIFICATION);
>pdu.add(new VariableBinding(SnmpConstants.sysUpTime, uptime));
>pdu.add(new VariableBinding(new OID(SnmpConstants.snmpTrapOID),
>SnmpConstants.coldStart));
>
>// Send the PDU
>snmp.notify(pdu, target);
>
>System.out.println("Trap Sent");
>
>_______________________________________________
>SNMP4J mailing list
>SNMP4J at agentpp.org
>http://lists.agentpp.org/mailman/listinfo/snmp4j
>
>
>  
>


-- 
AGENT++
http://www.agentpp.com
http://www.mibexplorer.com
http://www.mibdesigner.com





More information about the SNMP4J mailing list