[ First - *please* don't mail me privately, without copying
     any responses to the mailing list.  I don't have the time
     or inclination to offer private, unpaid, SNMP consultancy.
     Keep discussions to the list, where others can both learn
     and offer advice.  Thanks.   ]


On 4 April 2012 13:22, Chalapathi Rao <c...@velocix.com> wrote:
> Thanks for the prompt response Dave. Much appreciated.
>
>
> On Wed, 2012-04-04 at 13:05 +0100, Dave Shield wrote:
>
> On 4 April 2012 11:55, Chalapathi Rao <c...@velocix.com> wrote:
>> We seem to be having the following issue with our snmpagent
>> (using Net-SNMP Version:  5.3.2.2).
>
> First thing - that's a very old version
> (and the 5.3.x line is no longer actively supported).
> Would it be possible to try with something a little newer?
>
> We wanted do that but noticed the latest FAQ says filtering ain't supported.
> Why is that?

Because at the time that FAQ entry was written, this was
indeed the case.    It's quite normal for things to move on,
and the documentation to lag behind.
   My suspicion is that this particular FAQ entry probably
needs to be updated.   But I'd need to check.

Try it - see what happens.



>>    Issue: Traps can be filtered (snmpTargetMIB, snmpNotificationMIB)
>>              but INFORMs can't be.
>
> It's been a while since I looked at the notification filtering code,
> but I don't believe the basic framework distinguishes between
> Traps and Informs.
>    The basic snmpNotifyTable has a field snmpNotifyType to
> control whether a particular target should be send a trap or
> an inform notification.   But all of the subsequent filtering is
> common to both.
>
> Perhaps you could give a little more detail about how exactly
> you are setting up the trap and inform destinations, and the
> filtering for each of them.  And what exact behaviour you are
> seeing.

PFA the config (Ignore the XXXX in TAddress. Its configured to a valid trap
receiver).
My tests showed that when snmpNotifyType is configuerd as trap,
filtering seems to have worked (with include/exclude that is).,
whereas, it didn't work when it was configured as INFORM (i.e., the
respective trap didn't reach receiver with include).


I strongly suspect that what you are seeing here is not a problem
with filtering of Informs per se.   Rather, it's much more likely to
be an issue with the configuration of SNMPv3 inform targets.
This is a known hairy topic!

I suggest you try setting up an equivalent configuration using
SNMPv2c targets (both trap and inform), and confirm whether
or not filtering is working there.

Then have a look at the documentation on the project website
that discusses SNMPv3 informs, and have a play with that
(*not* using filters).
   Only when you've got that working would it be sensible to try
turning on filtering.   But get the two elements working individually
first.

Dave
snmpset localhost \
>               snmpTargetParamsMPModel.\'v3\' = 3 \
>               snmpTargetParamsSecurityModel.\'v3\' = 3 \
>               snmpTargetParamsSecurityName.\'v3\' = masteruser \
>               snmpTargetParamsSecurityLevel.\'v3\' = authPriv \
>               snmpTargetParamsRowStatus.\'v3\' = createAndGo
SNMP-TARGET-MIB::snmpTargetParamsMPModel.'v3' = INTEGER: 3
SNMP-TARGET-MIB::snmpTargetParamsSecurityModel.'v3' = INTEGER: 3
SNMP-TARGET-MIB::snmpTargetParamsSecurityName.'v3' = STRING: masteruser
SNMP-TARGET-MIB::snmpTargetParamsSecurityLevel.'v3' = INTEGER: authPriv(3)
SNMP-TARGET-MIB::snmpTargetParamsRowStatus.'v3' = INTEGER: createAndGo(4)

snmpset localhost snmpTargetAddrTDomain.\'localv3\' = snmpUDPDomain \
>               snmpTargetAddrTAddress.\'localv3\' x XXXXXXXXXXXXX \
>               snmpTargetAddrTagList.\'localv3\' = localv3 \
>               snmpTargetAddrParams.\'localv3\' = v3 \
>               snmpTargetAddrRowStatus.\'localv3\' = createAndGo
SNMP-TARGET-MIB::snmpTargetAddrTDomain.'localv3' = OID: SNMPv2-TM::snmpUDPDomain
SNMP-TARGET-MIB::snmpTargetAddrTAddress.'localv3' = Hex-STRING: XXXXXXXXXXXXXXX
SNMP-TARGET-MIB::snmpTargetAddrTagList.'localv3' = STRING: localv3
SNMP-TARGET-MIB::snmpTargetAddrParams.'localv3' = STRING: v3
SNMP-TARGET-MIB::snmpTargetAddrRowStatus.'localv3' = INTEGER: createAndGo(4)


