[SNMP4J] net-snmp and snmp4j agentx
Frank Fock
fock at agentpp.com
Wed Jun 6 23:51:01 CEST 2012
Hi Rob,
Bad news, it seems that this is simply a memory allocation bug in
NET-SNMP. NET-SNMP 5.0.9 is very old and there are a lot of fixes
regarding AgentX in newer versions. Are you able to upgrade?
Best regards,
Frank
Am 06.06.2012 19:43, schrieb Rob Morton:
> Hi Frank,
>
> First, thank you very much for looking into this issue. It is very
> much appreciated.
>
> Second, I have attached a master agent log(I use log4j too and had
> to connect in your logsnmp4jfactory)...it shows the agent starting up
> and the log messages generated as a result of the net-snmp starting up
> and connecting then registering its MIB regions...later in the
> log...it then reflects DEBUG info when I send in the snmpget for the
> ifNumber OID as stated earlier in this email thread.
>
> I removed my server's log entries as best I could but there might
> still be a few entries reflecting my code...it will be prefixed with
> com.alcatel.tpapps.*
>
> Thanks,
> Rob
>
> On 6/6/2012 11:55 AM, Frank Fock wrote:
>> Hi Rob,
>>
>> The log of the sub-agent shows, that there is probably a region
>> issue. To get the root cause, the log of the master agent is very
>> important.
>>
>> It is likely, that we can find a workaround for that issue.
>> NET-SNMP cannot handle big sub OIDs (between 2^31
>> and 2^32-1) in registrations/requests correctly in all
>> situations.
>>
>> Best regards,
>> Frank
>>
>> Am 06.06.2012 15:47, schrieb Rob Morton:
>>> Hi Frank,
>>>
>>> Thank you for responding...
>>>
>>> Here are the details of the issue I'm facing:
>>>
>>> * I am using net-snmp v5.0.9 on Solaris 10 configured as a
>>> sub-agent to my AgentXMasterAgent-based master agent via the
>>> command:
>>>
>>> /usr/sfw/sbin/snmpd -X -DALL
>>>
>>> * with /etc/sma/snmp/snmpd.conf having the following entries:
>>>
>>> #to avoid re-registrations when I suspend the master agent's threads
>>> in IntelliJ's debugger
>>> agentxPingInterval 60000
>>> agentXSocket tcp:localhost:1705
>>>
>>> * I have no issues with connection nor registration...I have
>>> attached a SNMP walk of the master in which I grep'd for agentx
>>> to observe what was registered by the sub-agent (see attached
>>> snmpwalk-grepedForAgentX.log)...I used the following command:
>>>
>>> /usr/sfw/bin/snmpwalk -v2c -c<community string>-M /etc/sma/snmp/mibs
>>> -m ALL <host IP@> 1 | grep agentx > /opt/snmpwalk-grepedForAgentX.log
>>>
>>> * now.../_the problem_/...It is as follows...I am sending in a
>>> simple snmp get request to my master snmp agent (for an OID
>>> managed by the net-snmp sub-agent) with the following command:
>>>
>>> /usr/sfw/bin/snmpget -v2c -c<community string> -r 0 -t 60 <host
>>> IP@> 1.3.6.1.2.1.2.1.0 <-- this OID is IF-MIB::ifNumber.0
>>>
>>> * to which I receive the following response:
>>>
>>> IF-MIB::ifNumber.0 = No Such Object available on this agent at this
>>> OID <--THE PROBLEM
>>>
>>> * I have attached the net-snmp debug log (see attached snmpd.log)
>>> for the above SNMP get request.
>>>
>>> * if I send in a simple get for an OID managed by the master
>>> locally, I have no issue:
>>>
>>> /usr/sfw/bin/snmpget -r 0 -t 600 -v2c -c<community string><host
>>> IP@>sysContact.0
>>> SNMPv2-MIB::sysContact.0 = STRING: bob
>>>
>>> * I don't currently have a log for the master agent (I have issues
>>> linking in the log4j with my code base...am working on it) _but_
>>> I have stepped through the code extensively and observed no
>>> exceptions or strange code paths for this request...it simply
>>> assesses that it must send a GET PDU to the sub-agent and does
>>> just that...I have also verified each byte in the encoded
>>> PDU...it all looks good.
>>>
>>> If more info is required please don't hesitate to ask.
>>>
>>> Thank you,
>>> Rob
>>>
>>> On 6/6/2012 5:39 AM, Frank Fock wrote:
>>>> Hi Rob,
>>>>
>>>> With the NET-SNMP AgentX master and sub-agents several
>>>> issues are known. Any of those, are caused by NET-SNMP's
>>>> incorrect registration algorithms or simply other bugs
>>>> which are not fixed for years now.
>>>>
>>>> For several issues there exists workarounds. So if you are
>>>> using NET-SNMP as a subagent to SNMP4J-AgentX, nearly
>>>> everythin should work. You can search for "NET-SNMP"
>>>> in the sources of SNMP4J-AgentX to locate the various
>>>> workarounds.
>>>>
>>>> We could probably better help, if you provide more details
>>>> on the problem (master log output of the failed request
>>>> as well as subagent output, also who is master and who
>>>> subagent, etc.)
>>>>
>>>> Best regards,
>>>> Frank
>>>>
>>>> Am 06.06.2012 02:03, schrieb Rob Morton:
>>>>> Hi,
>>>>>
>>>>> What version(s) of net-snmp are supported by snmp4j's agentxv2.1.0?
>>>>>
>>>>> I ask because I am getting peculiar 'get' failures on Solaris's
>>>>> net-snmpv5.0.9. I get these errors after successful connection,
>>>>> registration, pings, etc...I perform an snmpget on IF-MIB::ifNumber.0
>>>>> (just an example) and get "IF-MIB::ifNumber.0 = No Such Object available
>>>>> on this agent at this OID" This OID region is indeed registered.
>>>>>
>>>>> Thanks,
>>>>> Rob
>>>>>
>>>>> _______________________________________________
>>>>> SNMP4J mailing list
>>>>> SNMP4J at agentpp.org
>>>>> http://lists.agentpp.org/mailman/listinfo/snmp4j
>>>
>>
>> --
>> ---
>> AGENT++
>> Maximilian-Kolbe-Str. 10
>> 73257 Koengen, Germany
>> https://agentpp.com
>> Phone: +49 7024 8688230
>> Fax: +49 7024 8688231
>
--
---
AGENT++
Maximilian-Kolbe-Str. 10
73257 Koengen, Germany
https://agentpp.com
Phone: +49 7024 8688230
Fax: +49 7024 8688231
More information about the SNMP4J
mailing list