Перейти до

Мониторинг OLT по snmp


onihack

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

Всё есть в наличии. Напомните на УКОСе - расскажу детальнее.

 

Если вкратце - то курим .1.3.6.1.4.1.3902.1015 ветку для EPON & .1.3.6.1.4.1.3902.1012 для GPON

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

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

BDCOM темплейт для cacti. В 36xx мониторит сигнал только со стороны OLT. gepon-signal-template.tar.gz

snmpwalk -v2c -Cc -c wcvbhytredcvbvgu 172.16.244.22 .1.3.6.1.4.1.3320.101.11.1.1.7 mac onu (в bin ) и  уровень в  /100 snmpwalk -v2c -Cc -c wcvbhytredcvbvgu 172.16.244.22 .1.3.6.1.4.1.3320.101.10.1.

Нашел, возможно кому то пригодится P3616-2TE anton@work-pc:~$ snmpget -v1 -c olt_snmp_community  olt_ip 1.3.6.1.4.1.3320.9.181.1.1.7.1 iso.3.6.1.4.1.3320.9.181.1.1.7.1 = INTEGER: 44 IF-BDCOM4#sh

Posted Images

Всё есть в наличии. Напомните на УКОСе - расскажу детальнее.

 

Если вкратце - то курим .1.3.6.1.4.1.3902.1015 ветку для EPON & .1.3.6.1.4.1.3902.1012 для GPON

# snmpwalk -c mycommunity -v2c 10.54.54.54 .1.3.6.1.4.1.3902.1012
SNMPv2-SMI::enterprises.3902.1012 = No more variables left in this MIB View (It is past the end of the MIB tree)

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

Ну Вы не сказали, что у Вас за модель.

Вот вывод с C320 например

 

.1.3.6.1.4.1.3902.1012.3.11.3.1.1.268501248 = INTEGER: 1
.1.3.6.1.4.1.3902.1012.3.11.3.1.1.268501504 = INTEGER: 1
.1.3.6.1.4.1.3902.1012.3.11.3.1.1.268501760 = INTEGER: 1
.1.3.6.1.4.1.3902.1012.3.11.3.1.1.268502016 = INTEGER: 2
.1.3.6.1.4.1.3902.1012.3.11.3.1.1.268502272 = INTEGER: 2
.1.3.6.1.4.1.3902.1012.3.11.3.1.1.268502528 = INTEGER: 2
 
А вообще милая мода у ЗТЕ - не отдавать по snmpwalk, а отдавать по snmpget/snmpgetnext
Ссылка на сообщение
Поделиться на других сайтах

Ну Вы не сказали, что у Вас за модель.

Вот вывод с C320 например

 

.1.3.6.1.4.1.3902.1012.3.11.3.1.1.268501248 = INTEGER: 1

.1.3.6.1.4.1.3902.1012.3.11.3.1.1.268501504 = INTEGER: 1

.1.3.6.1.4.1.3902.1012.3.11.3.1.1.268501760 = INTEGER: 1

.1.3.6.1.4.1.3902.1012.3.11.3.1.1.268502016 = INTEGER: 2

.1.3.6.1.4.1.3902.1012.3.11.3.1.1.268502272 = INTEGER: 2

.1.3.6.1.4.1.3902.1012.3.11.3.1.1.268502528 = INTEGER: 2

 

А вообще милая мода у ЗТЕ - не отдавать по snmpwalk, а отдавать по snmpget/snmpgetnext

Как раз С320. Ничего из ранее перечисленного не отдается ни по snmpwalk ни по snmpget ни по snmpgetnext

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

Что насчет 1015 ?

 

.1.3.6.1.4.1.3902.1015.1.1.2.0 = INTEGER: 0
.1.3.6.1.4.1.3902.1015.1.1.3.1.0 = INTEGER: 1
.1.3.6.1.4.1.3902.1015.1.1.3.2.0 = INTEGER: 0
.1.3.6.1.4.1.3902.1015.1.1.3.3.0 = INTEGER: 0
.1.3.6.1.4.1.3902.1015.1.1.3.4.0 = INTEGER: 0
Ссылка на сообщение
Поделиться на других сайтах

Собственно на все оиды ответ такой

 

# snmpget -cpublic -v2c 10.54.54.54 .1.3.6.1.4.1.3902.1015.1.1.2.0

SNMPv2-SMI::enterprises.3902.1015.1.1.2.0 = No Such Object available on this agent at this OID

# snmpwalk -cpublic -v2c 10.54.54.54 .1.3.6.1.4.1.3902.1015.1.1.2.0

SNMPv2-SMI::enterprises.3902.1015.1.1.2.0 = No more variables left in this MIB View (It is past the end of the MIB tree)

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

Собственно на все оиды ответ такой

 

# snmpget -cpublic -v2c 10.54.54.54 .1.3.6.1.4.1.3902.1015.1.1.2.0

SNMPv2-SMI::enterprises.3902.1015.1.1.2.0 = No Such Object available on this agent at this OID

# snmpwalk -cpublic -v2c 10.54.54.54 .1.3.6.1.4.1.3902.1015.1.1.2.0

