Jump to content
Local
dan_aspire

Pon Control - комплекс управления и мониторинга сетью

Recommended Posts

Было бы замечательно видеть поле description в описании, по каждой ону.

Share this post


Link to post
Share on other sites

изначально задолго до релиза описание бралось и писалось именно по IfAlias, но потом реализовал описание в мускуле, ибо кириллица. Если есть необходимость - можно добавить вместо описания из мускуля.

Edited by dan_aspire

Share this post


Link to post
Share on other sites

Хотелось бы такую штуку сделать. Как вариант можно сделать переменную в vars.php и делать как хочешь. Просто думаю перейти на вашу систему с самописной, но заполнять описания вручную с 4+ олтов как-то грустно.

Share this post


Link to post
Share on other sites

Как вариант - можно импортировать. Ибо каждый подтягивать при открытии описание онушек - долго и бессмысленно дёргать железку. А раз уже хранится информация описания в мускуле - глупо было бы не воспользоваться кириллицей.

Share this post


Link to post
Share on other sites

Точняк! Попер я вспоминать mysql, ато подзабыл. И вопрос, если я редактирую(подписую) onu на web-интерфейсе редактируется ли оно на самом olt? Иногда в консоли на самом олте быстрее  посмотреть дескрипшин онушки нежели заходить на WEB-интерфейс, особенно когда монтажники на столбе в коробке.

Edited by sadist

Share this post


Link to post
Share on other sites

В данный момент работы с хранением IfDescr на олте нет. Не пойму чем быстрее смотреть дескрипшн в консоли. В любом случае телнет на олт - enable - show занимает больше времени чем 2 щелчок на закладку и щелчок на нужный олт/сфп в нем. С телефона на линии так тем более.

Ещё раз, если нужно - можно сделать импорт данных с олта в БД PonControl

Share this post


Link to post
Share on other sites

Затестил софтинку. Прикольная.

 

Хочу предложить одно улучшение. В install.txt описано создание скрипта для опроса онушек, который можно заменить одной строчкой в кронтабе:

*/6 * * * * /usr/bin/env curl -u user:password http://pon.example.org/pon/ping_all.php

Главное чтоб был установлен курл на сервере, но обычно он там и так есть.

Edited by cjayho

Share this post


Link to post
Share on other sites

 

Но администраторам Linux вероятно подойдет. Для Фрюхи надо допиливать большущим напильником.

 

1. Пути к snmpwalk и snmpset у вас кажется указаны жестко на каталог /usr/bin ? На FreeBSD вспомогательное ПО ставится в /usr/local/bin. Не помню как я догадался сделать симлинки... 

 

 

Неплохо было бы сделать не симлинки, а прописать в софтинке путь не /usr/bin/snmpwalk, а /usr/bin/env snmpwalk

Share this post


Link to post
Share on other sites

Да можно и так впринципе  */10 * * * *     wget -O - -q -t 1 http://pon.com/pon_v3/ping_all.php-O temp.php && rm temp.php*

Edited by ynet

Share this post


Link to post
Share on other sites

Да можно и так впринципе  */10 * * * *     wget -O - -q -t 1 http://pon.com/pon_v3/ping_all.php-O temp.php && rm temp.php*

Работает проверено

 

Этот вариант можно сказать ничем не отличается от того что был изначально. В этом варианте происходит создание временного файла и его удаление, в моем случае - нет. 

Share this post


Link to post
Share on other sites

 

 

Но администраторам Linux вероятно подойдет. Для Фрюхи надо допиливать большущим напильником.

 

1. Пути к snmpwalk и snmpset у вас кажется указаны жестко на каталог /usr/bin ? На FreeBSD вспомогательное ПО ставится в /usr/local/bin. Не помню как я догадался сделать симлинки... 

 

 

Неплохо было бы сделать не симлинки, а прописать в софтинке путь не /usr/bin/snmpwalk, а /usr/bin/env snmpwalk

 

 

 

Софт уже не использует снмп через ексеки. Вся работа с СНМП реализована через ПХП.

Share this post


Link to post
Share on other sites

Затестил софтинку. Прикольная.

 

