Перейти до

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


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

 

Спасибо за большущую работу! В обозримом будущем планирую перевести работу с ексеков на пхп_снмп, что было бы логично, а не извращенно как сейчас.

 

 

 

На php snmp было бы конечно более универсально. Будем следить за вашими апдейтами.

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

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Предыстория: всё началось с простого желания видеть сигналы на ОНУшках через веб-интерфейс (с телефона работая на линии такая инфа необходима), потом задавались вопросом "А какие сигналы были до того,

get_fdb_by_telnet.php 24 строчка   "fwrite($con, "show mac a int $nameint \r\n");" рекомендую поправить на "fwrite($con, "show mac address-table int $nameint \r\n");" в  Build 58197 поя

Здравствуйте, сделал себе дополнение, которым решил поделиться. Если ONU имеет ТВ-порт, он отображается на карточке вместе со статусом (Вкл. / Выкл.) Screenshots: TV off    TV is ON  

Posted Images

Спасибо за прогу.

Поставили на дебиан, все взлетело. Из минусов - некорректно мониторятся 3616. Может есть какие нить рекомендации/подсказки?

 

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

 

 

П.С. Для тестирования на 3616 можем организовать удаленный доступ на железо:)

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

жаль что на фрибсд не подходит....

а че там пхп не такой или snmpwalk который в екзек вызывается по другому работает ???

то что возможно код немного надо подпилить, то это может быть

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

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

На CentOS не встал сходу, на что смотреть нужно?

Точнее по ONU инфу не получает даже после опроса в логах

 

PHP Notice:  Undefined index: sort in /var/www/html/pon/onu_sql.php on line 12, refer
PHP Notice:  Undefined index: sfp in /var/www/html/pon/onu_sql.php on line 18, refere
PHP Notice:  Undefined variable: sort_sfp in /var/www/html/pon/onu_sql.php on line 20
Відредаговано Unikar
Ссылка на сообщение
Поделиться на других сайтах
Опубліковано: (відредаговано)

Итак, немного переделал схему опроса:

 

Замените файлик get_snmp.php следующим содержимым:





<?php
include 'vars.php';
$extra = 'index.php';
if ($table == NULL) {
$table = $_GET["olt"];
} else {
}



$ip = str_replace ("_", ".", $table);

include 'get_ro.php';
include 'get_rw.php';
include_once 'function_lib.php';


$sql_ip = ip2longfixed($ip);

$conn = mysql_connect($mysql_host, $mysql_user, $mysql_pass);
mysql_query("SET NAMES utf8");
mysql_select_db($mysql_db);
UpdateOltLastAct($conn, $sql_ip, $date);

$Array_descr = snmprealwalk($ip, $ro, "1.3.6.1.2.1.2.2.1.2");


 if(count($Array_descr)>0)
 {
 foreach($Array_descr as $key => $type)
 {
 $key = str_replace("iso.3.6.1.2.1.2.2.1.2.", "", $key);
 $type = trim(str_replace("STRING: ", "", $type));

 $olt = strtok($type, ":");

 if(preg_match("#:#", $type))
 {
$rx = RxById($ip, $ro, $key);
$nameint = NameIntAddZero(NameById($ip, $ro, $key));
$mac = MacById($ip, $ro, $key);
UpdateOnu($conn, $sql_ip, $date, $nameint, $mac, $rx);


}
}

}




header("Location: http://$host$uri/$extra?page=olt&olt=$table");
?>

2) Создайте в той же папке файлик function_lib.php 





<?php


// ---------- Correct function ip2long for work on 32bit systems

function ip2longfixed($ip) {
$sql_ip = sprintf('%u', ip2long($ip));
return $sql_ip;
}

// END ----------





// ----------Get RX level by Interface ID----------

function RxById($ip, $ro, $iface) {
// Get RX level with "INTEGER: "
  $rx = snmp2_get($ip, $ro, ".1.3.6.1.4.1.3320.101.10.5.1.5.$iface");

// Get CLEAN RX level
$rx = end(explode(' ', $rx));
if ($rx == 0) {
$rx = "Offline";
} else {
$rx=($rx/10);

$rx=sprintf("%.1f", $rx);
}
return $rx;
}

