Перейти до

WildcoreDMS - утилита для мониторинга/диагностики ОЛТов, свитчей и роутеров


Рекомендованные сообщения

WildcoreDMS - Инструмент для мониторинга, уведомлений и менеджмента устройств.

 

Основная идея - разгрузить инженеров/админов, дать возможность монтажнику провести диагностику в поле, а оператору сориентироваться в проблеме, этим сократить время реакции..

 

Инструмент чем то напоминает ламповый swtoolz и pon monitor(посмотреть что там на порту и с онушкой), но с отличием, что уже есть расширенный контроль доступов и логов действий.

Так же имеет плюшки подобные заббикс и нагиос(графики, алерты, уведомления), но уведомление не на мыло или в группу телеграмм, а конкретно пользователю, который отвечает за работу оборудования на участке.

 

Ориентирован на маленьких/средних интернет-провайдеров.

 

Не перегружен

Простая установка(в несколько команд) и максимально легкая настройка(добавить доступы к оборудованию, добавить оборудование, добавить персонал).

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

(но если у кого то будет желание доработать инструментарий, добавить свои устройства - обращайтесь, обсудим) 

 

Поддерживаемые вендоры 

  • Dlink (DES/DGS)
  • BDcom (P3310B/C/D, P3608B)
  • C-data (OLTs)
  • Mikrotik (роутеры)
  • ZTE (C320, fw 2.1)

Полный список поддерживаемого оборудования - https://github.com/meklis/switcher-core/blob/master/docs/DEVICES.md 

С устройствами работает по SNMP/telnet/ssh  

 

Основной функционал

  • Отображение реалтайм состояния оборудования по запросу
  • Алерты в телеграмм(лично каждому пользователю) и на почту с возможностью настроить фильтры
  • История событий 
  • Получение обновлений одной командой в консоли 
  • RestAPI 
  • Работа в Docker
  • Хранение метрик в TSDB (Prometheus)
  • Гибкое разделение прав доступа для пользователей (по группам)
  • Разделение прав доступа(отображения) для пользователей по группам устройств(в случае, если пользователь не должен видеть все оборудование)
  • Логирование действий пользователей, вызовов оборудования(только которые завершились ошибкой) 

 

Как попробовать

написать в группу в телеграм или оставить обращение на сайте (кнопка "Request beta")

 

 

Инструмент бесплатен, но не опенсорс

Группа в телеграмм: https://t.me/wildcore_dms_channel
Сайт: https://wildcore.tools
Дока: http://docs.wildcore.tools

 

Відредаговано wildcore
  • Like 3
  • Thanks 1
Ссылка на сообщение
Поделиться на других сайтах
  • Відповіді 50
  • Створено
  • Остання відповідь

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

WildcoreDMS - Инструмент для мониторинга, уведомлений и менеджмента устройств.   Основная идея - разгрузить инженеров/админов, дать возможность монтажнику провести диагностику в поле, а опер

Ну теперь батл. Все представители в сборе: изипон, вилдкор и грушер.   Fight

Posted Images

1 час назад, wildcore сказал:

Полный список поддерживаемого оборудования - https://github.com/meklis/switcher-core/blob/master/docs/DEVICES.md 

ZTE C220 никто не хочет поддерживать...

Ссылка на сообщение
Поделиться на других сайтах
  • 4 weeks later...

Версия 0.5.72
- Добавлена поддержка вендоров Edgecore(свитчи), Huawei (свитчи);
- Добавлен компонент автообнаружения;
- Оптимизация скорости работы;
- Оптимизация работы кеша

 

Список новых моделей:
- D-link DGS-3420-26SC
- D-link DGS-3420-28SC
- Edge-core ECS3510-28T
- Edge-core ECS4120-28F
- Edge-core ECS4120-28Fv2
- Edge-core ECS4510-28F
- Edge-core ES3510
- Edge-core ES3510MAv2
- Edge-core ES3528M
- Edge-core ES3552M
- Edge-core ES4612
- Huawei S2320-28TP-EI
- Huawei S2326TP-EI
- ZTE ZXPON C320 c версией прошивки 1.2.x

 

 

 

Ссылка на сообщение
Поделиться на других сайтах
40 минут назад, Земеля сказал:

хайвей 5600 ? или 5683т ? 

Этих моделей нету. 

Полный список поддерживаемых устройств можно посмотреть здесь - https://github.com/meklis/switcher-core

Ссылка на сообщение
Поделиться на других сайтах

Версия 0.5.81

- Исправлен баг с получением всей таблицы FDB на C-Data FD1616 
- Исправлен баг получения серийных номеров на FD1616
- Оптимизирован глобальный поиск ОНУ по идентификатору
- Добавлен ZTE C300
- Добавлен ZTE C220 (только EPON, без уровней сигналов в дереве)
- Добавлена возможность перезагрузки/сброса ОНУ для C-Data FD1616

