Назад | Перейти на главную страницу

SNMP - фильтрация результатов прогулки по входящему интерфейсу

Я хочу иметь возможность динамично фильтровать результат SNMP-обхода через промежуточный агент (процесс) на основе интерфейс(IP) откуда пришел запрос.

То есть мой сценарий такой, говорят walk запрос может поступать из двух разных сетевых интерфейсов 10.1.1.1 и 11.1.1.1, и я сопоставляю их с идентификатором 1 и 2 соответственно.

Если у меня есть структура MIB, например:

iso.org.dod.internet.private.enterprises.myent.X.Y.<id> ...

Агент SNMP отвечает со всеми результатами, но в промежуточном процессе я хочу отфильтровать то, что не имеет отношения к этому инициатору запроса, то есть, если запрос пришел от 11.1.1.1, то я буду отправлять только значения, соответствующие его идентификатору (2)

iso.org.dod.internet.private.enterprises.myent.X.Y.2 ... iso.org.dod.internet.private.enterprises.myent.X.Z.2 ...

и т.п.

Я проверил filter особенность в snmpd.conf - Я хочу иметь возможность делать что-то подобное, но динамически в зависимости от того, откуда исходит запрос, также я хочу знать, может ли это вызвать проблемы с обходом - например, может ли это привести к сбою лексикографического упорядочения?

Надеюсь, я ясно сформулировал свой вопрос, очень признателен за любые подсказки или указатели для дальнейшего исследования.


РЕДАКТИРОВАТЬ

Могут быть добавлены новые MIB с более новыми версиями программного обеспечения, поэтому я не хочу статически сопоставлять IP-адрес с разрешенными OID (как в представлениях SNMP VACM). Кроме того, этот метод затрудняет управление, когда существует много интерфейсов (IP) и много MIB.

Я хотел бы знать, можно ли отфильтровать результаты динамически (глядя на OID и IP-адрес запрашивающего, если результат актуален или нет)