// END ----------Get RX level by Interface ID----------






// ----------Get PON interface name by Interface ID----------


function NameById($ip, $ro, $iface) {
$iface_name = snmp2_get($ip, $ro, "1.3.6.1.2.1.2.2.1.2.$iface");

//Get CLEAN name
$iface_name = end(explode(' ', $iface_name));
$iface_name = str_replace("\"", "", $iface_name);


return $iface_name;
}

// END ----------Get PON interface name by Interface ID----------

// ----------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)));
$mac = str_replace (" ", ":", $mac);
return $mac;
}

// END ----------

// ---------- Add zero to interface name for correct sorting ----------

function NameIntAddZero($nameint) {
$end = end(explode(':', $nameint));
$count = strlen($end);
if ($count == 1){
$nameint = str_replace (":1", ":01", $nameint);
$nameint = str_replace (":2", ":02", $nameint);
$nameint = str_replace (":3", ":03", $nameint);
$nameint = str_replace (":4", ":04", $nameint);
$nameint = str_replace (":5", ":05", $nameint);
$nameint = str_replace (":6", ":06", $nameint);
$nameint = str_replace (":7", ":07", $nameint);
$nameint = str_replace (":8", ":08", $nameint);
$nameint = str_replace (":9", ":09", $nameint);

}
return $nameint;
}

// END ----------




// ---------- MYSQL update last activity of OLT ----------
function UpdateOltLastAct($conn, $sql_ip, $date) {
$sql = "UPDATE olts SET last_act='$date' WHERE ip='$sql_ip'";
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
  die('Could not enter data: ' . mysql_error());
}
}

// END ----------





// ---------- MYSQL Update/Add ONU ----------
function UpdateOnu($conn, $sql_ip, $date, $nameint, $mac, $rx) {
if ($rx == "Offline") {
$rx = "0";

$sql = "INSERT INTO onus (olt,name,mac,pwr) VALUES ('$sql_ip','$nameint','$mac','$rx')";
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
}




} else {


$sql = "INSERT INTO onus (olt,name,mac,pwr) VALUES ('$sql_ip','$nameint','$mac','$rx') ON DUPLICATE KEY UPDATE name=VALUES(name), olt=VALUES(olt),pwr=VALUES(pwr)";
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
  die('Could not enter data: ' . mysql_error());
}

$sql = "UPDATE onus SET olt='$sql_ip',last_pwr='$rx',last_activity='$date' WHERE mac='$mac'";
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
  die('Could not enter data: ' . mysql_error());
}

}

$sql = "INSERT INTO onus_s (olt,mac,pwr,datetime) VALUES ('$sql_ip','$mac','$rx','$date')";
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
  die('Could not enter data: ' . mysql_error());
}










}

// END ----------




?>

По идее должно взлететь на всех системах.

 

P.S. спасибо тем кто отозвался и в особенности тем кто поделился своими наработками)

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

Итак, немного переделал схему опроса:

 

Замените файлик get_snmp.php следующим содержимым:

 

По идее должно взлететь на всех системах.

 

P.S. спасибо тем кто отозвался и в особенности тем кто поделился своими наработками)

может добавьте или обновите версию в шапке ?

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

 

Итак, немного переделал схему опроса:

 

Замените файлик get_snmp.php следующим содержимым:

 

По идее должно взлететь на всех системах.

 

P.S. спасибо тем кто отозвался и в особенности тем кто поделился своими наработками)

может добавьте или обновите версию в шапке ?
Обновлю как будут отзывы о том, что успешно запустилось у тех, кого не работало до этого. А так я выложил на тест)
Ссылка на сообщение
Поделиться на других сайтах

 

 

Не извращайтесь. Напишите на office@userside.ua - дадим API как получать данные. Чтобы не ходить в базу.

По Netup по прежнему в базу стучим или прикрутились таки к урфе?

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

