Перейти до

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


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

 

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

 

 

 

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

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

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 користувачів

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

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

    • Від Inna13
      Наша компанія має стаж роботи понад 15 років. У нас є дві форми оплати з ПДВ та ФОП, гарантія на товар. Найкращі ціни. В наявності і під замовлення. Picotel, Ubiquiti, BDCOM, C-DATA, Picotel, RCI та інші
    • Від Костопашка
      Куплю этажные боксы (аналогичные Депс и Ромсат не предлагать) 

    • Від Maks1m
      Для будівництва мережі в Києві та області потрібні бригади кабельщиків та зварювальників. 
      За додатковою інформацією прохання звертатися в особисті. 
    • Від Inna13
      Продаж великого асортименту телекомунікаційного обладнання. Компанія працює більше 15 років. Опт і роздріб. Ціни з ПДВ і без. Дистрибьютори ТМ "Ютекс". Оптичне обладнання PON (GPON, GEPON, XPON), кабельна продукція, комутатори, маршрутизатори, інструменти для пон мереж, шафи і стійки, власне виробництво PON боксів.
    • Від andr1y
      Запрошуємо на постійну роботу монтажників кабельних мереж (м.Львів)
       
      Вимоги:
      відповідальне ставлення до роботи, якісне і оперативне виконання поставлених завдань, дисциплінованість; ініціативність, та швидкість у навчанні; охайність та орієнтованість на результат; перевагою буде наявність власного авто Умови роботи:
      повна зайнятість стабільна, своєчасна заробітна плата додаткові бонуси/премії за виконану роботу оплата амортизації та палива при використанні власного автомобіля в робочих цілях ми пропонує стабільну роботу та професійний розвиток.  
      Детальніша інформація по тел.: 067-433-73-19 Ярослав

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