SNMPv2-SMI::enterprises.3902.1015.1.1.2.0 = No more variables left in this MIB View (It is past the end of the MIB tree)

mib view настроены? ;)

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

 

Собственно на все оиды ответ такой

# snmpget -cpublic -v2c 10.54.54.54 .1.3.6.1.4.1.3902.1015.1.1.2.0

SNMPv2-SMI::enterprises.3902.1015.1.1.2.0 = No Such Object available on this agent at this OID

# snmpwalk -cpublic -v2c 10.54.54.54 .1.3.6.1.4.1.3902.1015.1.1.2.0

SNMPv2-SMI::enterprises.3902.1015.1.1.2.0 = No more variables left in this MIB View (It is past the end of the MIB tree)

 

mib view настроены? ;)
Где это настраивается, и что конкретно крутить?
Ссылка на сообщение
Поделиться на других сайтах
ZTE#show snmp config

snmp-server location ....

snmp-server contact ...

snmp-server packetSize 8192

snmp-server engine-id ...

snmp-server community public view allview rw

snmp-server view allview org included

snmp-server view DefaultView system included

 

 

А что у Вас?

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

ZXAN#show snmp config

snmp-server location No.889 BiBo Rd. PuDong District, ShangHai, China

snmp-server contact +86-021-68895000

snmp-server packetSize 8192

snmp-server engine-id 80000f3e0300cc1afad11325

snmp-server community public view DefaultView ro

snmp-server view allview org included

snmp-server view DefaultView system included

snmp-server enable trap SNMP

snmp-server enable trap VPN

snmp-server enable trap BGP

snmp-server enable trap OSPF

snmp-server enable trap RMON

snmp-server enable trap STALARM

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

ZTE#show snmp config

snmp-server location ....

snmp-server contact ...

snmp-server packetSize 8192

snmp-server engine-id ...

snmp-server community public view allview rw

snmp-server view allview org included

snmp-server view DefaultView system included

 

 

 

А что у Вас?

помогло

ZXAN(config)#snmp-server community pub view allview

ZXAN(config)#snmp-server view allview system included

теперь

# snmpwalk -c pub -v2c 10.54.255.107 .1.3.6.1.4.1.3902.1015.1.1.2

SNMPv2-SMI::enterprises.3902.1015.1.1.2.0 = INTEGER: 0

спасибо за наводку

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

 

 

Собственно на все оиды ответ такой

# snmpget -cpublic -v2c 10.54.54.54 .1.3.6.1.4.1.3902.1015.1.1.2.0

SNMPv2-SMI::enterprises.3902.1015.1.1.2.0 = No Such Object available on this agent at this OID

# snmpwalk -cpublic -v2c 10.54.54.54 .1.3.6.1.4.1.3902.1015.1.1.2.0

SNMPv2-SMI::enterprises.3902.1015.1.1.2.0 = No more variables left in this MIB View (It is past the end of the MIB tree)

mib view настроены? ;)
Где это настраивается, и что конкретно крутить?

 

не было под рукой зте что б конкретнее сказать :(

благо товарищь @@UserSide подсказал

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

 

ZTE#show snmp config

snmp-server location ....

snmp-server contact ...

snmp-server packetSize 8192

snmp-server engine-id ...

snmp-server community public view allview rw

snmp-server view allview org included

snmp-server view DefaultView system included

 

 

 

А что у Вас?

помогло

ZXAN(config)#snmp-server community pub view allview

ZXAN(config)#snmp-server view allview system included

теперь

# snmpwalk -c pub -v2c 10.54.255.107 .1.3.6.1.4.1.3902.1015.1.1.2

SNMPv2-SMI::enterprises.3902.1015.1.1.2.0 = INTEGER: 0

спасибо за наводку

 

 

Наслаждайтесь

 

Там на самом деле ещё куча граблей, к сожалению.

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

Задам вопрос здесь, что не создавать новую. Имеется:
 

BDCOM(tm) P3310B Software, Version 10.1.0B Build 18099
Copyright by Shanghai Baud Data Communication CO. LTD.
Compiled: 2014-5-14 14:48:55 by SYS_18099, Image text-base: 0x80008000
ROM: System Bootstrap, Version 0.3.3, Serial num:00XXXXXXX
System image file is "Switch.bin"
(RISC) processor with 131072K bytes of memory, 8192K bytes of flash
Base ethernet MAC Address: 00:11:01:11:11:11
snmp info:
  product_ID:228   system_ID:1.3.6.1.4.1.3320.1.228.0
OLT-3310B_1 uptime is 18:14:56:51, The current time: 2015-10-22 13:58:33

Вот кусок его конфига:
 

snmp-server community 0 public RO 
snmp-server contact admin@domain.com
snmp-server location server

И практически всегда при попытке снять с него инфу вываливает следующее:
 

snmpwalk -v 2c -c public 10.1.1.1
Timeout: No Response from 10.1.1.1

Не могу понять в чем дело

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

Может поставить прошивку по свежей, вроде бы кто-то писал что SNMP отпадало на древних прошивках.

Только учти, после 21324 назад уже не откатишься... Вот что в чейнджлоге

this firmware has new bootloader, so after update it will impossible to downgrade to previous versions
Відредаговано Ромка
Ссылка на сообщение
Поделиться на других сайтах

Обновление прошивки помогает?

Попробуй.

У меня на всех ОЛТах 21324, проблем с SNMP небыло.

В конфиге:

snmp-server community 0 xxxxxxxxx RO
Ссылка на сообщение
Поделиться на других сайтах

Допомагає... 

Ось піднімись на останню:

https://www.dropbox.com/sh/l0u7nehcqlxfk6m/AAAqpL2OijtZ_87PvQA5DxYYa/OLT/P3310B?dl=0

 

snmp-server community 0 public RW 
snmp-server contact Nobody
snmp-server location HOME
 
так працює...
А якщо для ТРАПІВ то вкажи трастед хост і все)
Ссылка на сообщение
Поделиться на других сайтах
  • 2 months later...