Хочу предложить одно улучшение. В install.txt описано создание скрипта для опроса онушек, который можно заменить одной строчкой в кронтабе:



*/6 * * * * /usr/bin/env curl -u user:password http://pon.example.org/pon/ping_all.php

Главное чтоб был установлен курл на сервере, но обычно он там и так есть.

 

1) юзер-пассворд в КРОНе хранить не думаю что сильно безопасно. Если не из-под рута, конечно.

2) На убунту-сервер изначально курл не стоял, поэтому оставил с минимумом зависимостей

Share this post


Link to post
Share on other sites

кто подскажет что может быть сыпятся ошибки 

Notice: Undefined index: sort in /var/www/pon/onu_sql.php on line 12

Notice: Undefined index: sfp in /var/www/pon/onu_sql.php on line 18

Notice: Undefined variable: sort_sfp in /var/www/pon/onu_sql.php on line 20

Notice: Undefined variable: sort_sfp in /var/www/pon/onu_sql.php on line 43

Notice: Undefined variable: sort_sfp in /var/www/pon/onu_sql.php on line 43

Notice: Undefined variable: sort_sfp in /var/www/pon/onu_sql.php on line 44

Notice: Undefined variable: sort_sfp in /var/www/pon/onu_sql.php on line 44

Notice: Undefined variable: sort_sfp in /var/www/pon/onu_sql.php on line 44

Notice: Undefined variable: search_sql in /var/www/pon/onu_sql.php on line 54

Share this post


Link to post
Share on other sites

Вроде работает на Федоре 14 . php 5.3.8

Edited by sk1ll

Share this post


Link to post
Share on other sites

install.txt, 5) Создать скрипт...
 



--- install.txt         2016-01-29 12:34:02.000000000 +0200
+++ install.up.txt      2016-01-29 13:08:16.000000000 +0200
@@ -34,7 +34,7 @@
                site_link="http://pon.example.org/pon" #Адрес, по которому будет доступен ваш PonControl
                apache_user="apacheadmin" #Логин (при использовании апачевой авторизации)
                apache_password="apachepassword"        #Пароль (при использовании апачевой авторизации)
-               wget --user $apache_user --password $apache_password $site_link/ping_all.php -O temp.php && rm temp.php*        
+               wget --user $apache_user --password $apache_password $site_link/ping_all.php -O /dev/null

Share this post


Link to post
Share on other sites

Утра всем.

 

Обнаружился тут баг небольшой.  Проявляется как неопределение подключенных и работающих ONU-шек.  Детальные разборки показали, что poncontrol не может определить MAC-адрес ONU-шки.  Однако, сам poncontrol тут не виноват, косяк прячется в выводе похапэшной функции snmp2_get().

/* Поиски в ытырнетах обнаружили жалобы пользователей cacti с описанием этого же косяка */

 

Опрос при помощи штатной утилиты snmpget(1):

host:~ % snmpget -v2c -crocomm 10.10.10.3 1.3.6.1.4.1.3320.101.10.1.1.3.15          
SNMPv2-SMI::enterprises.3320.101.10.1.1.3.15 = Hex-STRING: FC FA F7 16 AE 7B 
host:~ % snmpget -v2c -crocomm 10.10.10.3 1.3.6.1.4.1.3320.101.10.1.1.3.14
SNMPv2-SMI::enterprises.3320.101.10.1.1.3.14 = STRING: "ЭЗВеЫb"
На формат вывода штатной утилиты мы можем повлиять (ключ -Ox), на вывод snmp2_get() -- нет. Во всяком случае, я способа не нашел.  Посему в код добавлен такой workaround:


--- function_lib.php    2015-11-12 22:41:39.000000000 +0200
+++ function_lib_up.php  2016-02-03 02:57:15.000000000 +0200
@@ -163,7 +163,20 @@
 // ----------Get MAC ADDRESS of ONU by nterface ID----------
 function MacById($ip, $ro, $iface) {
 $mac = snmp2_get($ip, $ro, "1.3.6.1.4.1.3320.101.10.1.1.3.$iface");
-$mac = trim(end(explode(':', $mac)));
+list($datatype, $out) = explode(':', $mac, 2);
+if ($datatype === "Hex-STRING") { // STRING vs Hex-STRING
+  $mac = trim($out);
+} elseif ($datatype === "STRING") {
+  $out = trim($out, " \"");
+  $hexStr = '';
+  for ($i = 0; $i < strlen($out); $i++) {
+    $hexStr .= dechex(ord($out[$i]));
+    $hexStr .= ' ';
+  }
+  $mac = trim($hexStr);
+} else {  // other cases
+  $mac = "XX XX XX XX XX XX";
+}
 $mac = str_replace (" ", ":", $mac);
 return $mac;
 }
