Мониторинг стабильности сетевой инфраструктуры с использованием
мессенджера Telegram
Е.А. Верещагина, А.К. Рудниченко, Д.С. Рудниченко Дальневосточный федеральный университет, Владивосток
Аннотация: В данной работе описан опыт внедрения системы мониторинга стабильности сетевой инфраструктуры с использованием мессенджера Telegram в государственном учреждении. Представлен функционал системы и дальнейшие планы по её развитию. Описана тенденция к распространению мессенджера Telegram в обществе. Ключевые слова: Telegram, пинг, ping, мониторинг, инвентаризация, инфраструктура, сеть.
Зачастую в государственных учреждениях сетевая инфраструктура достаточно большая - покрывает несколько этажей, всё здание организации. Нередко бывает, что она распространяется на несколько зданий, формируя кампусную сеть организации. Таким образом, под управлением отдела информационных технологий может быть 400 компьютеров и более.
В целях обслуживания такого количества рабочих мест в организации используются разного рода управляемые коммутаторы, серверы 1С, серверы для терминальных сессий, файловые серверы и прочие. В связи с этим, не всегда возможно вручную определить, какой узел сети вышел из строя.
Определение доступности узла сети производится методом посыла запроса по протоколу ICMP. ICMP - сетевой протокол, входящий в стек протоколов TCP/IP, используется для передачи сообщений об ошибках, доступности или недоступности узла [1]. Стандартная утилита «ping» в операционной системе Windows использует ICMP протокол для отправки эхо-запросов узлу сети [1].
Мониторинг стабильности сетевой инфраструктуры с использованием мессенджера Telegram подразумевает использование следующих технологий [2]:
М Инженерный вестник Дона, №11 (2020) ivdon.ru/ru/magazine/arcliive/nlly2020/6689
• сервер на базе операционной системы Windows (физический или виртуальный);
• программное обеспечение - сервер, разработанный на языке программирования C# с применением обфускации исходного кода [3].
• программное обеспечение - клиенты, разработанные на языке программирования C# с применением обфускации исходного кода [4, 5].
Проверка доступности узла сетевой инфраструктуры - это лишь часть функционала, планируемого к реализации. На данный момент в сети на устройствах под управлением операционной системы Windows уже используются специальные агенты, передающие на сервер по запросу следующие данные [6]:
• информация о процессорах, о нагрузке на центральный процессор;
• информация об оперативной памяти (в том числе свободной);
• информация о видеоадаптере;
• информация о жестких дисках, свободном месте на них;
• информация о службах Windows;
• информация о запущенных процессах;
• информация о пользователях в операционной системе.
В настоящее время распространено использование чат-ботов в мессенджере Telegram во всех сферах деятельности [7, 8]. На данный момент возможно узнать, например, прогноз погоды, либо купить товар в интернет-магазине. Их функционал неограничен по той причине, что программная часть чат-ботов может быть различна и ограничивается только лишь фантазией разработчика. Также чат-бот может быть разработан практически на любом языке программирования.
Чаще всего чат-боты Telegram делятся на следующие типы [9]:
• боты для общения с клиентами - отвечают на частые вопросы, распознавая их в диалоге с пользователем;
• боты-напоминатели - напоминают о записи к врачу, доставке, заказе товаров, продлении каких-либо услуг и т. д.;
• боты на базе веб-сервисов - служат для заказа такси, предоставления прогноза погоды, покупок в интернет-магазине и других услуг, связанных с онлайн-сервисами.
Таким образом, алгоритм мониторинга стабильности сетевой инфраструктуры с использованием мессенджера Telegram сводится к следующему алгоритму:
1. Сервер посылает эхо-запросы по протоколу ICMP, определяя доступность узла сети с ранее определённым интервалом времени (например, один раз в 30 секунд).
2. Если на узле сети установлена операционная система Windows, то сервер посылает запрос по протоколу TCP на получение информации с клиента.
3. Клиент отвечает на вопрос и передаёт служебную информацию на сервер.
4. Соединение по TCP закрывается. Сервер обрабатывает полученную информацию.
В случае отключения важного узла сети (например, управляющего коммутатора или сервера 1С) сервер мониторинга имеет функционал по уведомлению системного администратора посредством отсылки сообщения всем работникам отдела информационных технологий [10], как показано на рисунке 1.
Наблюдаемый хост отключен!
Имя: AD Controller 1 IP/NetBIOS: 192.168.0.10 Время: 10:24:12
Рис. 1. - Оповещение об отключенном узле сети Стоит отметить, что единичный эхо-запрос по протоколу 1СМР может дать ложную информацию о недоступности узла сети. Чтобы предотвратить это, система мониторинга при получении негативного ответа о доступности посылает повторные запросы в количестве 3 штук через 3, 6 и 10 секунд. Данная операция необходима, чтобы убедиться, что наблюдаемый узел сети действительно отключен, а не был ошибочно определён недоступным из-за ошибки эхо-запроса 1СМР.
В интерфейсе серверной части системы мониторинга инфраструктуры приведена таблица (рисунок 2), где отображены все узлы, для которых было включено наблюдение. Таким образом, системные администраторы в реальном времени могут наблюдать за происходящими изменениями на
экране монитора или телевизора.
Интернет н сеть Сервер 2 192.163,0.6 Up (check 12:27:24) Сервер 11 192.168.0.102 Up (check 12:27:25] Компьютер 3 192.168.0.152 Up (check 12:27:23] Компьютер 12 192.168.0.161 Up (check 12:27:30)
Интернет 8.8.8.3 Up (check 12:27:24] Сервер 3 192.163,0.7 Up (check 12:27:24] Сервер 12 192.168.0. L03 Down (check 12:27:27] Компьютер 4 192.168.0.153 Up (check 12:27:23] Компьютер 13 192.168.0.162 Up (check 12:27:30)
Cisco 192.163.0,3 Up (check 12:27:24] Сервер 4 192.163,0.10 Up (check 12:27:24] Бидеонаблюденне Компьютер 5 192.163.0,154 Up (check 12:27:23] Компьютер 14 192.163.0.163 Up (check 12:27:30]
Провайдер 1 212.46.211.23 Up (check 12:27:24] Сервер 5 192.163,0.146 Up (check 12:27:24] Регистратор 1 192.163.0.20 Up (check 12:27:27) Компьютер 6 192.163.0,155 Up (check 12:27:28] Компьютер 15 192.163.0.164 Up (check 12:27:30]
Провайдер 1 86.100.04,20 Up (check 12:27:24] Сервер 6 192.163,0.147 Up (check 12:27:24] Регистратор 2 192.163.0.21 Up (check 12:27:27) Компьютер 7 192.163.0,156 Down (check 12:27:30] Компьютер 16 192.163.0.165 Up (check 12:27:30]
Сервера Сервер 7 192.16S0.148 Up (check 12:27:24] Регистратор 3 192.168.0.26 Up (check 12:27:27] Компьютер В 192.168.0.157 Up (check 12:27:30] Принтеры
AD Controller 1 192.163.0,1 Up (check 12:27:24] Сервер 8 192.168,0.149 Down (check 12:27:25] Компьютеры в сети Компьютер 9 192.163.0,158 Up (check 12:27:30] Принтер 1 192.168.0.170 Up (check 12:27:30)
AD Controller 2 192.163.0,2 Up (check 12:27:24] Сервер 9 192.163,0.100 Up (check 12:27:25] Компьютер 1 192.163.0.150 Down (check 12:27:28] Компьютер 10 192.163.0,159 Up (check 12:27:30] Принтер 2 192.163.0.171 Up (check 12:27:30]
Сервер 1 192.163.0,5 Up (check 12:27:24] Сервер 10 192.163,0.101 Up (check 12:27:25] Компьютер 2 192.168.0.151 Up (check 12:27:23] Компьютер 11 192.163.0,160 Up (check 12:27:30] Принтер 3 192.163.0.172 Down (check 12:27:31)
Рис. 2. - Таблица с наблюдаемыми узлами сети В результате получения служебной информации с клиентской части системы мониторинга инфраструктуры, установленной на компьютерах под управлением операционной системы Windows, возможно получить другие не менее важные уведомления, например, о недостатке свободного места на системном жёстком диске (рисунок 3).
На системном диске кончается
IP/NetBIOS: BUH01 /192Л 68.0.231
Рис. 3. - Оповещение о свободном месте на жестком диске Использование мессенджера Telegram в качестве средства уведомления сотрудников отдела информационных технологий показало положительный результат на протяжении продолжительного времени работы. Кроме того, Telegram позволяет создавать кнопки прямо в диалоге с чат-ботом, что значительно упрощает получение дополнительной информации об узле сети, по поводу которого пришло уведомления [11].
В связи с положительным результатом внедрения мессенджера Telegram в государственном учреждении планируется расширять функционал системы. Так, с помощью мобильного устройства возможно намного эффективней проводить инвентаризацию активов отдела информационных технологий.
Стоит отметить, что использование чат-бота Telegram может оказать положительное воздействие при решении инцидентов, требующих технической поддержки. В данном случае чат-бот будет выступать в качестве
корпоративного решения ServiceDesk (техническая поддержка, обработка обращений пользователей).
Попытки создать собственную ServiceDesk-систему уже существуют на российском рынке [12]. Разработчики таких систем полностью реализуют их возможности в чат-ботах Telegram: приём, обработка, закрытие обращения. Кроме этого, пользователи через чат-бота могут узнать статус обращения в любой момент времени.
В настоящее время мессенджер Telegram не пользуется достаточно большим спросом среди всех слоёв населения. Большинство людей среднего возраста предпочитают мессенджер WhatsApp при общении как с близкими, так и с коллегами по работе. В связи с этим, использование мессенджера Telegram в государственных организациях на данный момент затруднительно. Тем не менее, его возможности позволяют решить довольно большой пласт задач в области информационных технологий, что в дальнейшем позволит упростить взаимодействие между пользователем и интерфейсом онлайн-сервиса.
Литература
1. Ping // Microsoft Docs. URL: docs.microsoft.com/ru-ru/windows-server/administration/windows-commands/ping (дата обращения: 07.12.2020).
2. Хостинг для бота в Телеграм - выбираем и размещаем // Все про Телеграмм. URL: stelegram.ru/faq/hosting-dlya-bota-v-telegram (дата обращения: 07.12.2020).
3. Клиент-серверное приложение на потоковом сокете TCP // Professor Web. URL: professorweb.ru/my/csharp/web/level3/3_2.php (дата обращения: 07.12.2020).
4. Telegram.Bot - .NET Client for Telegram Bot API // GitHub. URL: github.com/TelegramBots/Telegram.Bot (дата обращения: 07.12.2020).
5. Верещагина Е.А., Рудниченко А.К., Колесникова Д.С. Методы и особенности взаимодействия клиентов информационной системы с центром управления в целях мониторинга инфраструктуры предприятия // Инженерный вестник Дона, 2020, №5. URL: ivdon.ru/ru/magazine/archive/N5y2020/6490.
6. Верещагина Е.А., Рудниченко А.К., Колесникова Д.С. Windows Management Instrumentation как способ мониторинга и аудита ИТ-инфраструктуры предприятия // Инженерный вестник Дона, 2019, №8. URL: ivdon.ru/ru/magazine/archive/N8y2019/6125.
7. Рынок чат-ботов в цифрах и фактах. Инфографика // ПЛАС Журнал. URL: plusworld.ru/daily/tehnologii/403076-2/ (дата обращения: 07.12.2020).
8. Исследование аудитории Telegram 2019 // Telegram Analytics. URL: tgstat.ru/research (дата обращения: 07.12.2020).
9. Лучшие боты для Telegram // ОнЛайм Блог. URL: blog.onlime.ru/2018/09/07/best-telegram-bots/ (дата обращения: 07.12.2020).
10. Telegram API Methods // Telegram.org. URL: core.telegram.org/methods (дата обращения: 07.12.2020).
11. Introducing Bot API 2.0 // Telegram.org. URL: core.telegram.org/bots/2-0-intro (дата обращения: 07.12.2020).
12. Telegram бот службы поддержки // Okdesk. URL: okdesk.ru/blog/telegram-bot (дата обращения: 07.12.2020).
References
1. Ping. Microsoft Docs. URL: docs.microsoft.com/ru-ru/windows-server/administration/windows-commands/ping (accessed 12/07/2020).
2. Khosting dlya bota v Telegram - vybiraem i razmeshchaem [Hosting for a bot in Telegram - choose and place]. Vse pro Telegramm. URL: stelegram.ru/faq/hosting-dlya-bota-v-telegram (accessed 12/07/2020).
3. Klient-servernoe prilozhenie na potokovom sokete TCP [Client-server application on TCP streaming socket]. Professor Web. URL: professorweb.ru/my/csharp/web/level3/3_2.php (accessed 12/07/2020).
4. Telegram.Bot - .NET Client for Telegram Bot API. GitHub. URL: github.com/TelegramBots/Telegram.Bot (accessed 12/07/2020).
5. Vereshchagina E.A., Rudnichenko A.K., Kolesnikova D.S. Inzhenernyj vestnik Dona, 2020, №5. URL: ivdon.ru/ru/magazine/archive/N5y2020/6490.
6. Vereshchagina E.A., Rudnichenko A.K., Kolesnikova D.S. Inzhenernyj vestnik Dona, 2019, №8. URL: ivdon.ru/ru/magazine/archive/N8y2019/6125.
7. Rynok chat-botov v tsifrakh i faktakh. Infografika [The chatbot market in numbers and facts. Infographics]. PLAS Zhurnal. URL: plusworld.ru/daily/tehnologii/403076-2/ (accessed 12/07/2020).
8. Issledovanie auditorii Telegram 2019 [Telegram audience research 2019]. Telegram Analytics. URL: tgstat.ru/research (accessed 12/07/2020).
9. Luchshie boty dlya Telegram [The best bots for Telegram]. OnLaym Blog. URL: blog.onlime.ru/2018/09/07/best-telegram-bots/ (accessed 12/07/2020).
10. Telegram API Methods. Telegram.org. URL: core.telegram.org/methods (accessed 12/07/2020).
11. Introducing Bot API 2.0. Telegram.org. URL: core.telegram.org/bots/2-0-intro (accessed 12/07/2020).
12. Telegram bot sluzhby podderzhki [Telegram support bot]. Okdesk. URL: okdesk.ru/blog/telegram-bot (accessed 12/07/2020).