Добрый день!

 

Имеется OLT BDCOM P3310B.

Ноо не могу, ни как найти как аналог команды epon pre-config-template 1tv binded-onu-llid 5, через SNMP

Нашел что за это отвечает ветка .1.3.6.1.4.1.3320.101.22.7, но не могу найти MIB который описывал бы эти значения.

 

Хотел бы автоматизивать управление OLOм по SNMP.

Может кто находил подобное, спасибо!

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

bdEponOnuBatchConfig 1.3.6.1.4.1.3320.101.22
bdEponOnuConfigIndex 1.3.6.1.4.1.3320.101.22.1
bdEponOnuConfigTable 1.3.6.1.4.1.3320.101.22.2
bdEponOnuConfigEntry 1.3.6.1.4.1.3320.101.22.2.1
onuConfigSequenceNo 1.3.6.1.4.1.3320.101.22.2.1.1
onuConfigCommand 1.3.6.1.4.1.3320.101.22.2.1.2
onuConfigurationAdd 1.3.6.1.4.1.3320.101.22.3
onuCfgApplyLLIDs 1.3.6.1.4.1.3320.101.22.4
onuCfgApplyAction 1.3.6.1.4.1.3320.101.22.5
ounCfgApplyResult 1.3.6.1.4.1.3320.101.22.6

 

 

-- *****************************************************************
-- NMS-EPON-ONU-BATCH-CONFIG.MIB: NMS LLID ONU BATCH CONFIG MIB file
-- APRIL 2010
-- *****************************************************************
--

NMS-EPON-ONU-BATCH-CONFIG DEFINITIONS ::= BEGIN

IMPORTS
Counter, IpAddress, Counter
FROM RFC1155-SMI
OBJECT-TYPE
FROM RFC-1212
DisplayString
FROM RFC1213-MIB
nmsEPONGroup
FROM NMS-SMI
PortList
FROM Q-BRIDGE-MIB
TruthValue,RowStatus,PhysAddress,DisplayString,MacAddress
FROM SNMPv2-TC;

nmsEponOnuBatchConfig OBJECT IDENTIFIER ::= { nmsEPONGroup 22 }


nmsEponOnuConfigIndex OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-write
STATUS mandatory
DESCRIPTION
"ONU index, just LLID the same value as llidIfIndex in NMS-EPON-LLID.MIB. While setting, the buffer will be written into the
corresponding ONU config information, you can read nmsEponOnuBatchConfigTable to get this configuration. After setting, the newly
updating configuration of this ONU won't be upated to the buffer. When you set this value to 0, the buffer will be cleared,
and nmsEponOnuConfigTable will be null."

::= { nmsEponOnuBatchConfig 1 }


nmsEponOnuConfigTable OBJECT-TYPE
SYNTAX SEQUENCE OF NMSEponOnuConfigEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"A list of the ONU config table entries. The corresponding onu id will read/write to nmsEponOnuConfigIndex. Get-next and get-bulk operation is only supported"
::= { nmsEponOnuBatchConfig 2 }

nmsEponOnuConfigEntry OBJECT-TYPE
SYNTAX NMSEponOnuConfigEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"A collection of certain ONU configuration. The ONU id can be read or set by nmsEponOnuConfigIndex."
INDEX { onuConfigSequenceNo }
::= { nmsEponOnuConfigTable 1 }

NMSEponOnuConfigEntry ::=
SEQUENCE {
onuConfigSequenceNo
INTEGER,
onuConfigCommand
OCTET STRING
}

onuConfigSequenceNo OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"ONU configuration command sequence number."
::= { nmsEponOnuConfigEntry 1 }

onuConfigCommand OBJECT-TYPE
SYNTAX OCTET STRING
ACCESS read-only
STATUS mandatory
DESCRIPTION
"ONU configuration command value."
::= { nmsEponOnuConfigEntry 2 }



onuConfigurationAdd OBJECT-TYPE
SYNTAX OCTET STRING
ACCESS write-only
STATUS mandatory
DESCRIPTION
"ONU configuration command set value. After this operation, buffer will be added, but the configuration won't work."
::= { nmsEponOnuBatchConfig 3 }