snmpset localhost snmpNotifyTag.\'localv3\' = localv3 \
>               snmpNotifyType.\'localv3\' = inform \
>               snmpNotifyRowStatus.\'localv3\' = createAndGo
SNMP-NOTIFICATION-MIB::snmpNotifyTag.'localv3' = STRING: localv3
SNMP-NOTIFICATION-MIB::snmpNotifyType.'localv3' = INTEGER: inform(2)
SNMP-NOTIFICATION-MIB::snmpNotifyRowStatus.'localv3' = INTEGER: createAndGo(4)

snmpset localhost snmpNotifyFilterProfileRowStatus.\'v3\' = createAndGo \
>               snmpNotifyFilterProfileName.\'v3\' = v3filter
SNMP-NOTIFICATION-MIB::snmpNotifyFilterProfileRowStatus.'v3' = INTEGER: 
createAndGo(4)
SNMP-NOTIFICATION-MIB::snmpNotifyFilterProfileName.'v3' = STRING: v3filter

snmpset localhost \
>   snmpNotifyFilterRowStatus.\"v3filter\"$RRMIB = createAndGo \
>   snmpNotifyFilterType.\"v3filter\"$RRMIB = included


==================== NOTIFICATION MIB OUTPUT ==============

SNMP-NOTIFICATION-MIB::snmpNotifyTag.'localv3' = STRING: localv3
SNMP-NOTIFICATION-MIB::snmpNotifyType.'localv3' = INTEGER: inform(2)
SNMP-NOTIFICATION-MIB::snmpNotifyStorageType.'localv3' = INTEGER: nonVolatile(3)
SNMP-NOTIFICATION-MIB::snmpNotifyRowStatus.'localv3' = INTEGER: active(1)
SNMP-NOTIFICATION-MIB::snmpNotifyFilterProfileName.'v3' = STRING: v3filter
SNMP-NOTIFICATION-MIB::snmpNotifyFilterProfileStorType.'v3' = INTEGER: 
nonVolatile(3)
SNMP-NOTIFICATION-MIB::snmpNotifyFilterProfileRowStatus.'v3' = INTEGER: 
active(1)
SNMP-NOTIFICATION-MIB::snmpNotifyFilterMask."v3filter".1.3.6.1.4.1.34440.5.1.5.2
 = ""
SNMP-NOTIFICATION-MIB::snmpNotifyFilterType."v3filter".1.3.6.1.4.1.34440.5.1.5.2
 = INTEGER: included(1)
SNMP-NOTIFICATION-MIB::snmpNotifyFilterStorageType."v3filter".1.3.6.1.4.1.34440.5.1.5.2
 = INTEGER: nonVolatile(3)
SNMP-NOTIFICATION-MIB::snmpNotifyFilterRowStatus."v3filter".1.3.6.1.4.1.34440.5.1.5.2
 = INTEGER: active(1)




====================== TARGET MIB OUTPUT ===================
SNMP-TARGET-MIB::snmpTargetSpinLock.0 = INTEGER: 0
SNMP-TARGET-MIB::snmpTargetAddrTDomain.'localv3' = OID: SNMPv2-TM::snmpUDPDomain
SNMP-TARGET-MIB::snmpTargetAddrTAddress.'localv3' = Hex-STRING: 
XXXXXXXXXXXXXXXXx
SNMP-TARGET-MIB::snmpTargetAddrTimeout.'localv3' = INTEGER: 1500
SNMP-TARGET-MIB::snmpTargetAddrRetryCount.'localv3' = INTEGER: 3
SNMP-TARGET-MIB::snmpTargetAddrTagList.'localv3' = STRING: localv3
SNMP-TARGET-MIB::snmpTargetAddrParams.'localv3' = STRING: v3
SNMP-TARGET-MIB::snmpTargetAddrStorageType.'localv3' = INTEGER: nonVolatile(3)
SNMP-TARGET-MIB::snmpTargetAddrRowStatus.'localv3' = INTEGER: active(1)
SNMP-TARGET-MIB::snmpTargetParamsMPModel.'v3' = INTEGER: 3
SNMP-TARGET-MIB::snmpTargetParamsSecurityModel.'v3' = INTEGER: 3
SNMP-TARGET-MIB::snmpTargetParamsSecurityName.'v3' = STRING: masteruser
SNMP-TARGET-MIB::snmpTargetParamsSecurityLevel.'v3' = INTEGER: authPriv(3)
SNMP-TARGET-MIB::snmpTargetParamsStorageType.'v3' = INTEGER: nonVolatile(3)
SNMP-TARGET-MIB::snmpTargetParamsRowStatus.'v3' = INTEGER: active(1)
SNMP-TARGET-MIB::snmpUnavailableContexts.0 = Counter32: 0
SNMP-TARGET-MIB::snmpUnknownContexts.0 = Counter32: 0

------------------------------------------------------------------------------
Better than sec? Nothing is better than sec when it comes to
monitoring Big Data applications. Try Boundary one-second 
resolution app monitoring today. Free.
http://p.sf.net/sfu/Boundary-dev2dev
_______________________________________________
Net-snmp-coders mailing list
Net-snmp-coders@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/net-snmp-coders

Reply via email to