Hi Frank
Thanks for the link. I was able to get it working by creating a new Message 
Processing Model for my snmp instance.
 
I think MOSubTreeProxy is the way to go for my approach but I can't find any 
good examples of using it to proxy for a subtree.  
I know I can configure the Snmp4jProxyMib for this purpose but couldn't find 
any good examples.
do you have a example of using MOSubTree Proxy for a subtree in snmp4j-agent.
thanks
Rushik
 
> Subject: Re: [SNMP4J] dual Agent/Manager v3 causing engineBoot and engineTime 
> to      be 0
> From: [email protected]
> Date: Sun, 28 Feb 2016 10:09:49 +0100
> CC: [email protected]
> To: [email protected]
> 
> Hi Rushik,
> 
> You can use two (or more) separate USM instances. However, you need to be 
> careful with that.
> The following FAQ article describes the details:
> http://oosnmp.net/confluence/pages/viewpage.action?pageId=1441800
> 
> For your proxy setup, you can easily use the 
> http://www.snmp4j.org/agent/doc/org/snmp4j/agent/mo/snmp4j/MOSubtreeProxy.html
> of SNMP4J-Agent.
> 
> Best regards,
> Frank
> 
> 
> 
> > On 27 Feb 2016, at 20:59, <[email protected]> <[email protected]> wrote:
> > 
> > Figured out issue with security model overriding my usm.  
> > Since security model is a singleton instance.  
> > Is there a way to use different security model for multiple SNMP sessions?  
> > I tried to set a new one by creating a new message processor and setting it 
> > in there.  
> > 
> > Sent from my iPhone
> > 
> >> On Feb 26, 2016, at 5:33 PM, [email protected] wrote:
> >> 
> >> Hello,
> >> I am working on a project using snmp4j where my application needs to be a 
> >> dual agent/manager.  
> >> Think of this as a relay, a middle man snmp application.
> >> it will do the following:
> >> 1)it will listen for requests from a  beginning SNMP client (mib browser 
> >> for example).
> >> 2) read those requests from beginning SNMP client, do some OID translation 
> >> to my own custom MIB
> >> 3) send the request with the OID translation to the end Client
> >> 4) get the response from the end Client, do some backwards OID translation
> >> 5) send the response PDU back to the beginning SNMP Client for the request 
> >> from step 1
> >> 
> >> 
> >> The way I developed this was for the agent end, I extended "BaseAgent" 
> >> class in snmp4j agent for my agent to listen for requests from my 
> >> beginning SNMP client.
> >> I am overriding the processPdu method in "CommandProcessor" to intercept 
> >> the requests in the "CommnadResponderEvent", do my OID translation.
> >> For the manager end, then call a snmp Manager session within the "Command 
> >> Processor" (using the "snmp" Class from snmp4j )to send the requests (get, 
> >> getnext, getbulk) to my end Client
> >> read the response back in "ResponseEvent" instance from the end Client.
> >> parse the response and do my backwards OID translation and set the var 
> >> bindings in the response PDU to be sent back to the Beginning Client using 
> >> "returnResponsePDU" from the "commandResponderEvent"
> >> 
> >> 
> >> my implementation is working for v1 and v2, but for v3 I am getting an 
> >> issue with the response back to the Beginning Client in step 5 above.  the 
> >> message Authoritative engineID and engineBoots are set to 0 which is 
> >> causing the response to be discarded by the Beginning Client.  
> >> I did some debugging and i know the engineID and engineBoots are set from 
> >> the USM Time table based on the security state reference.
> >> 
> >> I am thinking my implementation is causing some conflict with the USM 
> >> since my snmpManager is initialized and used within the Command Processor 
> >> for the snmpAgent end. 
> >> if i comment out my snmpManager, the response is sent back correctly with 
> >> the engineID and engineBoots populated correctly from the USM. 
> >> would it beneficial to maybe use the Proxy Forward feature in snmp4j 
> >> instead of this approach?  I was thinking if using the Proxy Forward but i 
> >> have to do some oid Translation so i needed to intercept the PDU so that 
> >> is why i overloaded the processPDU function in the CommandProcessor class.
> >> any help or insight would be appreciated.
> >> 
> >> thanks
> >> Rushik
> >> 
> >> 
> >> 
> >> 
> >> 
> >> 
> >> 
> >> 
> >> 
> >> 
> >> _______________________________________________
> >> SNMP4J mailing list
> >> [email protected]
> >> https://oosnmp.net/mailman/listinfo/snmp4j
> > _______________________________________________
> > SNMP4J mailing list
> > [email protected]
> > https://oosnmp.net/mailman/listinfo/snmp4j
> 
                                          
_______________________________________________
SNMP4J mailing list
[email protected]
https://oosnmp.net/mailman/listinfo/snmp4j

Reply via email to