Ну, во-первых, было бы наверное неплохо перед отправкой документа его хотя бы по диагонали просмотреть. В нем ни слова про SNMP trap, а изложены только способы получения инфы по SNMP get/walk.
Меня же интересуют именно асинхронные события.
Ну ладно, это лирика.
Пришлось вместо чтения документации ставить натурные эксперименты.
Получилось следующее.
Во-первых, даже в четвертой прошивке свитч не ловит ситуацию, когда в порт включен другой "глупый" свитч, в котором два порта включены друг в друга.
При этом порт D-Link 3026 оказывается загруженным на 50%, его процессор - на 100%, но никаких сообщений в лог или трапов не отправляется. По информации с консоли RS-232 порт не уходит в состояние loopback.
Однако, если я в порт 3026 включу патч-корд с замкнутыми жилами (Rx на Tx), то тут всё отрабатывает нормально. Порт отключается, в сислог отправляется сообщение
Код:
WARN: Configuration Testing Protocol detects a loop in port 24
и посылается трап.
Но и тут есть недоработка.
Во-первых, посылается обычный трап типа "Topology changed" (OID .1.3.6.1.2.1.17.0.2). Мне кажется, что для события "Loopback detection" нужен свой тип события.
Во-вторых, на удаленный syslog-сервер приходят не все сообщения. Возможно, это связано с ненадежной природой syslog, может - реализация на 3026 плохо дружит с высокой нагрузкой свитча, но факт налицо - не все syslog сообщения приходят на сервер.
Вот. Хочется услышать комментарии D-Link' овских специалистов.
Да, тестируемая прошивка - 4.00.018