Значения SNMP VARBIND

Я не совсем уверен, где задать этот вопрос. Я искал ответ, поэтому я попробую спросить здесь.

У нас есть приложение, которое связывается с нашими устройствами через SNMP. Наши сообщения GET вызывают системные оповещения IPS/IDS из-за значения 0x04 в значении Varbind.

При разработке мне говорят, что 0x04 означает пустой, но я не могу найти ничего, чтобы сказать, что это правда. На трассе Wireshark это проявляется как недействительный.

Теперь, когда у меня было тестирование переключения значения на 0x05 в GET, системы IPS/IDS перестали выдавать оповещения, поскольку 0x05 - это NULL.

Я хотел бы найти действительные боевые действия, на которые я могу ссылаться.

2 ответа

Решение

Я нашел ответ на мой поиск

0x04 = строка октетов 0x00 = длина

Это действительно допустимо как пустое, но не в GetRequest.

Операции протокола RFC 3416 для SNMP

Обработка PDU "В элементах процедуры ниже любое поле PDU, на которое не ссылается соответствующая процедура, игнорируется принимающим объектом SNMP. Однако все компоненты PDU, включая те, чьи значения игнорируются принимающим объектом SNMP, должны иметь действительный синтаксис и кодировку ASN.1. Например, некоторые PDU (например, GetRequest-PDU) касаются только имени переменной, а не ее значения. В этом случае часть значения привязки переменной игнорируется принимающим объектом SNMP. Неуказанное значение определено для использования в качестве части значения таких привязок ".

UnSpecified значение определено для использования как часть значения в PDU (например, GetRequest-PDU), которые касаются только имени переменной, а не ее значения. Имя это OID. Значением является поле, которое содержит 0x04 0x00. GetRequest-PDU должен использовать 0x05 0x00 (NULL, определение unSpecified)

Вы проверили RFC для SNMP

http://www.ietf.org/rfc/rfc1157.txt

Другие вопросы по тегам