onuCfgApplyLLIDs OBJECT-TYPE
SYNTAX PortList
ACCESS read-write
STATUS mandatory
DESCRIPTION
"ONU LLID list, which defines the ONU to be applied."
::= { nmsEponOnuBatchConfig 4 }

onuCfgApplyAction OBJECT-TYPE
SYNTAX INTEGER{no_action(0),
apply(1)
}
ACCESS write-only
STATUS mandatory
DESCRIPTION
"While set to 1, all the configuration command in buffer will apply to device and the configuration works."
::= { nmsEponOnuBatchConfig 5 }

ounCfgApplyResult OBJECT-TYPE
SYNTAX INTEGER{success(0),
processing(1),
other(2),
reserved(3)
}
ACCESS read-only
STATUS mandatory
DESCRIPTION
"ONU configuraton appling result."
::= { nmsEponOnuBatchConfig 6 }




END

Відредаговано Пэтро
Ссылка на сообщение
Поделиться на других сайтах
  • 3 weeks later...

 

Добрый день!

Может кто уже разобрался?

на P3310B нужно 2 значения стянуть - количество активных онушек на порту и количество всего зарегистрированных.

Спасибо!

<?php

$ip="192.168.10.95";

$communit="public";

$Array_descr = snmprealwalk($ip, $communit, "ifDescr");

echo "BDCOM ". $ip;

 

 

 

if(count($Array_descr)>0)