Ссылка на сообщение
Поделиться на других сайтах
В 01.06.2022 в 16:48, grin сказал:

Юзаю давно , отличный софт ) , + постоянно обновляется. Автору РЕСПЕКТ ;)

 

Я смотрю ТС решил себя прорекламировать? ?

Ссылка на сообщение
Поделиться на других сайтах
12 часов назад, nordstream сказал:

 

Я смотрю ТС решил себя прорекламировать? ?

Хотелось бы , но увы не хватитает ни терпения ни скилов чтобы написать что-то подобное. Просто захотел , помочь автору за его труд.

Ссылка на сообщение
Поделиться на других сайтах
Опубліковано: (відредаговано)

Версия 0.5.84

 

- Добавлена поддержка C-Data - FD1104, FD1108
- Исправлен поиск описаний по ZTE (ищет в описании и в имени)
- Для C-Data изменен вывод информации о Eth-портах на ОНУ
- Добавлена поддержка следующих микротиков - RB750Gr3, RB2011UiAS-2HnD, CRS317-1G-16S+, CRS328-4C-20S-4S+
- В глобальном поиске при совпадении по описанию теперь так же выводится полное описание

Відредаговано wildcore
Ссылка на сообщение
Поделиться на других сайтах

Версия 0.5.96

  • Добавлена поддержка следующего оборудования:
    • Huawei MA5603T (GPON only)
    • Huawei MA5608T (GPON only)
    • D-Link DGS-3120-24SC/A2
    • C-Data FD1216S-R1
  • Исправлено отображение графиков на портах свитчей
  • Исправлены ключи в переводах
  • Исправлено автоматическое определение FD1108(в некоторых версиях ПО) как FD1104 

 

Ссылка на сообщение
Поделиться на других сайтах
  • 2 weeks later...
Опубліковано: (відредаговано)

Версия 0.6.0

 

  •  Переработан фоновый опросчик (раньше - коллектор)
    • Контроль за количеством пораждаемых сборщиков
    • Можно настроить интервалы сбора в разрезе опросчиков
    • Можно отключать некоторые опросчики, как для моделей устройств, так и для отдельных устройств
    • Можно отключить сохранение данных метрик по определенным интерфейсам 
  •  Работа с железом теперь производится на основе выбранной модели устройства в БД(раньше вне зависимости от указанной модели шаблон подбирался автоматом)
  • Пользовательские группы переименованы в роли
  • Новые правила в ролях (нужно проверить, что бы необходимые правила присутствовали для кастомных ролей)
  • Настройка портала в аккаунте пользователя 
  • Компонент алерт заменен компонентом уведомления 
    • Позволяет выбрать необходимые события для отправки
    • Теперь можно настроить отправку не только событий, но и действий (например ребут ОНУ или железки)
    • Для событий появилась возможность указать время ожидания перед отправкой (в случае, если событие решилось до истечения таймаута)
  • Доработан компонент событий. Добавлена возможность включать/отключать правила генерации событий, писать свои правила и править под себя(правила пишутся на promQL, обрабатываются через Alertmanager)
  • В консоли добавлены команды для управления сервисами работающими в supervisor

 

 

Скриншоты новых блоков и страниц

event_alertmanager_rules.png

notifications_actions_updated.png

notifications_event_rules.png

notifications_email.png

editing_model_polling.png

portal_settings.png

port_polling_configuration.png

Відредаговано wildcore
Ссылка на сообщение
Поделиться на других сайтах

Версия 0.7.0

 

Добавлена поддержка следующих устройств 

  •  BDcom P3612-2TE (тестово)
  •  BDcom P3616-2TE (тестово)
  •  C-Data FD1608SN-R1
  •  Huawei MA5683T (GPON only)

 

Так же версионность wildcoreDMS теперь изменена на "более правильную" - x.y.z 

Где: 
x - Новая версия wildcoreDMS(мажорная версия). 
Изменения мажорной версии будет означать, что с большой вероятностью, предыдущие версии не совместимы друг с другом. 
В этом случае будут описаны рекомендации по миграциям, но так же некоторые данные могут быть утеряны при переходе;
y - добавление нового функционала(минорная версия).
Это могут быть компоненты, новое оборудование, новые фичи в системе и т.п. 
z - исправление багов/мелкие правки.  
Если наблюдаются какие то проблемы с системой или есть желание держать всегда актуальной - имеет смысл обновляться. 
В ином случае - это не обязательно. 

 

Ссылка на сообщение
Поделиться на других сайтах
  • 2 weeks later...
Опубліковано: (відредаговано)

