I want to be able to dynamically filter the result of an SNMP walk, via an intermediate agent (a process) based on the interface(IP) where the request came from.
I.e., my scenario is like this, say the
walk request can come from two different network interfaces
18.104.22.168, and I map these to the ID
If I have a MIB structure like:
The SNMP Agent is responding with all the results, but in the interim process, I want to filter out what is not relevant for that requester, i.e., if the request came from
22.214.171.124, then I will only send out values which match its ID (
I checked the
filter feature in
snmpd.conf - I want to be able to do something similar, but dynamically based on where the request is coming from,
also I want to know if this can cause issues with the walk - as in, can this
cause the lexicographic ordering to fail?
I hope I made my question clear, any hints or pointers to probe further, much appreciated.
There can be new MIBs added, with newer versions of software, so I do not want to statically map an IP to allowed OIDs (as in SNMP VACM views). Also, this method makes it difficult to manage, when there are many interfaces(IPs) and many MIBs.
I would want to know, if it is possible to filter out results, dynamically (by looking at the OID, and the requester's IP, if a result is relevant or not)