{

    

foreach($Array_descr as $key => $type)

{

$key = str_replace("IF-MIB::ifDescr.", "", $key);

$type = trim(str_replace("STRING: ", "", $type));

 

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

 

if(preg_match("#:#", $type))

{

$active="";

 

$opt_level = snmpget("$ip", $communit, "enterprises.3320.101.108.1.3.$key");

$opt_level = trim(str_replace("INTEGER: ", "", $opt_level)/10);

 

$opt_level_up = snmpget("$ip", $communit, "enterprises.3320.101.10.5.1.5.$key");

$opt_level_up = trim(str_replace("INTEGER: ", "", $opt_level_up)/10);

 

$mac_onu = snmpget("$ip", $communit, "enterprises.3320.101.10.4.1.1.$key");

$mac_onu = str_replace(" ", ":", strtolower(trim(str_replace("Hex-STRING: ", "", $mac_onu))));

 

 

$active = snmpget("$ip", $communit, "1.3.6.1.4.1.3320.101.10.1.1.26.$key");

$active = str_replace(" ", ":", strtolower(trim(str_replace("INTEGER: ", "", $active))));

 

 

$Array_ports="";

$Array_ports_="";

$Array_ports__="";

$Array_ports = snmprealwalk("$ip", $communit, "enterprises.3320.101.12.1.1.8.$key");

 

 

 

 

//print_r($Array_ports);

 

foreach($Array_ports as $key_ => $state)

{

//$Array_olt="";

 

$port = str_replace("SNMPv2-SMI::enterprises.3320.101.12.1.1.8.$key.", "", $key_);

$Array_state=explode(":", $state);

$state = trim($Array_state[1]);

 

if($state == 1 ){ $state="up"; }

if($state == 2 ){ $state="down"; }

$Array_ports__[]= $port." : ".$state;

}

 

if(count($Array_ports__)>0){

    $Array_olt[$olt][$mac_onu]['ports'] = implode("<br>", $Array_ports__);

}

 

$Array_olt[$olt][$mac_onu]['type'] = $type;

$Array_olt[$olt][$mac_onu]['level_up'] = $opt_level_up;

$Array_olt[$olt][$mac_onu]['active'] = $active;

}

}

 

 

ksort($Array_olt);

 

 

print("<br><br><center><table border='2' cellpadding='3' cellspacing='2'");

 

print("<tr class=head>

 <td ><strong>EPON №</strong></td>

 <td ><strong>Имя ONU</strong></td>

 <td ><strong>Адрес</strong></td>

 <td ><strong>Mac ONU</strong></td>

 <td ><strong>Уровень пр., db</strong></td>

 <td ><strong>Порты</strong></td>

 </tr>");

 

foreach($Array_olt as $key => $type)

{

$olt = $key;

$ports="";

 

foreach($type as $key1 => $type1)

{

 

$mac_onu = $key1;

$level_up = $type1['level_up'];

$type = $type1['type'];

$active = $type1['active'];

$ports = $type1['ports'];

 

$n++;

 

if(($olt!=$old_olt)&&($n!=1))

{

print("<tr class=head><td>Всего: $m</td><td></td><td></td><td></td><td></td><td></td></tr>");

$m=0;

print("<tr height=40><td colspan=5></td></tr>");

}

 

$m++;

 

$Row_device = mysql_fetch_array(mysql_query("SELECT id, address, group_oper FROM devices WHERE mac='$mac_onu'"));

 

if(($active=="1")||($active==3)){ $class="cell"; }else{ $class="marked"; }

 

print("

<tr class=$class>

<td>$olt</td>

<td>$type</td>

<td nowrap>$Row_device[address]</td>

<td><a  title='' href='#' onclick=\"window.open('devices.php?uid=$_REQUEST[uid]&selhid_devices_col_id=$Row_device[id]', 'devices', 'scrollbars, width=1024, height=450'); \">$mac_onu</a></td>

<td>$level_up</td>

<td nowrap align='left'>

");

 

if(($active=="1")||($active==3)){ print("$ports"); }else{}

 

print

("

</td>

</tr>

");

 

$old_olt=$olt;

}

}

 

print("<tr class=head><td>Всего: $m</td><td></td><td></td><td></td><td></td><td></td></tr>");

print("</table>");

}

 

?>

 

 

Не мое. Но работает. Строит таблицу с онушками и уровнями сигналов.

 

І все ж таки для танкістів - є прямий OID для отримання кількості активних ONU для BDCOM 3310B?
Ссылка на сообщение
Поделиться на других сайтах

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

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

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

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

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

Вхід

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

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

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

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

    • Від legenda vols
      Всем привет, заезженная тема но приходиться искать по всем уголкам интернета - А именно OID и как их использовать.
      Начнём. 
      для новичков.
      bash 
      set_olt_oids() {
          # Общие для EPON (BDCOM)
          if [[ "$1" =~ ^(P3310|P3310B|P3310C|P3608|P3608B|P3316|P3600-16E|P3608-2TE|P3616-2TE|IEP3310)$ ]]; then
              OID_GET_MAC="1.3.6.1.4.1.3320.101.10.4.1.1"
              OID_VENDOR_ONU="1.3.6.1.4.1.3320.101.10.1.1.1"
              OID_MODEL_ONU="1.3.6.1.4.1.3320.101.10.1.1.2"
              OID_TEMP_ONU="1.3.6.1.4.1.3320.101.10.5.1.2"
              OID_AUNT_ONU_STATUS="SNMPv2-SMI::enterprises.3320.101.10.1.1.26"
              OID_UPTIME_ONU="1.3.6.1.4.1.3320.101.10.1.1.80"
              OID_DIST="1.3.6.1.4.1.3320.101.10.1.1.27"
              OID_IF_MAC10="1.3.6.1.4.1.3320.101.11.1.1.3"
              OID_IFindexmac10="1.3.6.1.4.1.3320.101.11.1.1.1"
              LASTREG_DATE="1.3.6.1.4.1.3320.101.11.1.1.9"
              LASTDEREG_DATE="1.3.6.1.4.1.3320.101.11.1.1.10"
              LASTDEREG_REASON="1.3.6.1.4.1.3320.101.11.1.1.11" 
              OID_ONU_ETH="1.3.6.1.4.1.3320.101.12.1.1.8"
              OID_PORT_INDEX="1.3.6.1.4.1.3320.101.107.1.1" # oid возвращает все индексы ПОН портов, работает не везде
              OID_GEPORT_COUNT="1.3.6.1.4.1.3320.101.10.1.1.12"
              OID_FEPORT_COUNT="1.3.6.1.4.1.3320.101.10.1.1.14"
              OID_REBOOT_ONU="1.3.6.1.4.1.3320.101.10.1.1.29" # snmpset -v2c -c RW IP OID.onuIndex i 0 reboot
              OID_DEL_ONU="SNMPv2-SMI::enterprises.3320.101.11.1.1.2" #.$portID.$mac10" i 0 #mac decimal onu
          fi
          # Общие для GPON
          if [[ "$1" =~ ^(GP3600-08|GP3600-16B|GP3600-08B)$ ]]; then
              ETH_STATUS="1.3.6.1.2.1.2.2.1.8" # статус порта 1 портовая ону
              ETH_STATUS4="1.3.6.1.4.1.3320.10.4.1.1.4" # статус портов 4х портовая ону
              OID_VENDOR_ONU="1.3.6.1.4.1.3320.10.3.1.1.2"
              OID_ADMIN_STATUS="1.3.6.1.4.1.3320.10.4.1.1.3"
              OID_DOWN_REASON="1.3.6.1.4.1.3320.10.3.1.1.35"
              OID_DIST="1.3.6.1.4.1.3320.10.3.1.1.33"
              OID_MODEL_ONU="1.3.6.1.4.1.3320.10.3.1.1.9"
              OID_VENDOR_ONU="1.3.6.1.4.1.3320.10.3.1.1.2"
              OID_REBOOT_ONU="1.3.6.1.4.1.3320.10.3.2.1.4" #snmpset -v2c -c RW IP OID.onuIndex i 1 reboot
              
          fi
          # Уникальные параметры для моделей
          case "$1" in
              # EPON модели
              P3310 | P3310B)
                  OID_RX_ONU="1.3.6.1.4.1.3320.101.10.5.1.6"
                  OID_RX_OLT="1.3.6.1.4.1.3320.9.183.1.1.5"
                  OID_PORT_LIST="1.3.6.1.4.1.3320.101.107.1.1"
                  ;;
              IEP3310)
                  OID_RX_ONU="1.3.6.1.4.1.3320.101.10.5.1.5"
                  OID_RX_OLT="1.3.6.1.4.1.3320.9.183.1.1.5"
                  OID_TX_ONU="1.3.6.1.4.1.3320.101.10.5.1.6"
                  ;;
              P3608 | P3608B | P3310C | P3316 | P3600-16E | P3608-2TE | P3616-2TE)
                  OID_RX_ONU="1.3.6.1.4.1.3320.101.10.5.1.5"
                  OID_RX_OLT="1.3.6.1.4.1.3320.101.108.1.3"
                  OID_TX_ONU="1.3.6.1.4.1.3320.101.10.5.1.6"
                  OID_PORT_LIST="1.3.6.1.4.1.3320.101.107.1.1"
                  ;;
              # GPON модели
              GP3600-08 | GP3600-16B | GP3600-08B | P3600-08E)
                  OID_RX_ONU="1.3.6.1.4.1.3320.10.3.4.1.2"
                  OID_RX_OLT="1.3.6.1.4.1.3320.10.2.3.1.3"
                  OID_TX_ONU="1.3.6.1.4.1.3320.10.3.4.1.3"
                  OID_GET_MAC="1.3.6.1.4.1.3320.10.3.1.1.4"
                  ;;
              *)
                  echo -e "\e[1;91mНеизвестный режим OLT: $1\e[0m"
                  return 1
                  ;;
          esac
          return 0
      }
      что бы было понятно в дальнейшем что за переменные 
      snmp1="snmpwalk -v2c -c паблик стринг"
      snmp2="snmpwalk -v2c -Ouqv -c паблик стринг"
      snmp3="snmpget -v2c -c паблик стринг"
      snmp3q="snmpget -v2c -Ouqv -c паблик стринг"
      snmp4="snmpget -v2c -Ouqv -c приват стринг"
      snmp5="snmpset -v2c -c приват стринг"

      EPON GEPON
      1- OID_GET_MAC="1.3.6.1.4.1.3320.101.10.4.1.1" на бдкомах епон 
      = SNMPv2-SMI::enterprises.3320.101.10.4.1.1.96 = Hex-STRING: A0 94 6A 97 CC 50
      snmp_response=$($snmp3 "$IP" "$OID_GET_MAC.$1" 2>/dev/null | awk -F'Hex-STRING: ' '{print tolower($2)}' | tr -d ' ')
          onu_mac=$(echo "$snmp_response" | sed 's/\(..\)/\1:/g;s/:$//') #Переводим в человеческий вид
          mac10=$(echo "$snmp_response" | awk '{    # Переводим в mac10 дада способов есть миллиард.
              for (i=1; i<=length; i+=2) {
                  printf "%d", strtonum("0x" substr($0, i, 2))
                  if (i + 2 <= length) printf "."
              }
              print ""
          }')

      лучший способ сделать функцию для форматирования снмп запросов в зависимости от типов STRING / HEX-STRING / COUNTER32 и тд тп.

      ifID=$($snmp1 "$IP" "$OID_IF_MAC10" 2>/dev/null | awk -v mac="$mac10" '$0 ~ mac {split($1, arr, "."); print arr[length(arr)-6]; exit}') 


      2 - OID_VENDOR_ONU="1.3.6.1.4.1.3320.101.10.1.1.1"
      тут без лишних слов возвращает вендор онушек 
      SNMPv2-SMI::enterprises.3320.101.10.1.1.1.97 = STRING: "XPON"   если укажем параметр -Oqv  или -Ouqv получим просто "XPON" и надо будет лишь сделать | tr -d ' " '    что бы удалить лапки.

      3 - OID_MODEL_ONU="1.3.6.1.4.1.3320.101.10.1.1.2" аналогично вендорам, получаем модель.

      4- OID_TEMP_ONU="1.3.6.1.4.1.3320.101.10.5.1.2"  - температура ону делим на / 256
      SNMPv2-SMI::enterprises.3320.101.10.5.1.2.17 = INTEGER: 7027  
      temp_onu=$($snmp3q $IP 1.3.6.1.4.1.3320.101.10.5.1.2.$INDEX | awk '{printf "%.2f", $1/265}' 2>/dev/null)

      5 - OID_AUNT_ONU_STATUS="1.3.6.1.4.1.3320.101.10.1.1.26"
      SNMPv2-SMI::enterprises.3320.101.10.1.1.26.276 = INTEGER: 3

      onuAunt_type=$($snmp3q $IP "$OID_AUNT_ONU_STATUS.$INDEX" 2>/dev/null)
          case "$onuAunt_type" in
              0) onuAunt_type_txt="authenticated" ;;
              1) onuAunt_type_txt="registered" ;;
              2) onuAunt_type_txt="deregistered" ;;
              3) onuAunt_type_txt="auto_config" ;;
              4) onuAunt_type_txt="lost" ;;
              *) onuAunt_type_txt="unknown" ;;
          esac

      6 - OID_UPTIME_ONU="1.3.6.1.4.1.3320.101.10.1.1.80" uptime
      SNMPv2-SMI::enterprises.3320.101.10.1.1.80.207 = INTEGER: 290907
      timetick 
      | awk '{h=int($1/3600); m=int(($1%3600)/60); s=$1%60; printf "AliveTime: %dч %dмин %dсек\n", h, m, s}')${reset}"

      7 - OID_DIST="1.3.6.1.4.1.3320.101.10.1.1.27"
      SNMPv2-SMI::enterprises.3320.101.10.1.1.27.149 = INTEGER: 1600
      на епоне в метрах  на гпоне делим на 10

      8 - OID_IF_MAC10="1.3.6.1.4.1.3320.101.11.1.1.3"
      SNMPv2-SMI::enterprises.3320.101.11.1.1.3.14.60.21.18.8.130.175 = Hex-STRING: 3C 15 12 08 82 AF  
      SNMPv2-SMI::enterprises.3320.101.11.1.1.3      .14-PORTINDEX     60.21.18.8.130.175  - MAC10                = Hex-STRING: MAC HEX

      9- OID_IFindexmac10="1.3.6.1.4.1.3320.101.11.1.1.1"
      SNMPv2-SMI::enterprises.3320.101.11.1.1.1.125.60.21.18.6.227.186 = INTEGER: 125
      SNMPv2-SMI::enterprises.3320.101.11.1.1.1.125.60.21.18.6.247.136 = INTEGER: 125
      возвращает PORT INDEX и можно грепнуть по mac10 найти индекс и можно грепнуть через мак10

      10 - LASTREG_DATE="1.3.6.1.4.1.3320.101.11.1.1.9"
      дату отдаёт в хексе. надо декодировать это дело.
      вызов snmp + IP + oid + PORTINDEX + MAC10 
      date_hex=$($snmp1 $IP "$LASTREG_DATE.$IF_INDEX.$mac10" 2>/dev/null | awk -F': ' '{print $2}' | tr -d ' ')
      if [[ -n "$date_hex" ]]; then
              # Преобразуем дату из hex в числовое представление
              data=($(echo "$date_hex" | sed 's/../0x& /g'))
              local year=$((data[0] * 256 + data[1]))
              local month=${data[2]}
              local day=${data[3]}
              local hour=${data[4]}
              local minute=${data[5]}
              local second=${data[6]}


      local formatted_date=$(printf "%04d-%02d-%02d %02d:%02d:%02d" "$year" "$month" "$day" "$hour" "$minute" "$second")


      10 - LASTDEREG_DATE="1.3.6.1.4.1.3320.101.11.1.1.10"
      аналогично 9му оиду.

      11 - LASTDEREG_REASON="1.3.6.1.4.1.3320.101.11.1.1.11" 
      DEREG_STATUS=$($snmp3 $IP "$LASTDEREG_REASON.$IF_INDEX.$mac10" -Oqv 2>/dev/null)
          case "$DEREG_STATUS" in
              2) dereg_status_text="normal";;
              3) dereg_status_text="mpcp-down";;
              4) dereg_status_text="oam-down";;
              5) dereg_status_text="firmware-download";;
              6) dereg_status_text="illegal-mac";;
              7) dereg_status_text="llid-admin-down";;
              😎 dereg_status_text="wire-down";;
              9) dereg_status_text="power-off";;
              255) dereg_status_text="unknown";;
              0) dereg_status_text="Нет данных.";;
              *) dereg_status_text="not found";;
          esac

      есть прикол если онушка autoconfig статус 3 / authenticated статус 0
      там инвертируються 7 и 8  может и от моделей ону зависеть.... 
      7) dereg_status_text="llid-admin-down";;
      😎 dereg_status_text="wire-down";;
      это уже тестами )


      12  -  OID_ONU_ETH="1.3.6.1.4.1.3320.101.12.1.1.8" статус езернет ничего не обычного кроме того что может верно отдать данные с 2-3го раза )
      2 down 1 up 
      там же есть прикол с authenticated autoconfig инвертируется...
      local PORT_COUNT=$($snmp2 "$IP" "$OID_ONU_ETH.$INDEX" | wc -l)
      local ETH_STATUS=$($snmp2 "$IP" "$OID_ONU_ETH.$INDEX.$port" 2>/dev/null)
              [[ "$ETH_STATUS" =~ ^[0-9]+$ ]] || continue  # Проверяем, что ETH_STATUS - это число
              if [[ "$onuAunt_type" == "0" ]]; then
                  STATUS_COLOR=$( [[ "$ETH_STATUS" -eq 2 ]] && echo "UP" || echo "DOWN" )
              else
                  STATUS_COLOR=$( [[ "$ETH_STATUS" -eq 1 ]] && echo "UP" || echo "DOWN" )
              fi

      13 - OID_PORT_INDEX="1.3.6.1.4.1.3320.101.107.1.1" # oid возвращает все индексы ПОН портов, работает не везде.
      14 - OID_GEPORT_COUNT="1.3.6.1.4.1.3320.101.10.1.1.12"   гигабит езернет порты на онушках (кол-во)
      15 - OID_FEPORT_COUNT="1.3.6.1.4.1.3320.101.10.1.1.14"   ФастЕзернет 100мбит аналогично. 
      INTEGER 

      16 - OID_REBOOT_ONU="1.3.6.1.4.1.3320.101.10.1.1.29" # snmpset -v2c -c RW IP OID.onuIndex i 0                                  reboot REBOOT ONU epon snmp
      $snmp5 "$IP" "$OID_REBOOT_ONU.$INDEX" i 0 >/dev/null 2>&1

      17 - delete onu epon  удалить ону бдком снмп 
      OID_DEL_ONU="SNMPv2-SMI::enterprises.3320.101.11.1.1.2"
      $snmp5 "$IP" "$OID_DEL_ONU.$ifID.$mac10" i 0 > /dev/null 2>&1    oid.PORTINDEX.mac10 i 0 
      остальные есть выше там думаю всё понятно.

      SIGNAL LEVELS в зависимости от моделей плат и олтов расписаны 
      все везде одинаково 
      $snmp2 "$IP" "$OID_RX_OLT.$INDEX" 2>/dev/null | awk '{print $NF / 10}')   результат делим на 10.

      epon пакеты, ошибки по портам на онушке.
      broadcasts=$($snmp4 "$IP" "1.3.6.1.4.1.3320.101.12.2.1.16.$INDEX.$port" 2>/dev/null)
      multicasts=$($snmp4 "$IP" "1.3.6.1.4.1.3320.101.12.2.1.17.$INDEX.$port" 2>/dev/null)
      unicasts=$($snmp4 "$IP" "1.3.6.1.4.1.3320.101.12.2.1.18.$INDEX.$port" 2>/dev/null)
      pause=$($snmp4 "$IP" "1.3.6.1.4.1.3320.101.12.2.1.19.$INDEX.$port" 2>/dev/null)
      fcserrs=$($snmp4 "$IP" "1.3.6.1.4.1.3320.101.12.2.1.20.$INDEX.$port" 2>/dev/null )
      oversize=$($snmp4 "$IP" "1.3.6.1.4.1.3320.101.12.2.1.13.$INDEX.$port" 2>/dev/null)
      jabber=$($snmp4 "$IP" "1.3.6.1.4.1.3320.101.12.2.1.14.$INDEX.$port" 2>/dev/null)

      мне бы такое помогло.. а не искать на тонне форумов и сайтов и неделю тыкая snmpwalk и выясняя что и для чего. остального и в инете полно. 
    • Від grapefruit
      Доброго вечора, спільното!
      Можливо хтось стикався з завданням,коли потрібно на OLT BDCOM GP3600 по oid визначити час розреєстрування ону. В неті нічого знайти не вдалося, через MIB браузер тоже ніц.
      Якщо підкажете буде дуже вдячний, або хоч підкажіть де шукати.
      Всім гарного вечора)
    • Від alexeya
      Продам OLT ZTE C320. OLT укомплектован блоком живлення PRAM, двома платами GTGH(K00), платою керування SMXA(A31).

      Кожна GTGH-плата, це 16 GPON портів, 16 GPON модулів C++.
      SMXA-плата, це SFP+ (10G) порт, 1 гігабітний комбо порт.

      В наявності 2 одиниці. Один новий, один був у використанні (стан близький до нового)

      Ціна нового - 120000 грн
      Ціна вживаного - 105000 грн

      BDCOM GP-3600-08B куплявся в ДЕПСі в вересні 23 року. В ньому використовувались тільки 3 порти (тобто є тільки 3 GPON SFP модулі). 48к разом з модулями

      ОЛТИ без модулів:
      3310B-2AC - 1штука - 8000
      3310B - 2 штуки - 7500
      3310B + Proline UPS - 1 штука - 8500
      3310D + Proline UPS - 1 штука - 12500
      BDCOM P3600-04 + Proline UPS - 1 штука - 16500
      3616-2TE - 3 штуки - 53к

      Додам вживані EPON С++ модулі по 400 грн за штуку. Або нові по 750 грн за штуку
    • Від jaroslav2r
      Добрий день,
      Виникла проблема з DHCP snooping на одному з наших OLT DASAN V5808. При його увімкненні клієнти перестають отримувати IP-адреси через DHCP. Оновлення прошивки до версії V5808 NOS 1.12p1 не допомогло. На інших OLT така проблема не спостерігається.
      DHCP snooping налаштовано за допомогою наступних команд, де uplink — порт 15:
      Copy code
      ip dhcp snooping
      ip dhcp snooping vlan 665
      ip dhcp snooping trust 15
      Хтось стикався з подібною проблемою і знайшов рішення?
       
      We’re experiencing an issue with DHCP snooping on one of our DASAN V5808 OLTs. When DHCP snooping is enabled, clients stop receiving DHCP offers. Updating the firmware to version V5808 NOS 1.12p1 didn’t resolve the problem. Other OLTs don’t seem to have this issue.
      The DHCP snooping configuration was done with the following commands:

      ip dhcp snooping
      ip dhcp snooping vlan 665
      ip dhcp snooping trust 15
       
      uplink —  15 port
       
      Has anyone encountered this problem and managed to fix it?
    • Від Rico3110
      ПРОДАМ НОВІ OLT
      нова C-DATA EPON FD1204S-R2-DAP - 1шт
      нова C-DATA GPON FD1604S-2AC - 1шт
       
      Блоки живлення нові EF9012 і EF6012
       

       
       
      UP!!!  По ціні, та наявності, уточнюйте в приватних повідомленнях!
       

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