Версия 0.10.0

  • Добавлено новое оборудование из вендоров Dlink, Huawei, V-Solution (ниже перечислен весь список);
  • Добавлен компонент регистрации ОНУ на OLT Huawei;
  • Другие мелкие правки

 

Список поддерживаемого оборудования на момент публикации 

 

Олты

  • BDcom - P3310B, P3310C, P3310D, P3608B, P3612-2TE, P3616-2TE
  • C-Data - FD1104SN, FD1108S, FD1204SN, FD1208S, FD1216S-R1, FD1608SN-R1, FD1616SN-R1
  • Huawei - MA5603T, MA5608T, MA5680T, MA5683T
  • V-Solution - V1600D16, V1600D8
  • ZTE - C220, C300, C320

Свитчи

  • D-link - DES-1210-28/ME/B2, DES-1228/ME, DES-3028, DES-3028G, DES-3052, DES-3200-10/A1, DES-3200-10/C1, DES-3200-18/A1, DES-3200-18/C1, DES-3200-26/A1, DES-3200-26/C1, DES-3200-28/A1, DES-3200-28/C1, DES-3200-28F/A1, DES-3200-28F/C1, DES-3526, DGS-1100-06/ME/A1, DGS-1100-10/ME, DGS-1210-10/ME/A1, DGS-1210-20/ME/A1, DGS-1210-20/ME/B1, DGS-1210-28/ME/A2, DGS-1210-28/ME/B1, DGS-1210-28XS/ME/B1, DGS-3000-26TC, DGS-3000-28L, DGS-3100-24TG, DGS-3120-24SC/A2, DGS-3420-26SC, DGS-3420-28SC
  • Edge-core - ECS3510-28T, ECS4120-28F, ECS4120-28Fv2, ECS4510-28F, ES3510, ES3510MA, ES3510MAv2, ES3528M, ES3552M, ES4612
  • Huawei - S2320-28TP-EI, S2326TP-EI
Відредаговано wildcore
Ссылка на сообщение
Поделиться на других сайтах
Опубліковано: (відредаговано)

Версия 0.10.2

  • Исправлена работа logrotate
  • Оптитизирована загрузка дашборда при 500+ устройств(свитчи, роутер, ОЛТы)
  • Оптимизирована загрузка списка устройств
  • Исправлена работа фильтров при отображении списка устройств без группировки 

 

Так же дополнена документация - wiki.wildcore.tools

 

Відредаговано wildcore
Ссылка на сообщение
Поделиться на других сайтах
  • 4 months later...
Опубліковано: (відредаговано)

Версия 0.11.1

  •  Убраны встроенные уведомления о падениях устройств и BGP-сессий(теперь они в событиях, как и остальные);
  •  Добавлены новые метрики в Prometheus и некоторые были переименованы;
  • Теперь можно отключить отправку уведомлений по определённым устройствам(в настройках уведомлений);
  • Добавлено новое внешнее приложение - phpMyAdmin для доступа к БД wildcore;
  • Добавлен компонент PON-боксы. Он позволяет сгруппировать определенные ОНУ и получать уведомления по ним(а так же просмотреть на карте, соединить линками);
  • Добавлена переменная LOCAL_SUBNET (в .env), которая позволяет изменить внутреннюю подсеть докера(на случай конфликта с вашими серыми адресами оборудования);
  • Оптимизация работы с БД по некоторым запросам. 

 

Компонент PON-боксы

ksnip_20221212-145719.png

ksnip_20221212-145649.png

ksnip_20221212-145549.png

ksnip_20221212-145522.png

Відредаговано wildcore
Добавлены скрины
Ссылка на сообщение
Поделиться на других сайтах
  • 3 weeks later...

Версия 0.11.5 [21.12.2022]
- Исправлена работа поллера(с версии 0.11.x сбор не работал для новых устройств);
- Добавлены ключи перевода;
- Для OLT ZTE исправлено получение дерева ОНУ после перезагрузки ОЛТ 


Версия 0.11.7 [22.12.2022]
- https://github.com/wildcore-dms/issues/issues/12
- https://github.com/wildcore-dms/issues/issues/3
- Получение уровня сигналов на ОЛТ Huawei при большом количестве ОНУ.


Версия 0.11.8 [22.12.2022]
- https://github.com/wildcore-dms/issues/issues/10
- https://github.com/wildcore-dms/issues/issues/13
- https://github.com/wildcore-dms/issues/issues/11
- https://github.com/wildcore-dms/issues/issues/9


Версия 0.11.9 [23.12.2022]
- https://github.com/wildcore-dms/issues/issues/14

 


Версия 0.12.1 [28.12.2022]
- Добавлен компонент links (позволяет задать соединения между устройствами).
  На основе линков  фильтруются уведомления(например о падении) + отображаются на портах свитчей;
