Перейти до

pashaumka

Сitizens
  • Всього повідомлень

    428
  • Приєднався

  • Останній візит

  • Дней в лидерах

    2

Сообщения додав pashaumka

  1. 12 часов назад, vop сказал:

    А у ipv6 есть замечательное крипто-расширение (которое мало где реализовано) - подпись сертификатами пакетов. Вот та фигня была бы весьма удобна для контроля доступа.

     

    а можно поподробней ? )

  2. <?php 
    
    namespace devices\switches\vendors\BDCOM\M_P3608B;
    
    class Fdb extends \devices\switches\vendors\BDCOM\Fdb  {
    
            function __construct() {
                    //echo "hello from BDCOM|P3608B|Fdb<br>\n";
                    // Subclasses initialization
            }
             
             
            public static function get_epon_fdb_table($__ifIndex) {
                if( false === ( $fdb_req = self::snmpWrite(".1.3.6.1.4.1.3320.101.9.2.1.0","i",$__ifIndex) ) ) return false;
                // опрашиваем "ветку дерева"
                // FDB at onu
                // оочень тяжелый запрос, ожидаем до 180 секунд
                self::setTimeout(5);
                self::setRetries(1);
                if( false === ( $raw_onu_fdb_reply = self::snmpQueryAll( ".1.3.6.1.4.1.3320.101.9.2.3.1","",-2) ) ) {
                    echo "bdcom\fdb::get_epon_fdb_table() :: false<br>\n";
                    return false; 
                }
                $onu_fdb_entry=array();
                $cache = array();
                $strings = \common\strings::getInstance();
                foreach($raw_onu_fdb_reply as $key => $value ) {
                    $index = explode('.', $key);
                    $func_id=$index[0];
                    $rec_index=$index[1];
                    switch($func_id) {   
                        case "1": continue; break;
                        case "2": $cache[$rec_index] = $value; break;
                        case "3": 
                            $_value = $strings->is_mac_addr(substr(bin2hex($value),0,12));
                            $onu_fdb_entry[$cache[$rec_index]][$_value]="YES";   // оставшемуся парсеру отдать [vlan][m:a:c:a:d:r]="что нибуть" 
                        break;
                        default: break;
                    }
                }
                return ( self::parse_fdb_array($__ifIndex, $onu_fdb_reply) ); // вернет кол-во маков, найденных на интерфейсе головы или онушки
            }
    }

     

    • Like 1
  3. когда вы начинаете писать "модулями", вы поймете.))))  

    готовьтесь, что вам необходимо будет снимать данные с устройства, преобразовывать в свой промежуточный массив, затем выводить эти данные

     

    Эти....

    
    3310B
    root@billing:/home/umka# snmpwalk -v2c -cpublic -Cc -On 10.ч.ч.ч .1.3.6.1.4.1.3320.152.1.1.3.36
    .1.3.6.1.4.1.3320.152.1.1.3.36.375.128.20.168.124.79.88 = Hex-STRING: 80 14 A8 7C 4F 58 
    .1.3.6.1.4.1.3320.152.1.1.3.36.300.124.139.202.133.248.81 = Hex-STRING: 7C 8B CA 85 F8 51 
    
    3608
    root@billing:/home/umka# snmpwalk -v2c -cpublic -Cc -On 10.с.с.с .1.3.6.1.4.1.3320.152.1.1.3.36
    .1.3.6.1.4.1.3320.152.1.1.3.36.301.164.43.176.250.225.71 = Hex-STRING: A4 2B B0 FA E1 47 
    root@billing:/home/umka# 

     

    нате!

    <?php
    namespace devices\switches\vendors\BDCOM;
    
    // .3320.152.1.1.1.ifindex   .vlan.m.a.c.a.d.r = ifIndex        ifFdbReadByPortIndex 
    // .3320.152.1.1.2.ifIndex   .vlan.m.a.c.a.d.r = vlan           ifFdbReadByPortVlanID
    // .3320.152.1.1.3.ifIndex   .vlan.m.a.c.a.d.r = mac            ifFdbReadByPortMacAddress
    
    class Fdb extends \devices\switches\Fdb  {
    
            function __construct() {
                    //echo "BDCOM Fdb\n";
                    // Subclasses initialization
            }
    
            protected static function parse_fdb_array($ifIndex,$onu_fdb_reply) {
                    $mac_count = 0;
                    if( count($onu_fdb_reply) == 0 ) return false;
                    self::$db_mem_ports_states -> clear_fdb_iface($ifIndex);
                    foreach ($onu_fdb_reply as $key => $MacAddress_val){
                            $index = explode('.', $key);
                            $vlan_id=$index[0];
                            $mac=sprintf("%02x:%02x:%02x:%02x:%02x:%02x", $index[1],$index[2],$index[3],$index[4],$index[5],$index[6]);
                            self::$db_mem_ports_states->insert_fdb_entry( $ifIndex, $mac, $vlan_id);
                            $mac_count++;
                    }
                    return ($mac_count);
            }
    
            public static function get_epon_fdb_table($__ifIndex) {
                    // опрашиваем "ветку дерева"
                    // FDB at onu
                    // оочень тяжелый запрос!!!!
                    self::setTimeout(5);
                    self::setRetries(1);
                    if( false === ( $onu_fdb_reply = self::snmpQueryAll( ".1.3.6.1.4.1.3320.152.1.1.3.".$__ifIndex, "", -7 ) ) ) {
                        echo "bdcom\fdb::get_epon_fdb_table() :: false<br>\n";
                        return false; 
                    }
                    return ( self::parse_fdb_array($__ifIndex, $onu_fdb_reply) ); // вернет кол-во маков, найденных на интерфейсе головы 
            }
    ...
    }


    Кстати...

    <?php
    
    namespace devices\switches\vendors\BDCOM\M_P3600;
    
    class Fdb extends \devices\switches\vendors\BDCOM\Fdb  {
    
            function __construct() {
                    //echo "hello from BDCOM|P3608|Fdb<br>\n";
                    // Subclasses initialization
            }
    } // class
    
    
    <?php
    
    namespace devices\switches\vendors\BDCOM\M_P3310B;
    
    class Fdb extends \devices\switches\vendors\BDCOM\Fdb  {
    
            function __construct() {
                    //echo ", Fdb\n";
                    // Subclasses initialization
            }
    
    } // class
    
    
    
    
    

    пустышки......

     

     

  4. 11 часов назад, VitalyMoiseev сказал:

    будет список ОНУ, не зарегистрированных ни на одном ОЛТ - в него попадают ОНУ, которых нет на ОЛТ. Точнее - это уже есть

      Показать содержимое

    image.thumb.png.ebaf0754ef7f02a68dc89460aea10ca1.png

    А уже из этого списка можно уже полностью удалить ОНУ и историю ее уровней

    будет "модульная" архитектура, с разными модулями опроса (даже для БДКОМа уже есть несколько вариантов опроса по снмп/телнет), тогда будет намного проще добавить другое оборудование.

    namespace как раз это и дает.

  5. 21 час назад, VitalyMoiseev сказал:

    Начал работу на Pon Monitor v.2

    Будет существующий функционал, но с измененным кодом, нормальной поддержкой GPON / EPON, больше 9 SFP, кучей других исправленніх мелочей + оповещения в телегу + запросы из телеги (например - в запрос на мак онушки - поиск ее на ОЛТ и выдача ее текущей инфо, полезно когда только подключили ОНУ, не надо ждать и искать ее). 

    Может еще какие идеи будут?

     

    Ловить трапы... парсить и оповещать )  + писать все неймспейсами\классами

     

     

  6. День добрый .......  Кто встречался с таким?

     

    Абонент жаловался на постоянные глюки с Мегого ( но это вторая песня )

    а первая о "глюке или чем-то новом"

    в общем - абонент позвонил - начал ковыряться. Заменил аномальную активность прутера по 23 порту.. Ладно. прикрутил на фаерволах на брасах все служебные порты микроба.

    Днем поехал к абону. Сбросил роутер. прчем он сбрасывался как-то ооочень туго.

    Забил настройки и залочил все сервисы.. Вечером паника у абона. Залез удаленкой на микротик и прозрел.

     

    Ситуация - Микротик запомнил адрес, выдававшийся ему 2 подключения назад!!!!! и начал устраивать нехилый ДДОС с уже высвобожденного адреса, натируя его текущей сессией!!!!!!

    кто-то с этим сталкивался..

    Микроб говорит, что прошивка "up to date"

     

    кто-то с таким сталкивался?????

     

     

    Screenshot_16.thumb.png.30852152c4222940ce14dab3a0c4598f.png

     

     

     

    Screenshot_13.thumb.png.55fa6c5aed4651e5a7f8fe009b14eff2.png1263200644_screen_capture2020-03-26_7-24-21_pm.thumb.png.2c7286a4a2b10b4741c7a5f9e288f2d5.png

     

     

     

     

     

     

     

     

     

  7. 1257475326_screen_capture2020-03-22_2-37-2_pm.thumb.png.b07b187b4abf02418ba5d99bfa1d135e.pngСтоит - юзаю. Проблем пока нет.

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

    проблем с железкой нет. Поставил - забыл. GCOM GL5610-08P

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