По поводу кода: "Пожалуйста. не стреляйте в пианиста. Он старается, как может". Edited by jpby_

Share this post


Link to post
Share on other sites

Утра всем.

 

Обнаружился тут баг небольшой.  Проявляется как неопределение подключенных и работающих ONU-шек.  Детальные разборки показали, что poncontrol не может определить MAC-адрес ONU-шки.  Однако, сам poncontrol тут не виноват, косяк прячется в выводе похапэшной функции snmp2_get().

/* Поиски в ытырнетах обнаружили жалобы пользователей cacti с описанием этого же косяка */

 

Опрос при помощи штатной утилиты snmpget(1):

host:~ % snmpget -v2c -crocomm 10.10.10.3 1.3.6.1.4.1.3320.101.10.1.1.3.15          
SNMPv2-SMI::enterprises.3320.101.10.1.1.3.15 = Hex-STRING: FC FA F7 16 AE 7B 
host:~ % snmpget -v2c -crocomm 10.10.10.3 1.3.6.1.4.1.3320.101.10.1.1.3.14
SNMPv2-SMI::enterprises.3320.101.10.1.1.3.14 = STRING: "ЭЗВеЫb"
На формат вывода штатной утилиты мы можем повлиять (ключ -Ox), на вывод snmp2_get() -- нет. Во всяком случае, я способа не нашел.  Посему в код добавлен такой workaround:


--- function_lib.php    2015-11-12 22:41:39.000000000 +0200
+++ function_lib_up.php  2016-02-03 02:57:15.000000000 +0200
@@ -163,7 +163,20 @@
 // ----------Get MAC ADDRESS of ONU by nterface ID----------
 function MacById($ip, $ro, $iface) {
 $mac = snmp2_get($ip, $ro, "1.3.6.1.4.1.3320.101.10.1.1.3.$iface");
-$mac = trim(end(explode(':', $mac)));
+list($datatype, $out) = explode(':', $mac, 2);
+if ($datatype === "Hex-STRING") { // STRING vs Hex-STRING
+  $mac = trim($out);
+} elseif ($datatype === "STRING") {
+  $out = trim($out, " \"");
+  $hexStr = '';
+  for ($i = 0; $i < strlen($out); $i++) {
+    $hexStr .= dechex(ord($out[$i]));
+    $hexStr .= ' ';
+  }
+  $mac = trim($hexStr);
+} else {  // other cases
+  $mac = "XX XX XX XX XX XX";
+}
 $mac = str_replace (" ", ":", $mac);
 return $mac;
 }
По поводу кода: "Пожалуйста. не стреляйте в пианиста. Он старается, как может".

 

For the snmp_set_oid_output_format()
SNMP_OID_OUTPUT_SUFFIX (integer)
As of 5.4.0
SNMP_OID_OUTPUT_MODULE (integer)
As of 5.4.0
SNMP_OID_OUTPUT_FULL (integer)
As of 5.2.0
SNMP_OID_OUTPUT_NUMERIC (integer)
As of 5.2.0
SNMP_OID_OUTPUT_UCD (integer)
As of 5.4.0
SNMP_OID_OUTPUT_NONE (integer)
As of 5.4.0

почитайте  как можно влиять на вывод php snmp

Share this post


Link to post
Share on other sites

возникают ошибки

Notice: Undefined index: search in /www/pon/olt.php on line 5

 

посмотрел в исходниках: $search = $_GET["search"];

Луче сделать вот так:

if ( isset($_GET["search"] ) )  //проверить существует или нет
{
   $search = $_GET["search"];
}
else{
   $search = "";
}

Так будет возникать гораздо меньше ошибок.