- Теперь для уведомлений ID чата телеграмм можно задать вручную


Версия 0.13.1 [30.12.2022]
- Добавлена поддержка всех роутеров Mikrotik(на базе RouterOS);
- Добавлена поддержка BDcom GP3600 series (GP3600-04, GP3600-08, GP3600-16 и другие подобные);
- Исправлены некоторые ошибки в поллерах BDcom.

Ссылка на сообщение
Поделиться на других сайтах

Версия 0.13.3

- Исправлена проблема с отображением ОНУ на новых прошивках V-Sol;
- Исправлена проблема с генерацией событий* 
- Исправлено отображение списка ОНУ для добавления в пон-боксах(для мониторинга). 

 

Так же, дополнена документация (https://wiki.wildcore.tools) - добавлено описание по настройке некоторых сложных компонентов (регистрация ОНУ на ZTE/Huawei, уведомления) 

 

Вендоры, с которыми работает система

image.thumb.png.72445094c72129809b7f7838ffd58f34.png

Ссылка на сообщение
Поделиться на других сайтах

Версия 0.14.0
- Добавлена поддержка моделей D-link(DES-3200-52/C1, DGS-3120-24SC/B1);
- Исправлено дублирование описаний на комбо-портах;
- Добавлено получение MAC-адреса/серийного номера для свитчей Dlink.

Ссылка на сообщение
Поделиться на других сайтах
  • 2 weeks later...

Версия 0.15.0

- Добавлена поддержка OLT GCOM EL5610;

- Добавлена возможность просмотра трафика в "реалтайм" (в данной версии работает только на свитчах + OLT BDcom, C-Data FD16xx);

- Исправлены небольшие баги в веб-интерфейсе

Ссылка на сообщение
Поделиться на других сайтах
Опубліковано: (відредаговано)

Еще момент... Был человек в телеграмм группе, который "очень просил" уточнить момент по поводу работы wildcore здесь.

Может кому то эта информация, действительно, критична. 

Система периодически обращается к серверам wildcore, валидирует себя.

Именно поэтому, внешний IP должен быть статический + в случае отключения интернета, если система не достучится к серверу в течении суток - веб-интерфейс станет недоступен(все фоновые сборщики и процессы продолжат работать).    

 

P.S. Это не означает "что система должна смотреть жопой в мир", можно спокойно себе за НАТом держать, главное что бы внешний IP не менялся.

 

Відредаговано wildcore
Ссылка на сообщение
Поделиться на других сайтах
  • 4 months later...

Версия 0.17.х

Изменения от версии 0.16

  • Компоненты унифицированы под конкретный тип оборудования(свитчи, ОЛТ, роутеры). Теперь у всех вендоров плюс-минус подобное отображение;
  • Добавлены новые вендоры свитчей - Alcatel, Dell, Cisco, HP, TP-Link, UBNT;
  • Расширена поддержка моделей по существующим вендорам свитчей(Dlink, Huawei, Edgecore)
  • Убрана поддержка ОЛТ G-com;
  • Дополнена документация wiki.wildcore.tools;
  • Добавлена возможность просмотр истории статусов ОНУ и устройств;
  • Улучшен вывод информации о ОНУ;
  • Добавлены новые виджеты(график состояния ОНУ, график устройств в сети);
  • Обновленная страница настроек системы(поделено по группам, добавлено управление компонентами);
  • Информацию о устройстве можно получить даже если оно недоступно(часть данных будет браться с истории и кеша, если он есть);
  • Добавлена возможность просмотра истории уровня сигналов по ОНУ в офлайн;
  • Добавлена возможность просмотра реалтайм трафика для большинства вендоров и моделей;
  • Добавлена возможность просмотра команд перед отправкой на ОЛТ, при регистрации ОНУ;
  • Исправление некоторых багов c issues:

И не много скриншотов системы

 

ksnip_20230525-132731.png

ksnip_20230525-132616.png

ksnip_20230525-132501.png

ksnip_20230525-132451.png

ksnip_20230525-132430.png

ksnip_20230525-132400.png

ksnip_20230525-132338.png

ksnip_20230525-132251.png

Ссылка на сообщение
Поделиться на других сайтах
Опубліковано: (відредаговано)

⚠️ С 01.06.2023 версии ниже 0.17.х больше не поддерживаются. 
Просьба ко всем, кто ещё не обновился, перейти на актуальную версию

 

И не много последних изменений... 

Версия 0.17.35 - 0.17.52

  • Добавлено сохранение состояния карточек при просмотре ОНУ(свёрнуты/открыты);
  • Добавлены новые параметры(в системные настройки);
  • C-Data FD1208, FD1216 - убрана возможность просмотра трафика, олты не отдают эти данные(что странно, ведь FD1204 работает. Возможно, разница в настройках или версии ПО);
  • Исправлено определение незарегистрированных ОНУ на ZTE;
  • Исправление для свитчей Huawei general switch (отключена диагностика при загрузке страницы, можно вручную кликнуть на необходимый порт);
  • В ZTE исправлен поиск свободного номера ОНУ для карт ETTO (128 ону вместо 64);
  • Исправлено удаление ОНУ на OLT Huawei;
  • Исправлен опрос свитчей Alcatel;
  • Добавлена общий шаблон для свитчей Edge-Core.

 

Сайт: https://wildcore.tools

Канал с обновлениями в телеграмм: https://t.me/wildcore_dms

Відредаговано wildcore
Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.

  • Схожий контент

    • Від ppv
      Після оновлення до 1.5.1 не відображаються сигнали на
      OLT BDCOM P3310B (Device version10.1.0B)

      та
      P3608-2TE (Firmware Version10.1.0E). 

      3310C та P3608B ніяких проблем немає, знімає все добре. 
      З GPON3600-8 все зрозуміло будуть виправлення в Ubilling: 1.5.2.
       
      Може в когось було щось подібне? Хочу знати куди копати.
    • Від LIKO
      Продам оптичний лінійний термінал (OLT) BDCOM P3600-16E-2AC , повна комплектація, можливий продаж з модулями BDCOM OLT-GSFP-20+++
      Ціна 85500 грн.
       





    • Від legenda vols
      Всем привет, заезженная тема но приходиться искать по всем уголкам интернета - А именно OID и как их использовать.
      Начнём. 
      для новичков.
      bash 
      set_olt_oids() {
          # Общие для EPON (BDCOM)
          if [[ "$1" =~ ^(P3310|P3310B|P3310C|P3608|P3608B|P3316|P3600-16E|P3608-2TE|P3616-2TE|IEP3310)$ ]]; then
              OID_GET_MAC="1.3.6.1.4.1.3320.101.10.4.1.1"
              OID_VENDOR_ONU="1.3.6.1.4.1.3320.101.10.1.1.1"
              OID_MODEL_ONU="1.3.6.1.4.1.3320.101.10.1.1.2"
              OID_TEMP_ONU="1.3.6.1.4.1.3320.101.10.5.1.2"
              OID_AUNT_ONU_STATUS="SNMPv2-SMI::enterprises.3320.101.10.1.1.26"
              OID_UPTIME_ONU="1.3.6.1.4.1.3320.101.10.1.1.80"
              OID_DIST="1.3.6.1.4.1.3320.101.10.1.1.27"
              OID_IF_MAC10="1.3.6.1.4.1.3320.101.11.1.1.3"
              OID_IFindexmac10="1.3.6.1.4.1.3320.101.11.1.1.1"
              LASTREG_DATE="1.3.6.1.4.1.3320.101.11.1.1.9"
              LASTDEREG_DATE="1.3.6.1.4.1.3320.101.11.1.1.10"
              LASTDEREG_REASON="1.3.6.1.4.1.3320.101.11.1.1.11" 
              OID_ONU_ETH="1.3.6.1.4.1.3320.101.12.1.1.8"
              OID_PORT_INDEX="1.3.6.1.4.1.3320.101.107.1.1" # oid возвращает все индексы ПОН портов, работает не везде
              OID_GEPORT_COUNT="1.3.6.1.4.1.3320.101.10.1.1.12"
              OID_FEPORT_COUNT="1.3.6.1.4.1.3320.101.10.1.1.14"
              OID_REBOOT_ONU="1.3.6.1.4.1.3320.101.10.1.1.29" # snmpset -v2c -c RW IP OID.onuIndex i 0 reboot
              OID_DEL_ONU="SNMPv2-SMI::enterprises.3320.101.11.1.1.2" #.$portID.$mac10" i 0 #mac decimal onu
          fi
          # Общие для GPON
          if [[ "$1" =~ ^(GP3600-08|GP3600-16B|GP3600-08B)$ ]]; then
              ETH_STATUS="1.3.6.1.2.1.2.2.1.8" # статус порта 1 портовая ону
              ETH_STATUS4="1.3.6.1.4.1.3320.10.4.1.1.4" # статус портов 4х портовая ону
              OID_VENDOR_ONU="1.3.6.1.4.1.3320.10.3.1.1.2"
              OID_ADMIN_STATUS="1.3.6.1.4.1.3320.10.4.1.1.3"
              OID_DOWN_REASON="1.3.6.1.4.1.3320.10.3.1.1.35"
              OID_DIST="1.3.6.1.4.1.3320.10.3.1.1.33"
              OID_MODEL_ONU="1.3.6.1.4.1.3320.10.3.1.1.9"
              OID_VENDOR_ONU="1.3.6.1.4.1.3320.10.3.1.1.2"
              OID_REBOOT_ONU="1.3.6.1.4.1.3320.10.3.2.1.4" #snmpset -v2c -c RW IP OID.onuIndex i 1 reboot
              
          fi
          # Уникальные параметры для моделей
          case "$1" in
              # EPON модели
              P3310 | P3310B)
                  OID_RX_ONU="1.3.6.1.4.1.3320.101.10.5.1.6"
                  OID_RX_OLT="1.3.6.1.4.1.3320.9.183.1.1.5"
                  OID_PORT_LIST="1.3.6.1.4.1.3320.101.107.1.1"
                  ;;
              IEP3310)
                  OID_RX_ONU="1.3.6.1.4.1.3320.101.10.5.1.5"
                  OID_RX_OLT="1.3.6.1.4.1.3320.9.183.1.1.5"
                  OID_TX_ONU="1.3.6.1.4.1.3320.101.10.5.1.6"
                  ;;
              P3608 | P3608B | P3310C | P3316 | P3600-16E | P3608-2TE | P3616-2TE)
                  OID_RX_ONU="1.3.6.1.4.1.3320.101.10.5.1.5"
                  OID_RX_OLT="1.3.6.1.4.1.3320.101.108.1.3"
                  OID_TX_ONU="1.3.6.1.4.1.3320.101.10.5.1.6"
                  OID_PORT_LIST="1.3.6.1.4.1.3320.101.107.1.1"
                  ;;
              # GPON модели
              GP3600-08 | GP3600-16B | GP3600-08B | P3600-08E)
                  OID_RX_ONU="1.3.6.1.4.1.3320.10.3.4.1.2"
                  OID_RX_OLT="1.3.6.1.4.1.3320.10.2.3.1.3"
                  OID_TX_ONU="1.3.6.1.4.1.3320.10.3.4.1.3"
                  OID_GET_MAC="1.3.6.1.4.1.3320.10.3.1.1.4"
                  ;;
              *)
                  echo -e "\e[1;91mНеизвестный режим OLT: $1\e[0m"
                  return 1
                  ;;
          esac
          return 0
      }
      что бы было понятно в дальнейшем что за переменные 
      snmp1="snmpwalk -v2c -c паблик стринг"
      snmp2="snmpwalk -v2c -Ouqv -c паблик стринг"
      snmp3="snmpget -v2c -c паблик стринг"
      snmp3q="snmpget -v2c -Ouqv -c паблик стринг"
      snmp4="snmpget -v2c -Ouqv -c приват стринг"
      snmp5="snmpset -v2c -c приват стринг"

      EPON GEPON
      1- OID_GET_MAC="1.3.6.1.4.1.3320.101.10.4.1.1" на бдкомах епон 
      = SNMPv2-SMI::enterprises.3320.101.10.4.1.1.96 = Hex-STRING: A0 94 6A 97 CC 50
      snmp_response=$($snmp3 "$IP" "$OID_GET_MAC.$1" 2>/dev/null | awk -F'Hex-STRING: ' '{print tolower($2)}' | tr -d ' ')
          onu_mac=$(echo "$snmp_response" | sed 's/\(..\)/\1:/g;s/:$//') #Переводим в человеческий вид
          mac10=$(echo "$snmp_response" | awk '{    # Переводим в mac10 дада способов есть миллиард.
              for (i=1; i<=length; i+=2) {
                  printf "%d", strtonum("0x" substr($0, i, 2))
                  if (i + 2 <= length) printf "."
              }
              print ""
          }')

      лучший способ сделать функцию для форматирования снмп запросов в зависимости от типов STRING / HEX-STRING / COUNTER32 и тд тп.

      ifID=$($snmp1 "$IP" "$OID_IF_MAC10" 2>/dev/null | awk -v mac="$mac10" '$0 ~ mac {split($1, arr, "."); print arr[length(arr)-6]; exit}') 


      2 - OID_VENDOR_ONU="1.3.6.1.4.1.3320.101.10.1.1.1"
      тут без лишних слов возвращает вендор онушек 
      SNMPv2-SMI::enterprises.3320.101.10.1.1.1.97 = STRING: "XPON"   если укажем параметр -Oqv  или -Ouqv получим просто "XPON" и надо будет лишь сделать | tr -d ' " '    что бы удалить лапки.

      3 - OID_MODEL_ONU="1.3.6.1.4.1.3320.101.10.1.1.2" аналогично вендорам, получаем модель.

      4- OID_TEMP_ONU="1.3.6.1.4.1.3320.101.10.5.1.2"  - температура ону делим на / 256
      SNMPv2-SMI::enterprises.3320.101.10.5.1.2.17 = INTEGER: 7027  
      temp_onu=$($snmp3q $IP 1.3.6.1.4.1.3320.101.10.5.1.2.$INDEX | awk '{printf "%.2f", $1/265}' 2>/dev/null)

      5 - OID_AUNT_ONU_STATUS="1.3.6.1.4.1.3320.101.10.1.1.26"
      SNMPv2-SMI::enterprises.3320.101.10.1.1.26.276 = INTEGER: 3

      onuAunt_type=$($snmp3q $IP "$OID_AUNT_ONU_STATUS.$INDEX" 2>/dev/null)
          case "$onuAunt_type" in
              0) onuAunt_type_txt="authenticated" ;;
              1) onuAunt_type_txt="registered" ;;
              2) onuAunt_type_txt="deregistered" ;;
              3) onuAunt_type_txt="auto_config" ;;
              4) onuAunt_type_txt="lost" ;;
              *) onuAunt_type_txt="unknown" ;;
          esac

      6 - OID_UPTIME_ONU="1.3.6.1.4.1.3320.101.10.1.1.80" uptime
      SNMPv2-SMI::enterprises.3320.101.10.1.1.80.207 = INTEGER: 290907
      timetick 
      | awk '{h=int($1/3600); m=int(($1%3600)/60); s=$1%60; printf "AliveTime: %dч %dмин %dсек\n", h, m, s}')${reset}"

      7 - OID_DIST="1.3.6.1.4.1.3320.101.10.1.1.27"
      SNMPv2-SMI::enterprises.3320.101.10.1.1.27.149 = INTEGER: 1600
      на епоне в метрах  на гпоне делим на 10

      8 - OID_IF_MAC10="1.3.6.1.4.1.3320.101.11.1.1.3"
      SNMPv2-SMI::enterprises.3320.101.11.1.1.3.14.60.21.18.8.130.175 = Hex-STRING: 3C 15 12 08 82 AF  
      SNMPv2-SMI::enterprises.3320.101.11.1.1.3      .14-PORTINDEX     60.21.18.8.130.175  - MAC10                = Hex-STRING: MAC HEX

      9- OID_IFindexmac10="1.3.6.1.4.1.3320.101.11.1.1.1"
      SNMPv2-SMI::enterprises.3320.101.11.1.1.1.125.60.21.18.6.227.186 = INTEGER: 125
      SNMPv2-SMI::enterprises.3320.101.11.1.1.1.125.60.21.18.6.247.136 = INTEGER: 125
      возвращает PORT INDEX и можно грепнуть по mac10 найти индекс и можно грепнуть через мак10

      10 - LASTREG_DATE="1.3.6.1.4.1.3320.101.11.1.1.9"
      дату отдаёт в хексе. надо декодировать это дело.
      вызов snmp + IP + oid + PORTINDEX + MAC10 
      date_hex=$($snmp1 $IP "$LASTREG_DATE.$IF_INDEX.$mac10" 2>/dev/null | awk -F': ' '{print $2}' | tr -d ' ')
      if [[ -n "$date_hex" ]]; then
              # Преобразуем дату из hex в числовое представление
              data=($(echo "$date_hex" | sed 's/../0x& /g'))
              local year=$((data[0] * 256 + data[1]))
              local month=${data[2]}
              local day=${data[3]}
              local hour=${data[4]}
              local minute=${data[5]}
              local second=${data[6]}


      local formatted_date=$(printf "%04d-%02d-%02d %02d:%02d:%02d" "$year" "$month" "$day" "$hour" "$minute" "$second")


      10 - LASTDEREG_DATE="1.3.6.1.4.1.3320.101.11.1.1.10"
      аналогично 9му оиду.

      11 - LASTDEREG_REASON="1.3.6.1.4.1.3320.101.11.1.1.11" 
      DEREG_STATUS=$($snmp3 $IP "$LASTDEREG_REASON.$IF_INDEX.$mac10" -Oqv 2>/dev/null)
          case "$DEREG_STATUS" in
              2) dereg_status_text="normal";;
              3) dereg_status_text="mpcp-down";;
              4) dereg_status_text="oam-down";;
              5) dereg_status_text="firmware-download";;
              6) dereg_status_text="illegal-mac";;
              7) dereg_status_text="llid-admin-down";;
              😎 dereg_status_text="wire-down";;
              9) dereg_status_text="power-off";;
              255) dereg_status_text="unknown";;
              0) dereg_status_text="Нет данных.";;
              *) dereg_status_text="not found";;
          esac

      есть прикол если онушка autoconfig статус 3 / authenticated статус 0
      там инвертируються 7 и 8  может и от моделей ону зависеть.... 
      7) dereg_status_text="llid-admin-down";;
      😎 dereg_status_text="wire-down";;
      это уже тестами )


      12  -  OID_ONU_ETH="1.3.6.1.4.1.3320.101.12.1.1.8" статус езернет ничего не обычного кроме того что может верно отдать данные с 2-3го раза )
      2 down 1 up 
      там же есть прикол с authenticated autoconfig инвертируется...
      local PORT_COUNT=$($snmp2 "$IP" "$OID_ONU_ETH.$INDEX" | wc -l)
      local ETH_STATUS=$($snmp2 "$IP" "$OID_ONU_ETH.$INDEX.$port" 2>/dev/null)
              [[ "$ETH_STATUS" =~ ^[0-9]+$ ]] || continue  # Проверяем, что ETH_STATUS - это число
              if [[ "$onuAunt_type" == "0" ]]; then
                  STATUS_COLOR=$( [[ "$ETH_STATUS" -eq 2 ]] && echo "UP" || echo "DOWN" )
              else
                  STATUS_COLOR=$( [[ "$ETH_STATUS" -eq 1 ]] && echo "UP" || echo "DOWN" )
              fi

      13 - OID_PORT_INDEX="1.3.6.1.4.1.3320.101.107.1.1" # oid возвращает все индексы ПОН портов, работает не везде.
      14 - OID_GEPORT_COUNT="1.3.6.1.4.1.3320.101.10.1.1.12"   гигабит езернет порты на онушках (кол-во)
      15 - OID_FEPORT_COUNT="1.3.6.1.4.1.3320.101.10.1.1.14"   ФастЕзернет 100мбит аналогично. 
      INTEGER 

      16 - OID_REBOOT_ONU="1.3.6.1.4.1.3320.101.10.1.1.29" # snmpset -v2c -c RW IP OID.onuIndex i 0                                  reboot REBOOT ONU epon snmp
      $snmp5 "$IP" "$OID_REBOOT_ONU.$INDEX" i 0 >/dev/null 2>&1

      17 - delete onu epon  удалить ону бдком снмп 
      OID_DEL_ONU="SNMPv2-SMI::enterprises.3320.101.11.1.1.2"
      $snmp5 "$IP" "$OID_DEL_ONU.$ifID.$mac10" i 0 > /dev/null 2>&1    oid.PORTINDEX.mac10 i 0 
      остальные есть выше там думаю всё понятно.

      SIGNAL LEVELS в зависимости от моделей плат и олтов расписаны 
      все везде одинаково 
      $snmp2 "$IP" "$OID_RX_OLT.$INDEX" 2>/dev/null | awk '{print $NF / 10}')   результат делим на 10.

      epon пакеты, ошибки по портам на онушке.
      broadcasts=$($snmp4 "$IP" "1.3.6.1.4.1.3320.101.12.2.1.16.$INDEX.$port" 2>/dev/null)
      multicasts=$($snmp4 "$IP" "1.3.6.1.4.1.3320.101.12.2.1.17.$INDEX.$port" 2>/dev/null)
      unicasts=$($snmp4 "$IP" "1.3.6.1.4.1.3320.101.12.2.1.18.$INDEX.$port" 2>/dev/null)
      pause=$($snmp4 "$IP" "1.3.6.1.4.1.3320.101.12.2.1.19.$INDEX.$port" 2>/dev/null)
      fcserrs=$($snmp4 "$IP" "1.3.6.1.4.1.3320.101.12.2.1.20.$INDEX.$port" 2>/dev/null )
      oversize=$($snmp4 "$IP" "1.3.6.1.4.1.3320.101.12.2.1.13.$INDEX.$port" 2>/dev/null)
      jabber=$($snmp4 "$IP" "1.3.6.1.4.1.3320.101.12.2.1.14.$INDEX.$port" 2>/dev/null)

      мне бы такое помогло.. а не искать на тонне форумов и сайтов и неделю тыкая snmpwalk и выясняя что и для чего. остального и в инете полно. 
    • Від Amigo
      Продам GEPON ОЛТи BDCOM
      1. BDCOM P3310B (Вживаний) - 6000 грн.
      2. BDCOM P3310C (Вживаний) - 7500 грн.
      3. BDCOM P3310C (Вживаний без вух) - 7000 грн.
      4. BDCOM P3608-2TE (Вживаний) - 20000 грн.
      5. BDCOM P3608-2TE  (Вживаний) - 19000 грн.

    • Від grapefruit
      Доброго вечора, спільното!
      Можливо хтось стикався з завданням,коли потрібно на OLT BDCOM GP3600 по oid визначити час розреєстрування ону. В неті нічого знайти не вдалося, через MIB браузер тоже ніц.
      Якщо підкажете буде дуже вдячний, або хоч підкажіть де шукати.
      Всім гарного вечора)

×
×
  • Створити нове...