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

Как работает автообнаружение?

Когда приложение выходит и обнаруживает все устройства в сети, а затем отправляет информацию обратно в какую-то систему управления активами, как это работает? Я понимаю, когда есть EXE-файл или другая программа, которая запускается на ПК и серверах через какой-то сценарий. Но как программное обеспечение, которое не запущено на устройствах, узнает подробную информацию об устройствах?

Большинство программ "обнаружения" используют SNMP для обнаружения устройств. Некоторые из этого программного обеспечения делают «отпечатки пальцев», используя различные методы (идентификация баннерного сообщения, отпечатки стека TCP / IP, поиск по MAC OID) для получения дополнительной информации. Предполагая, что вы предоставите «обнаружению» необходимые учетные данные, оно может использовать WMI для сбора информации с компьютеров Windows.

Подозреваю, что главное, что вас интересует, - это в конечном итоге SNMP. Вы можете найти ссылку в Википедии, поэтому я не буду публиковать ее здесь. Если вы оставите имена сообществ на вашем оборудовании по умолчанию (обычно «общедоступные» для читающего сообщества), может показаться довольно волшебным, что программное обеспечение может «узнавать» что-то об устройствах. Фактически, это просто запрос к документированному интерфейсу.

Но как программное обеспечение, которое не запущено на устройствах, узнает подробную информацию об устройствах?

Собственно, в этих системах работает SNMP. Вот как информация передается в ваше программное обеспечение для мониторинга. SNMP - это общепринятый стандарт обмена информацией об устройствах. Программа мониторинга проверяет ваши устройства (во время обнаружения), а затем пытается подключиться к службе SNMP на каждом устройстве. После подключения программное обеспечение мониторинга использует небольшой набор команд: SET, GET, GETNEXT и т. Д. Для запроса MIB устройства.

Графики в приложении для мониторинга строятся с помощью повторяющихся запросов. Приложение для мониторинга (Zenoss, Munin, Nagios, SCOM и т. Д.) Использует базу данных и структуру отчетов для отслеживания и оповещения на основе ваших настроек.

Есть много способов сделать это. Помимо SNMP, который упоминался в предыдущем ответе, существуют такие протоколы, как CDP (в сетях cisco) и LLDP (аналогично CDP, но от разных производителей. Пока не имеет широкой поддержки в оборудовании), которые позволят сети устройства для обнаружения подключенных к ним устройств, которые затем могут быть опрошены с помощью таких методов, как SNMP или вход на устройство.

Одним из примеров использования CDP для поддержки обнаружения SNMP является коммутируемая сеть. Если вы просто пройдетесь по таблице ARP коммутатора, чтобы найти всех его соседей, вы обнаружите только те устройства, которые недавно отправляли или получали IP-трафик. В чистой сети коммутатора L2 не будет большого (если вообще есть) межкоммутаторного IP-трафика, поэтому эта таблица будет неполной. Точно так же, если вы пройдете по таблице MAC-адресов коммутатора, вы обнаружите устройства только по пересылающим ссылкам. CDP обнаруживает соседние коммутаторы, даже если нет IP-трафика, а также обнаруживает соседей на портах в состоянии блокировки, так что это позволит вам обнаружить все ссылки.

Существуют также такие инструменты, как nmap, который просматривает диапазон адресов и может выполнять некоторую диагностику полученных ответов, чтобы угадать операционную систему устройства.

Большинство методов не являются полностью автоматическими и потребуют определения числа "начальных" хостов, с которых будет начинаться обнаружение.