Share this post


Link to post
Share on other sites

Всем привет. 

Кто сможет подсказать в чем проблема:

 Ошибка "Could not enter data: Duplicate entry '2886861068' for key 'ip' ". Возникает в файле "addolt_sql.php". Копаюсь в исхдниках и выяснил что это в строчках



$retval = mysql_query( $sql, $conn );
if(! $retval )
{
die('Could not enter data: ' . mysql_error());
}

upd. С этим я разобрался (хотя сам не понял как :)) Теперь я вижу свою ОЛТ и все ОНУ, но вот только поле "Бюджет" (как я понял уровень сигнала на тек момент), так вот он отличается от тех которые я вывожу напрямую через ОЛТ. 

Что это может быть?

 

uupd. И с этим разобрался :)

У меня остался только 1 вопрос: А никто не пытался выводить история состояния ОНУ-шек в график? Я думаю было бы очень наглядно и удобно.

Edited by jack_frost

Share this post


Link to post
Share on other sites

Добрый день!

Начал пользоваться данным "зверьком", удобно, спасибо.

Заметил такую штуку, в сети есть ОНУ - БДКОМ 4 портовые, так вот, на ОЛТ они в онлайне, а ПОН КОНТРОЛ их вообще не видит (пустое место).
Подскажите в чем проблема.

Спасибо!

Share this post


Link to post
Share on other sites

Можно скрины? В сети стоят и металлические, и пластиковые 4хпортовые - всё ок.

Share this post


Link to post
Share on other sites

Здравствуйте!

Скачал вашу программу. Установил. На текущий момент вижу следующее - post-11741-0-69769600-1460819750_thumb.jpg

В php я плохо разбираюсь... Прошу вас подсказать как и в каком скрипте указать адрес OLT. Ведь её надо как-то опрашивать?
В файлике wars.php($telnet_user, $telnet_pass) указал логин и пароль для OLT. А вот параметр $enable_pass не совсем понял. Тут надо указать команду которая следует после команду enabl? В таком виде "enable "команда"" или просто "команда" ?

 

Share this post


Link to post
Share on other sites

 

Здравствуйте!

Скачал вашу программу. Установил. На текущий момент вижу следующее - attachicon.gifweb-pon.JPG

В php я плохо разбираюсь... Прошу вас подсказать как и в каком скрипте указать адрес OLT. Ведь её надо как-то опрашивать?
В файлике wars.php($telnet_user, $telnet_pass) указал логин и пароль для OLT. А вот параметр $enable_pass не совсем понял. Тут надо указать команду которая следует после команду enabl? В таком виде "enable "команда"" или просто "команда" ?

 

 

 

enable_pass вы ставите только в том случае, если у вас для на вход в режим enable тоже пароль стоит.

Вы базу данных mysql создали? Права ей дали?

 

 

P.S. в личку покажите содержимое vars.php уже с внесёнными вами переменными

Share this post


Link to post
Share on other sites

 

 

Здравствуйте!

Скачал вашу программу. Установил. На текущий момент вижу следующее - attachicon.gifweb-pon.JPG

В php я плохо разбираюсь... Прошу вас подсказать как и в каком скрипте указать адрес OLT. Ведь её надо как-то опрашивать?
В файлике wars.php($telnet_user, $telnet_pass) указал логин и пароль для OLT. А вот параметр $enable_pass не совсем понял. Тут надо указать команду которая следует после команду enabl? В таком виде "enable "команда"" или просто "команда" ?

 

 

 

enable_pass вы ставите только в том случае, если у вас для на вход в режим enable тоже пароль стоит.

Вы базу данных mysql создали? Права ей дали?

 

 

P.S. в личку покажите содержимое vars.php уже с внесёнными вами переменными

 

базу создавал как описано в файлие install.txt.

Выслал Вам в личку.

