Этот проект представляет собой систему для автоматического создания, отслеживания и обновления топологии сети свичей в локальной сети, используя протокол SNMP для сбора данных. Информация сохраняется в базе данных SQLite, а управление и визуализация сети реализованы через веб-интерфейс на Flask. Основная цель проекта — упрощение управления сетевой инфраструктурой, позволяя администратору следить за изменениями в реальном времени и вести историю конфигураций.
Система автоматически собирает данные о текущей топологии сети, включая информацию о свичах, соединениях между ними, а также активные порты. Вся информация сохраняется в базе данных для последующего анализа и сравнения.
Проект фиксирует все изменения в топологии с указанием времени и даты, что позволяет легко отслеживать, как и когда изменялась сеть. Это полезно для аудита и диагностики.
При изменении сетевой конфигурации система автоматически обновляет данные в базе, сохраняя предыдущие состояния для последующего сравнения.
Можно сравнивать различные состояния сети по времени. Это помогает выявлять, например, добавленные или удалённые устройства, изменения направлений связей или статусов портов.
Веб-интерфейс на базе Flask предоставляет простой и удобный способ взаимодействия с системой. Администраторы могут просматривать текущую топологию сети, управлять конфигурациями и следить за изменениями через браузер.
Система позволяет визуально отображать топологию сети с использованием библиотеки networkx, показывая связи между свичами, активные и неактивные порты, а также двойные связи.
Для каждого свича предоставляется подробная информация:
- IP-адрес
- MAC-адрес
- Имя устройства
- Используемые порты и их состояние
Эти данные помогают быстро идентифицировать устройства в сети и диагностировать проблемы с подключениями.
Программа отображает все активные связи между свичами, их направления, а также отмечает наличие двойных связей, помогая администраторам быстро анализировать структуру сети.
Проект использует следующие библиотеки:
- Flask — для создания веб-интерфейса управления.
- networkx — для работы с графами и визуализацией топологии сети.
- mac-vendor-lookup — для определения производителя по MAC-адресу.
- pysnmp — для работы с протоколом SNMP, используемого для сбора информации о свичах.
- scipy — для научных и математических расчётов, необходимых для анализа данных.
- Работа в локальной сети: Программа предназначена для мониторинга и управления сетевой инфраструктурой внутри локальной сети, обеспечивая безопасность данных и независимость от внешних сервисов.
- Использование SNMP: Протокол SNMP обеспечивает эффективный сбор данных о сетевых устройствах, позволяя регулярно обновлять топологию.
- Исторический анализ: Система сохраняет историю изменений, что упрощает анализ и диагностику сети.
- Удобный интерфейс: Веб-интерфейс предоставляет интуитивно понятный способ управления и мониторинга сети.
- Эффективность и автоматизация: Автоматический сбор данных и логирование помогают сэкономить время и ресурсы при управлении сетью.
- Интеграция с системами мониторинга: Возможна интеграция с другими инструментами для мониторинга сетей, что расширит функциональные возможности проекта.
- Поддержка других типов устройств: Проект можно доработать для работы с другими типами сетевых устройств, такими как маршрутизаторы и точки доступа.
Этот проект — надёжный инструмент для управления и мониторинга локальных сетей свичей с использованием SNMP. Он автоматизирует сбор данных, предоставляет визуализацию и инструменты для анализа изменений, что делает его ценным для сетевых администраторов и инженеров.