shafiev Posted December 25, 2018 · Report post Коллеги, сейчас опять хочу вернуться к этому чудо софту http://0x1.tv/20150626F , поделитесь опытом использования и допилки LibreNMS Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Urs_ak Posted December 26, 2018 · Report post Я недавно изучал эту штуку - из коробки много что работает, но если надо что-то добавить чего нету, то это геморр. Железяку (например коммутатор Eltex) со стандартными метриками ещё можно добавить, через создание описания /opt/librenms/includes/definitions/eltex.yaml А чего-то новое, типа отображения на отдельной закладке ONT портов для gpon-терминала Eltex LTP, я сделал, но провозился неделю. По факту - это программирование на php. Потом мне попались на глаза графики "Interface Non Unicast" и я увидел что они не правильные. Написал разрабам, они проигнорили. Теперь не планирую особо использовать LibreNMS. В общем - ознакомился с продуктом. P.S. Жалко, конечно, т.к. от интерфейса Zabbix'а меня тошнит - помойка метрик. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
shafiev Posted December 26, 2018 · Report post 3 hours ago, Urs_ak said: Потом мне попались на глаза графики "Interface Non Unicast" и я увидел что они не правильные. Написал разрабам, они проигнорили. Теперь не планирую особо использовать LibreNMS. Ты им завели issue на github ? 3 hours ago, Urs_ak said: А чего-то новое, типа отображения на отдельной закладке ONT портов для gpon-терминала Eltex LTP, я сделал, но провозился неделю. По факту - это программирование на php. А можешь пояснить как или поделиться ? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Urs_ak Posted December 27, 2018 · Report post 19 часов назад, shafiev сказал: А можешь пояснить как или поделиться ? Я могу пояснить суть (на примере gpon-терминала Eltex LTP-4X), только без деталей, т.к. я охладел к LibreNMS на год-два точно Но есть ли в этом смысл, если это добавление довольно муторно делается? Из моих записей: 1. Добавить узнавание модели LTP-4X librenms/includes/definitions/eltex-olt.yaml Скрытый текст discovery: - sysObjectID: - .1.3.6.1.4.1.35265.1.70 2. Скопировать MIB'ы для LTP-4X в librenms/mibs/eltex-my 3. Собирать свои метрики poller'ом, сохранять в rrd, также сохранять в mysql номера портов и их описание librenms/includes/polling/eltex-pon.inc.php Скрытый текст use LibreNMS\RRD\RrdDefinition; ... // Get metrics from ONT ports $OLTmetrics = array(); $OLTmetrics = snmpwalk_cache_multi_oid($device, 'ltp8xONTStateChannel', $OLTmetrics, 'ELTEX-LTP8X', null, '-OQUsb'); $OLTmetrics = snmpwalk_cache_multi_oid($device, 'ltp8xONTStateID', $OLTmetrics, 'ELTEX-LTP8X', 'eltex-my', '-OQUsb'); $OLTmetrics = snmpwalk_cache_multi_oid($device, 'ltp8xONTConfigDescription', $OLTmetrics, 'ELTEX-LTP8X', 'eltex-my', '-OQUsb'); $OLTmetrics = snmpwalk_cache_multi_oid($device, 'ltp8xONTStateState', $OLTmetrics, 'ELTEX-LTP8X', 'eltex-my', '-OeQUsb'); $OLTmetrics = snmpwalk_cache_multi_oid($device, 'ltp8xONTStateDistance', $OLTmetrics, 'ELTEX-LTP8X', 'eltex-my', '-OQUsb'); $OLTmetrics = snmpwalk_cache_multi_oid($device, 'ltp8xONTStateTxPower', $OLTmetrics, 'ELTEX-LTP8X', 'eltex-my', '-OQUsb'); $OLTmetrics = snmpwalk_cache_multi_oid($device, 'ltp8xONTStateRxPower', $OLTmetrics, 'ELTEX-LTP8X', 'eltex-my', '-OQUsb'); $OLTmetrics = snmpwalk_cache_multi_oid($device, 'ltp8xONTStateTemperature', $OLTmetrics, 'ELTEX-LTP8X', 'eltex-my', '-OQUsb'); // Get traffic from ONT ports foreach ($OLTmetrics as $OLTmetricId=>$OLTmetric) { $snmp_query = "ltp8xONTCrossConnectDSCounterValue.$OLTmetricId.1.1 ltp8xONTCrossConnectUSCounterValue.$OLTmetricId.1.1"; $OLTmetrics_traffic = snmp_get_multi($device, $snmp_query, '-OQUsb', 'ELTEX-LTP8X', 'eltex-my'); $OLTmetrics[$OLTmetricId]['ltp8xONTCrossConnectDSCounterValue'] = $OLTmetrics_traffic["$OLTmetricId.1.1"]['ltp8xONTCrossConnectDSCounterValue']; $OLTmetrics[$OLTmetricId]['ltp8xONTCrossConnectUSCounterValue'] = $OLTmetrics_traffic["$OLTmetricId.1.1"]['ltp8xONTCrossConnectUSCounterValue']; } ... сохранить в mysql номера портов и desc ... // Generate RRD files foreach ($OLTmetrics as $OLTmetricId=>$OLTmetric) { $ONTchannel = $OLTmetric['ltp8xONTStateChannel']; $ONTstateid = $OLTmetric['ltp8xONTStateID']; $ONTifname = $ONTchannel.'/'.$ONTstateid; $ONTdesc = $OLTmetric['ltp8xONTConfigDescription']; $ONTstate = $OLTmetric['ltp8xONTStateState']; $ONTdistance = $OLTmetric['ltp8xONTStateDistance']; $ONTtxpower = $OLTmetric['ltp8xONTStateTxPower']; $ONTrxpower = $OLTmetric['ltp8xONTStateRxPower']; $ONTtemp = $OLTmetric['ltp8xONTStateTemperature']; $ONTdownload = $OLTmetric['ltp8xONTCrossConnectDSCounterValue']; $ONTupload = $OLTmetric['ltp8xONTCrossConnectUSCounterValue']; echo "* ONT Interface: ". $ONTifname."\n"; echo " ONT Description: ".$ONTdesc."\n"; echo " ONT State: ". $ONTstate."\n"; echo " ONT Distance: ". $ONTdistance."\n"; echo " ONT TX Power: ". $ONTtxpower."\n"; echo " ONT RX Power: ". $ONTrxpower."\n"; echo " ONT Temperature: ".$ONTtemp."\n"; echo " ONT Download: ". $ONTdownload."\n"; echo " ONT Upload: ". $ONTupload."\n"; $rrd_def = RrdDefinition::make() ->addDataset('state', 'GAUGE', 0) ->addDataset('distance', 'GAUGE', 0) ->addDataset('txpower', 'GAUGE', 0) ->addDataset('rxpower', 'GAUGE', null) ->addDataset('temp', 'GAUGE', 0) ->addDataset('download', 'COUNTER', 0) ->addDataset('upload', 'COUNTER', 0); $fields = array( 'state' => $ONTstate, 'distance' => $ONTdistance, 'txpower' => $ONTtxpower, 'rxpower' => $ONTrxpower, 'temp' => $ONTtemp, 'download' => $ONTdownload, 'upload' => $ONTupload, ); $tags = compact('rrd_def'); $rrdfname = "ponport-".$ONTchannel.'-'.$ONTstateid; data_update($device, $rrdfname, $tags, $fields); } 4. Проверочный запуск поллера librenms/poller.php -h <ip> -m eltex-pon -d -v 5. Сделать свою закладку для устройства Eltex LTP добавить код вызова закладки PON (122 строка) в страницу device librenms/html/pages/device.inc.php Скрытый текст if ($device['os'] == 'eltex-olt') { echo '<li role="presentation" '.$select['pon'].'> <a href="'.generate_device_url($device, array('tab' => 'pon')).'"> <i class="fa fa-sitemap fa-lg icon-theme" aria-hidden="true"></i> PON </a> </li>'; } 6. Сделать отображение этой закладки, по аналогии с таблицей обычных портов librenms/html/pages/device/pon.inc.php Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
shafiev Posted December 27, 2018 (edited) · Report post 36 minutes ago, Urs_ak said: Но есть ли в этом смысл, если это добавление довольно муторно делается? Оки , а чем не муторно ? И еще пару вопросов : А где у тебя в коде вызывается сохраненение в mysql? И почему нельзя это плагином сделать , туда можно и функционал добавления, выключение ОНТ сделать ? Да и спасибо за код Edited December 27, 2018 by shafiev Забыл добавить спасибо Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Urs_ak Posted December 27, 2018 · Report post 5 минут назад, shafiev сказал: А где у тебя в коде вызывается сохраненение в mysql? Там и вызывается, в п. 3 Я это не расписывал, т.к. это замыливание сути - как LibreNMS получает метрики и сохраняет в rrd Записи в mysql они больше нужны для вывода активных портов на закладке, для отображения 11 минут назад, shafiev сказал: И почему нельзя это плагином сделать , туда можно и функционал добавления, выключение ОНТ сделать ? Наверно можно, я же это делал чтобы разобраться как LibreNMS работает, на примере конкретной задачи Если я бы дошёл до стадии "отправить рабочий код разработчикам", то навёл бы красоты, может переписал бы через плугины Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
shafiev Posted December 27, 2018 · Report post 2 minutes ago, Urs_ak said: Я это не расписывал, т.к. это замыливание сути - как LibreNMS получает метрики и сохраняет в rrd Да у них сейчас и в influxdb и в Prometheus тоже поддержка есть, что радует , ведь проект сам по себе развивается. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
shafiev Posted December 27, 2018 · Report post 2 hours ago, Urs_ak said: discovery: - sysObjectID: - .1.3.6.1.4.1.35265.1.70 Если можно будет еще пару вопросов .Вот то что выше это запрос на все онт какие есть или уже готовый с ifindex интерфейса ? (Меня просто попросили помочь с OLT Huawei , там вначале спрашиваешь какие есть интерфейсы , потом выбираешь какие gpon ,чтобы потом получить как ONT ID к ним привязанны и дальше делаешь опросы ) ? И ты где инфу по внутреннестям брал( на каких ресурсах , примерах , и/или кого то спрашивал ) ? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
s.lobanov Posted December 27, 2018 · Report post В 26.12.2018 в 11:17, Urs_ak сказал: Потом мне попались на глаза графики "Interface Non Unicast" и я увидел что они не правильные. Написал разрабам, они проигнорили. Теперь не планирую особо использовать LibreNMS. А патч-то приложили? 2 часа назад, Urs_ak сказал: Я могу пояснить суть (на примере gpon-терминала Eltex LTP-4X), только без деталей, т.к. я охладел к LibreNMS на год-два точно Но есть ли в этом смысл, если это добавление довольно муторно делается? Из моих записей: 1. Добавить узнавание модели LTP-4X librenms/includes/definitions/eltex-olt.yaml Показать содержимое discovery: - sysObjectID: - .1.3.6.1.4.1.35265.1.70 2. Скопировать MIB'ы для LTP-4X в librenms/mibs/eltex-my 3. Собирать свои метрики poller'ом, сохранять в rrd, также сохранять в mysql номера портов и их описание librenms/includes/polling/eltex-pon.inc.php Показать содержимое use LibreNMS\RRD\RrdDefinition; ... // Get metrics from ONT ports $OLTmetrics = array(); $OLTmetrics = snmpwalk_cache_multi_oid($device, 'ltp8xONTStateChannel', $OLTmetrics, 'ELTEX-LTP8X', null, '-OQUsb'); $OLTmetrics = snmpwalk_cache_multi_oid($device, 'ltp8xONTStateID', $OLTmetrics, 'ELTEX-LTP8X', 'eltex-my', '-OQUsb'); $OLTmetrics = snmpwalk_cache_multi_oid($device, 'ltp8xONTConfigDescription', $OLTmetrics, 'ELTEX-LTP8X', 'eltex-my', '-OQUsb'); $OLTmetrics = snmpwalk_cache_multi_oid($device, 'ltp8xONTStateState', $OLTmetrics, 'ELTEX-LTP8X', 'eltex-my', '-OeQUsb'); $OLTmetrics = snmpwalk_cache_multi_oid($device, 'ltp8xONTStateDistance', $OLTmetrics, 'ELTEX-LTP8X', 'eltex-my', '-OQUsb'); $OLTmetrics = snmpwalk_cache_multi_oid($device, 'ltp8xONTStateTxPower', $OLTmetrics, 'ELTEX-LTP8X', 'eltex-my', '-OQUsb'); $OLTmetrics = snmpwalk_cache_multi_oid($device, 'ltp8xONTStateRxPower', $OLTmetrics, 'ELTEX-LTP8X', 'eltex-my', '-OQUsb'); $OLTmetrics = snmpwalk_cache_multi_oid($device, 'ltp8xONTStateTemperature', $OLTmetrics, 'ELTEX-LTP8X', 'eltex-my', '-OQUsb'); // Get traffic from ONT ports foreach ($OLTmetrics as $OLTmetricId=>$OLTmetric) { $snmp_query = "ltp8xONTCrossConnectDSCounterValue.$OLTmetricId.1.1 ltp8xONTCrossConnectUSCounterValue.$OLTmetricId.1.1"; $OLTmetrics_traffic = snmp_get_multi($device, $snmp_query, '-OQUsb', 'ELTEX-LTP8X', 'eltex-my'); $OLTmetrics[$OLTmetricId]['ltp8xONTCrossConnectDSCounterValue'] = $OLTmetrics_traffic["$OLTmetricId.1.1"]['ltp8xONTCrossConnectDSCounterValue']; $OLTmetrics[$OLTmetricId]['ltp8xONTCrossConnectUSCounterValue'] = $OLTmetrics_traffic["$OLTmetricId.1.1"]['ltp8xONTCrossConnectUSCounterValue']; } ... сохранить в mysql номера портов и desc ... // Generate RRD files foreach ($OLTmetrics as $OLTmetricId=>$OLTmetric) { $ONTchannel = $OLTmetric['ltp8xONTStateChannel']; $ONTstateid = $OLTmetric['ltp8xONTStateID']; $ONTifname = $ONTchannel.'/'.$ONTstateid; $ONTdesc = $OLTmetric['ltp8xONTConfigDescription']; $ONTstate = $OLTmetric['ltp8xONTStateState']; $ONTdistance = $OLTmetric['ltp8xONTStateDistance']; $ONTtxpower = $OLTmetric['ltp8xONTStateTxPower']; $ONTrxpower = $OLTmetric['ltp8xONTStateRxPower']; $ONTtemp = $OLTmetric['ltp8xONTStateTemperature']; $ONTdownload = $OLTmetric['ltp8xONTCrossConnectDSCounterValue']; $ONTupload = $OLTmetric['ltp8xONTCrossConnectUSCounterValue']; echo "* ONT Interface: ". $ONTifname."\n"; echo " ONT Description: ".$ONTdesc."\n"; echo " ONT State: ". $ONTstate."\n"; echo " ONT Distance: ". $ONTdistance."\n"; echo " ONT TX Power: ". $ONTtxpower."\n"; echo " ONT RX Power: ". $ONTrxpower."\n"; echo " ONT Temperature: ".$ONTtemp."\n"; echo " ONT Download: ". $ONTdownload."\n"; echo " ONT Upload: ". $ONTupload."\n"; $rrd_def = RrdDefinition::make() ->addDataset('state', 'GAUGE', 0) ->addDataset('distance', 'GAUGE', 0) ->addDataset('txpower', 'GAUGE', 0) ->addDataset('rxpower', 'GAUGE', null) ->addDataset('temp', 'GAUGE', 0) ->addDataset('download', 'COUNTER', 0) ->addDataset('upload', 'COUNTER', 0); $fields = array( 'state' => $ONTstate, 'distance' => $ONTdistance, 'txpower' => $ONTtxpower, 'rxpower' => $ONTrxpower, 'temp' => $ONTtemp, 'download' => $ONTdownload, 'upload' => $ONTupload, ); $tags = compact('rrd_def'); $rrdfname = "ponport-".$ONTchannel.'-'.$ONTstateid; data_update($device, $rrdfname, $tags, $fields); } 4. Проверочный запуск поллера librenms/poller.php -h <ip> -m eltex-pon -d -v 5. Сделать свою закладку для устройства Eltex LTP добавить код вызова закладки PON (122 строка) в страницу device librenms/html/pages/device.inc.php Показать содержимое if ($device['os'] == 'eltex-olt') { echo '<li role="presentation" '.$select['pon'].'> <a href="'.generate_device_url($device, array('tab' => 'pon')).'"> <i class="fa fa-sitemap fa-lg icon-theme" aria-hidden="true"></i> PON </a> </li>'; } 6. Сделать отображение этой закладки, по аналогии с таблицей обычных портов librenms/html/pages/device/pon.inc.php Круто, но где merge request в сторону разработчиков? Если так постить на форумах, то продукт за счёт комьюнити не разовьётся? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Urs_ak Posted December 27, 2018 · Report post 4 часа назад, shafiev сказал: Вот то что выше это запрос на все онт какие есть или уже готовый с ifindex интерфейса ? (Меня просто попросили помочь с OLT Huawei , там вначале спрашиваешь какие есть интерфейсы , потом выбираешь какие gpon ,чтобы потом получить как ONT ID к ним привязанны и дальше делаешь опросы ) ? Ну у вас , видимо, начальный уровень по этой теме, раз такой вопрос :) И наверно вы даже не читали это https://docs.librenms.org/Developing/os/Initial-Detection/ и вообще там всю ветку надо посмотреть sysObjectID - это в SNMP уникальный идентификатор железки/модели, по нему NMS'ы определяют куда соотнести железку и какие метрики, в итоге, запрашивать Запустите smpwalk на железку и полУчите этот код sysObjectID: snmpwalk -Oqnv -v2c -c <community> <ip> 1.3.6.1.2.1.1.2 Сделайте файл, по аналогии с соседними, напр. librenms/includes/definitions/huawei-olt.yaml и напишите туда полученный код sysObjectID и далее, по прочитанному Вот более простой пример, как добавить свою железку - коммутатор Eltex MES 3124F (это я себе заметку делал): Скрытый текст https://docs.librenms.org/#Developing/Support-New-OS/ /opt/librenms/includes/definitions/eltex.yaml - основной, с описанием железки /opt/librenms/includes/polling/os/eltex.inc.php - переменные для морды и т.п. /opt/librenms/includes/definitions/discovery/eltex.yaml - свои счётчики 0) Загрузка своих MIB загрузить wget https://eltex-co.ru/upload/iblock/12f/eltex_mib_2.5.48.zip и разархивировать private в mibs/eltex Пример обращений: snmpwalk -v2c -c <community> -M mibs:mibs/eltex -m RADLAN-rndMng <ip> rlCpuUtilDuringLast5Minutes.0 snmpwalk -v2c -c <community> -M mibs:mibs/eltex <ip> RADLAN-rndMng::rlCpuUtilDuringLast5Minutes.0 1) #/opt/librenms/includes/definitions/eltex.yaml os: eltex - уникальное имя (+ будет mib'ы искать в папке с таким именем) text: 'Eltex MES' ifname: true type: network icon: eltex mib_dir: - cisco - дополнительная папка с mib'ами bad_ifXEntry: - подстройка, чтобы метрики правильно показывать - 'MES3124F' - модель over: - графики "над мышкой" - { graph: device_bits, text: 'Device Traffic' } - { graph: device_processor, text: 'CPU Usage' } - processor - значит взять значения из modules->processors->data файла includes/definitions/discovery/eltex.yaml poller_modules: bgp-peers: false hr-mib: false ntp: false ospf: false ucd-diskio: false ucd-mib: false wireless: false discovery_modules: bgp-peers: false cisco-vrf-lite: false ntp: false ucd-diskio: false wireless: false discovery: - sysObjectID: - .1.3.6.1.4.1.35265.1.30 2) #/opt/librenms/includes/polling/os/eltex.inc.php <?php use LibreNMS\RRD\RrdDefinition; $version = str_replace('"', '', snmp_get($device, '.1.3.6.1.4.1.89.2.4.0', '-Oqv')); $hardware = str_replace('"', '', snmp_get($device, '.1.3.6.1.4.1.89.53.14.1.11.1', '-Oqv')); - переменные, которые будут отображаться в описании устройства * не обязательный * $cpu_usage не заработал 3) #/opt/librenms/includes/definitions/discovery/eltex.yaml mib: RADLAN-rndMng modules: processors: data: - oid: rlCpuUtilDuringLast5Minutes num_oid: '.1.3.6.1.4.1.89.1.9.{{ $index }}' * не обязательный 4) Проверка (для уже найденного уст-ва) /opt/librenms/discovery.php -h <ip> -d -m os /opt/librenms/poller.php -h <ip> -d -m processors * если сбилось и определяется как Generic,то надо запустить discovery опять /opt/librenms/discovery.php -h <ip> -d -v >lsd2 2>&1 Вообще в LibreNMS нету, на данный момент, инфраструктуры для нормального мониторинга OLT-терминалов. На том что есть, можно добавить узнавание железки и мониторинг стандартных метрик - обычные интерфейсы, CPU и т.п. Графики загрузки ONT портов вы так просто не получите. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
shafiev Posted December 27, 2018 · Report post 2 minutes ago, Urs_ak said: Графики загрузки ONT портов вы так просто не получите. Вот я и хочу сделать все нормально , чтобы был автодетектинг ОНТ со всеми параметрами . 3 minutes ago, Urs_ak said: Ну у вас , видимо, начальный уровень по этой теме, раз такой вопрос :) ну дык я ее когда тыкал еще этих доков не было ) Вопрос в догонку я потом же эти полученные ОНТшки по их SNMP ID полученным ранее смогу в своем плагине оперировать и если да то через mysql ? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Urs_ak Posted December 27, 2018 · Report post 6 минут назад, shafiev сказал: Вопрос в догонку я потом же эти полученные ОНТшки по их SNMP ID полученным ранее смогу в своем плагине оперировать и если да то через mysql ? Про плугины меня не спрашивайте я туда не погружался. Почитайте доки, там видимо много они добавили информации. Мне втемяшилось, что я хочу закладку "PON", рядом с Ports. Чтобы там был список сконфигуренных ONT портов на железке А по клику на выбранный ONT порт открывалась статистика для этого порта: UL/DL,уровень сигнала,расстояние и т.п. HTML код для отображения полученных метрик, взял с закладки "Ports": librenms/html/pages/device/ports.inc.php librenms/html/pages/device/port.inc.php librenms/html/includes/graphs/port/ и сделал по аналогии Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
shafiev Posted December 28, 2018 · Report post А для TR-69 у вас eltex.acs ? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
shafiev Posted January 5, 2019 · Report post Больше никто не работал с ним ? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
erikas Posted July 14, 2019 · Report post есть у кого какие подвижки в пон Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
sinoptik Posted December 8, 2021 · Report post Поставил поиграться librenms - проблема со старыми d-linkами 3028 - включен режим vlun trunk - соответственно librenms вываливает все 4к интерфейсов и пытается их опрашивать. Да и вообще, все эти интерфейсы же фиктивные на l2 свичах - как сделать, чтоб он добавлял только порты физические? отключение в global модуля ports и vlans не помогает..Хотяб для 3028 длинка это поправить, а то десяток таких свитчей после автодискавери вешают виртуалку с либрой. Спасибо Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Urs_ak Posted December 8, 2021 · Report post Там можно настроить какие интерфейсы игнорировать https://docs.librenms.org/Support/Configuration/#interfaces-to-be-ignored Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
sinoptik Posted December 9, 2021 (edited) · Report post Цитата Examples: Add entries to default arrays lnms config:set bad_if.+ voip-null lnms config:set bad_iftype.+ voiceEncap lnms config:set bad_if_regexp.+ '/^lo[0-9].*/' # loopback Override default bad_if values lnms config:set bad_if '["voip-null", "voiceEncap", "voiceFXO"]' Create an OS specific array lnms config:set os.iosxe.bad_iftype.+ macSecControlledIF lnms config:set os.iosxe.bad_iftype.+ macSecUncontrolledIF Various bad_if* selection options available bad_if is matched against the ifDescr value. bad_iftype is matched against the ifType value. bad_if_regexp is matched against the ifDescr value as a regular expression. bad_ifname_regexp is matched against the ifName value as a regular expression. bad_ifalias_regexp is matched against the ifAlias value as a regular expression. А можете подсказать, как по-правильному тут совместить условия определения вендора\ оси d-link например и в них исключать интерфейсы 802.1q encapsulation tag 0001, 802.1q encapsulation tag 0002, 802.1q encapsulation tag 0003, 802.1q encapsulation tag 0004, 802.1q encapsulation tag 0005, 802.1q encapsulation tag 0006, 802.1q encapsulation tag 0007, 802.1q encapsulation tag 0008, 802.1q encapsulation tag и т.д. Как я понял, нужно поправить файл dlink.yaml Цитата os: dlink text: 'D-Link Switch' type: network icon: dlink ifname: true empty_ifdescr: true discovery: - sysObjectID_except: - .1.3.6.1.4.1.171.10.37. sysObjectID: - .1.3.6.1.4.1.171.10. good_if: - po - vlan Но что добавлять? bad_if -vlan или -dot1q Спасибо Edited December 10, 2021 by sinoptik Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...