[AGENT++] Problem using net-snmp as subagent (Error in packet)

Frank Fock fock at agentpp.com
Tue Feb 6 23:47:05 CET 2007


Hello Johnny,

Are you sure that ifSpecific.1 causes the error?
If you are using GETNEXT/GETBULK also the
ifSpecific.x following objects could cause the
error (this is my experience). Therefore I suggested
to compile only those MIBs into the NET-SNMP
agent that are absolutely needed.

Hope this helps.

Best regards,
Frank

Johnny Ljunggren wrote:
> Hello
> 
>> Sorry, my comments were mistakable. In addition to
>> NET_SNMP_WORKAROUNDS you will need also
>> to change MAX_AGENTX_REPETITIONS to 1
> 
> I tried that but it didn't seem to have any effect. Maybe I did it wrong
> but I changed the setting to 1 then compiled the agentx library, and then
> recompiled my agent.
> 
> I did some more research and found that only the OIDs defined as OID:
> SNMPv2-SMI::zeroDotZero will give this error.
> ie. IF-MIB::ifSpecific.1 = OID: SNMPv2-SMI::zeroDotZero
> 
> I did a snmpget on every single oid and only got the problem with the
> above mentioned definition.
> 
> I tried to look through the source code but I guess it will take me a
> while to get my head around what is happening.
> 
> Any idea what's so special about SNMPv2-SMI::zeroDotZero and what I should
> be looking for?
> 
>>> It seems that NET_SNMP_WORKAROUNDS is enabled by default, so I have it
>>> activated. Luckily I'm not running on a 64bit system, but I'm a bit
>>> worried anyway.
>>> Do you think it would be possible to pay someone with a deeper knowledge
>>> about this to fix it?
>>> Is net-snmp the only way to get mib-II on linux?
>>> Where should I start to try to solve this? (apart from contacting the
>>> net-snmp ml, which I already did)
>>>> Have you activated the NET-SNMP work-arounds in
>>>> agent++_def.h? The NET-SNMP AgentX implementation
>>>> has many bugs. For some of them, I had implemented
>>>> work-arounds that can be activated in AGENT++.
>>>>
>>>> I have reported those bugs to NET-SNMP.org but they
>>>> seem not to be able to fix them for about four years
>>>> now. When you run the NET-SNMP subagent on a 64bit
>>>> machine, things get even worse.
>>>>
>>>>> I've made a master AgentX that uses net-snmp as subagent to provide
>>>>> mib-II
>>>>> information. I get a general failure if I try to get some of the OIDs.
>>>>> This only occurs when running net-snmp as subagent, because it will
>>>>> return
>>>>> the whole tree if running standalone.
>>>>>
>>>>> # snmpwalk -v 2c -c public localhost
>>>>> <snip some output>
>>>>> IF-MIB::ifOutQLen.2 = Gauge32: 0
>>>>> IF-MIB::ifOutQLen.3 = Gauge32: 0
>>>>> Error in packet.
>>>>> Reason: (genError) A general failure occured
>>>>> Failed object: IF-MIB::ifOutQLen.3
>>>>>
>>>>> # snmpwalk -v 2c -c public localhost IF-MIB::ifOutQLen.3
>>>>> Error in packet.
>>>>> Reason: (genError) A general failure occured
>>>>> Failed object: IF-MIB::ifOutQLen.3
>>>>>
>>>>> My agent outputs this:
>>>>> 20070202.22:25:53: 567: (1)ERROR  : MasterAgentXMib: invalid AgentX
>>>>> response
>>>>> (sd)(sid)(tid)(req-vbs)(resp-vbs): (15), (1), (96), (1), (0)
>>>>>
>>>>> I've tried using the plain master agent from the examples directory,
>>>>> and
>>>>> net-snmp 5.3.1 and 5.4 but the results are the same.
> 

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




More information about the AGENTPP mailing list