отпишитесь, пожалуйста, у кого на каких системах заработало после вчерпшних обновьений и ушли ли проблемы при опросе 3616

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

 PHP Strict Standards:  Only variables should be passed by reference in /usr/local/www/apache22/data/pon/function_lib.php on line 71

PHP Warning:  snmp2_get(): Invalid object identifier: 1.3.6.1.4.1.3320.101.10.1.1.3.IF-MIB::ifDescr.117 in /usr/local/www/apache22/data/pon/function_lib.php on line 60

 

И в таком духе.

 

Соотвественно за собой тянет

 

PHP Notice:  Undefined index: search in /usr/local/www/apache22/data/pon/olt.php on line 5,

Ну и дальше пустые данный в get_sfp, onu_sql 

Итд.

 

Если надо могу скинуть лог ошибок в личку.

 

ЗЫ FreeBSD 9.3-RELEASE-p7

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

Завелось. Все работает.

Linux feldsher-jobstation 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:12 UTC 2014 i686 athlon i686 GNU/Linux

 

На 64 разрядной системе почему-то не пошло.

 

Автору большое спасибо.

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

 

 

было бы очень круто, что бы отображалось более 4-х пон сфп.

Где именно? Если можно - сделайте скрин.

 

 

В планах в будущей версии возможность указать при редактировании ОЛТа количество ПОН сфп

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

 

 

В планах в будущей версии возможность указать при редактировании ОЛТа количество ПОН сфп

 

отлично, готов буду потестировать на 5+ сфп

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

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

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

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

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

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

Вхід

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

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

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

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

    • Від grapefruit
      Доброго вечора, спільното!
      Можливо хтось стикався з завданням,коли потрібно на OLT BDCOM GP3600 по oid визначити час розреєстрування ону. В неті нічого знайти не вдалося, через MIB браузер тоже ніц.
      Якщо підкажете буде дуже вдячний, або хоч підкажіть де шукати.
      Всім гарного вечора)
    • Від alexeya
      Продам оборудование в связи с прекращением деятельности телеком-оператора в Донецкой области.
       
      Eltex MES2324FB в отличном состоянии (8 штук) - 13.000 грн
      Eltex MES5324 (24 SFP+, 4 QSFP) - 62.000 грн
      Extreme Networks X620-16x (16 SFP+) - 42.000 грн
       
      OLT ZTE C320 (GTGH (K00) * 2, PRAM, SMXA (A31) - 32 GPON ports, C++ модули, 10G плата управления. Состояние близкое к новому (был в эксплуатации пол года) - 110.000грн, новый 125.000 грн.
       
      Juniper MX80 (MX5-T upgraded to MX80, 16 subsribers, все лицензии есть), есть 2 штуки. - 1700$
       
      Кабель бухтами (в Павлограде, могу привезти в Днепр или отправка деливери/нп)
      ОКТ-Д(1.0)-2Е1-0,36Ф3,5/0,22Н18-2 — 3000м - 3.5 грн/метр 
      ОКЗ(б2,7)Т-008(7,8 мм) — бухти 3840 и 4000 м - 13 грн/метр
      ОЦБгП-8А1(1х8) 2,7 кН — 2 бухти по 3830 м - 13 грн/метр
       
       
       























    • Від Виктор Николаевич
      Приветствую.
       
      Нужно подключить торговую точку -
       
      Новомихайловка, Каменский район, технология pon, 50мбит.
       
      Предложения в л/с.
    • Від monark
      I sell files to unlock OLT ZTE and OLT Huawei.
      Розблокуйте свої OLT самостійно, щоб прийняти будь-який ONT.
       
      OLT ZTE: C300, C320, C350
       
      OLT HUAWEI: MA5800 X2, X7, X15 and X17 all boards / всі дошки
      OLT HUAWEI: MA56XX all boards / всі дошки
       
      Unlock your OLTs yourself to accept any ONT.
      Розблокуйте свої OLT самостійно, щоб прийняти будь-який ONT.
       
       
      PVT
    • Від device
      До 2000 абонентів. Все побудовано на pon. Кому цікаво звертайтесь в особисті повідомлення

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