Edited by vlad5503

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By CR7
      Абонентский терминал XPON- 14.6уе 
      Абонентский терминал GEPON ONU  1GE 13уе
    • By CR7
      Модуль оптический  GEPON OLT SFP, 1,25G, С+ 28уе
      Модуль оптический SFP, OLT, GPON, 1GE,1490/1310nm C++- 38уе
      Модуль оптический GPON OLT SFP, 1,25G/2,5G, C+ 28уе
      Модуль оптический  SFP+ 10G-1SM-1270nm-40LC- 60уе
      Модуль оптический  SFP+ 10G-1SM-130nm-40LC-60уе
      Модуль оптический SFP-1SM-1550nm-80SC- 20уе
      Модуль оптический SFP-1SM-1490nm-80SC-20уе
      Модуль оптический SFP-1SM-1310nm-3SC-7уе
      Модуль оптический SFP-1SM-1550nm-3SC-7уе
       
    • By Stroj
      Доброго дня всім.
       
      Чи замислювався хоч хтось, а мо й пробував вимірювати (стрельнути рефлюком) ПОН на працюючий лінії? Від абонента в сторону "олти" ?
      Я знаю що є звичайна практика вимірювати ПОН в такому випадку достатньо коштовними рефлектометрами в яких є "фільтр" та вимірювач на частоті 1625 nm.
       
      Хоча якщо розмірковувати "здраво", при (зазвичай) відсутності обладнання CATV на 1550nm. .... 
      То що нам "мішає" взяти DWDM сплітер на 1550nm.? Відсікти ним 1310nm. та 1490nm. ....
      Та й поміряти звичайним рефом на частоті 1550nm., звісно якщо вистачить динамічного діапазону ?
       
      Тут правда виникає пара запитань:
      1) як поведе себе "голова", чи потрібно й на ній ставити DWDM ? (не в плані похибок та кротких збоїв, а що-би не "спалити" SFP (точніше приймач на ній), бо-ж - бо реф повинен мати динамічний діапазон від 32 дБ й вище)
      2) А що буде якщо "вліпити" 2 шт. DWDM 1550 й 1310 - то може вдасться поміряти на обох частотах ? Чи на 1310 "помішають" вимірам сигнали від інших ОНУ ?  
       
      То мо, хто, щось підкаже ? А може й досвідом поділиться?
    • By Туйон
      Такой вопрос.
      Имеется фирма, в которой нужно моденизировать, а по сути - построить заново, локальную сеть.
      Расположение - длина около 3-4 км. Около 10 контор (в виде зданий, пристроек, сооружений).
      В каждом из этих зданий - своя локальная сеть (разные подсети, кое где одинаковые).
      Так же почти везде (в большей половине) - видеонаблюдение. Сейчас какое, хз, старое. Будет новое.
      Задача - обеспечить всех связью, путем выдачи каждому зданию минимум двух влан (наблюдение, сеть).
      Т.е. на 10 зданий - 20 влан. 
      Все влан должны быть тегами переданы в конце концом одним волокном в их типа серверную. Знаю, что там свитч и пара серваков.
      Сначала конечно же подумал про SFP, свитчи и т д. Однако, топология такова, что нормальную звезду не построить.
      Получается, что все идут практически друг за другом, может есть одно ответвление.
      Брать минимум 8 волоконный кабель? А вдруг потом не хватит?
       
      С PON опыта особого не имею, так, кое что знаю понимаю. Но лично не строил.
      Я так понимаю, что купив один раз OLT и сэкономя на кабеле (1 волокно вместо 8-16), я решу задачу?
      Появляются вопросы.
      1. Есть ли какие OLT с одним портом? Брать на 4 не рационально. Больше 64 ONU там точно не будет.
      2. Есть ли ONU, которые нормально дружат с влан (ну это я понял не проблема) и с обьемами трафика (в основном отдача - видео, но и локалки). Наслышан, что ONU капризничают после какого-то количества МАС на медном порту.
      3. Какой есть нормальный кабель а-ля FTTH, на стальном тросу? Пролёты не большие в основном, но их много. 1кн хватит. Диэлектричность им не важна, а мне не хочется связываться с натяжителями.
      Требование в основном к тому, чтобы работало надежно, особенно видео. Так же нужно быть готовым, что в какой то момент новый админ вдруг пожелает подкинуть на ONU ещё какой-то зоопарк машин, принтеров, всякой херни. 
    • By Saymon609
      Продам ONU BDCOM P1501DT в наявності 3 штуки. Ціна 1 -300грн.
×