Сделать сайт PHP отправлять информацию SNMP в приложение управления сетью
Я пытаюсь заставить PHP-сайт отправлять информацию через SNMP. Я читал много о SNMP, но я все еще немного не знаю, с чего начать.
Я считаю, что мне нужно создать MIB со всеми OIDs, которые мой сайт будет использовать для отправки информации. Правильно ли это? Как и где я могу определить эти переменные (идентификаторы)? Кто-нибудь может указать мне правильное направление?
Я использую FreeBSD на сервере.
спасибо заранее.
3 ответов
то, что вы пытаетесь сделать, это отправить "SNMP-ловушку". Вам не нужно обязательно определять MIB. MIB просто переводит "полу - человеческое дружелюбное" имя в OID, например SNMPv2-MIB::sysContact.0 на .1.3.6.1.2.1.1.4.0 . Для частного приложения вы можете теоретически использовать любой OID, который хотите, так же как теоретически вы можете использовать любой IP-адрес для частной сети, которая не подключена к другим. Я не уверен, есть ли предпочтительная" частная " ветка OID. Есть некоторые хорошие информация, чтобы вы начали вhttp://www.paessler.com/support/kb/questions/49/ . Похоже, PHP напрямую не поддерживает отправку SNMP-ловушек, но вы можете вызвать команду "snmptrap".
есть несколько вопросов:
чтобы получить свой собственный идентификатор верхнего уровня, я думаю, вам действительно нужно запросить его где-то (и, вероятно, заплатить деньги?) однако есть экспериментальный диапазон, который вы можете использовать для тестирования. (это не проблема php, это проблема snmp/функция)
насколько я знаю, протокол предполагает процесс прослушивания порта, который полностью отличается от порта http, а также не использует TCP, но UDP. Просто создание страница php обычным способом работать не будет.
возможным решением может быть использование модуля snmp в apache (или любом веб-сервере, который вы используете), который позволяет запрограммировать логику ответа на php. Я чувствую, что большинство SNMP php-материалов, с которыми вы сталкиваетесь в интернете, касается не части агента, а части менеджера.
Я знаю, что SNMP-это протокол, в котором хост отправляет запрос на значение определенного OID устройству, а затем получает ответ.
Я не уверен, что у вас может быть сайт php, который отвечает на эти пакеты.
единственная информация, которую я нашел, это то, что PHP имеет класс клиента SNMP PHP SNMP
и Википедия дает вам подробную информацию о SNMP текст ссылки
но я все еще уверен, что веб-сайт не может действуйте как сервер SNMP.