Перейти до

BDCOM P3310B + option82 + Netis/D-Link dir300


Kto To

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

Используем в некоторых местах авторизацию клиентов по номеру порта на коммутаторах (dhcp option82)

 

Была схема

[Server]-[core switch]-[aggreation switch]-[huawei s2300]

 

Все работало у всех клиентов со всеми роутерами замечательно. Со временем [aggreation switch] забился линками, ставить второй смысла не было (включать медиаконверторами клиентов уже прошлый век) - поставили вместо свитча - bdcom P3310B. В него включили приходищий порт, клиентов перевели на пон и в него включили линк на huawei s2300 (офисное здание, клиенты по меди). После этого у клиентов включеных в huawei у кого роутеры Netis и у одного был DIR-300 - перестали получать ип по dhcp. При этом клиенты у которых TP-Link и Mikrotik - нормально получают ИП и работают. Прошивки обновляли до последних как на Netis так и на DIR-300 - эффекта 0. Пока временно перевели этих клиентов на PPPOE, но не хочется чтоб была путаница. На BDCOM P3310B включен dhcp snooping и порт в сторону Huawei добавлен как trust

 

На Хуавей используются влан 100 для внешних ип, 101 - для серых

На ОЛТ также используется авторизация dhcp option 82 (вланы 100,110,111)

Добавление в ip dhcp-relay snooping vlan - влан 101 - никакого эффекта не давал - как не получали ип Netis и DIR-300 так и не получают :(

 

interface GigaEthernet0/5
 description Huawei
 switchport trunk vlan-allowed 10,100,101
 switchport mode trunk
  dhcp snooping trust
  arp inspection trust
  ip-source trust

!
ip dhcp-relay snooping
ip dhcp-relay snooping vlan  100,110,111
ip arp inspection vlan  100,110,111
ip verify source vlan  100,110,111
ip dhcp-relay snooping information option format hn-type host

 

 

 

Ссылка на сообщение
Поделиться на других сайтах
  В 02.07.2019 в 12:33, Kto To сказав:

порт в сторону Huawei добавлен как trust

Expand  

в сторону сервера должно быть траст, а не клиента.

Это раз.

Два - это что приходит в опции на dhcp сервер?

Ссылка на сообщение
Поделиться на других сайтах
  В 02.07.2019 в 12:33, Kto To сказав:

порт в сторону Huawei добавлен как trust

Expand  

Лишнее оно. trust - это порт сервера, а не клиентов, как у вас

На P3310B dhcp snooping включается глобально и опцию 82 он растыкивает (удаляет пакет или редактирует под себя), независимо в каком влане пришел dhcp-пакет. В общем, использование опции 82 на коммутаторах D-Link, подключенных именно через P3310B было признано неработоспособным.

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

Хорошо - но почему именно только в основном Netis? Почему просто на компе - получает ип, на mikrotik/tplink тоже...

  В 02.07.2019 в 12:42, Dimkers сказав:

в сторону сервера должно быть траст, а не клиента.

Это раз.

Два - это что приходит в опции на dhcp сервер?

Expand  

 убрал - не помогло :(

Ссылка на сообщение
Поделиться на других сайтах
  В 02.07.2019 в 14:12, Kto To сказав:

Хорошо - но почему именно только в основном Netis? Почему просто на компе - получает ип, на mikrotik/tplink тоже...

 убрал - не помогло :(

Expand  

Может потому что древние косые realtek у них на борту? 

Ссылка на сообщение
Поделиться на других сайтах
  В 02.07.2019 в 14:12, Kto To сказав:

убрал - не помогло :(

Expand  

А я и не говорил, что поможет :) Я сказал как правильно.

Что в опции прилетает с нетиса и что с других?

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

Смени на huawei vlan доступа на иной от того что есть в списке ip dhcp-relay snooping vlan 100,110,111 на бдкоме. Я так понял у тебя 100-ый есть и там и там. А так быть не может, вернее может, но тогда тебе нужно настраивать на бдком на даунлинк порту к хуавею политику что делать если в Discover уже есть опция отбрасывать, заменять или пропускать? Но тут еще один момент, не корректно мне кажется использовать один vlan на разных коммутаторах с опцией 82, формат опции может быть разный.

 

Відредаговано fet4
Ссылка на сообщение
Поделиться на других сайтах
  В 02.07.2019 в 14:48, nedoinet сказав:

Может потому что древние косые realtek у них на борту? 

Expand  

 

Но все работало до того как линк на свитч подали с ОЛТ-а.

Ссылка на сообщение
Поделиться на других сайтах
  В 02.07.2019 в 21:28, fet4 сказав:

Смени на huawei vlan доступа на иной от того что есть в списке ip dhcp-relay snooping vlan 100,110,111 на бдкоме. Я так понял у тебя 100-ый есть и там и там. А так быть не может, вернее может, но тогда тебе нужно настраивать на бдком на даунлинк порту к хуавею политику что делать если в Discover уже есть опция отбрасывать, заменять или пропускать? Но тут еще один момент, не корректно мне кажется использовать один vlan на разных коммутаторах с опцией 82, формат опции может быть разный.

 

Expand  

 

10-й управление

100-й - сеть с белыми ИП которая растянута по разным коммутаторам где раздается опция.

101 - для huawei под серые ип

110-111 -  под серые ИП для ОЛТ

 

ИП получают на Хуавей как по 100-му влану так и по 101 компы, тп-линковские роутеры и микротики. После замены аплинка с свитча агрегации на ОЛТ - перестали получать ИП роутеры Нетис (все что были включены в хуавей, несколько штук) и один роутер длинк DIR-300. Причем монтажники включают ноутбук вместо Нетиса - получают ип, работает инет. Включают тп-линк на тот же шнурок - получают ИП работает инет. Включают Нетис - ИП не получают.

Прошивки обновляли, благовония подкуривали, с бубном танцевали. По tcpdump/dhcpdump - DHCP сервер на запрос отвечает - ИП отсылает. Загадка - почему ИП не долетает именно до этих роутеров?

 

П.С. Глубоким знатокам БДКОМ - можно как-то "заставить" P3310B обрабатывать snooping только заданых вланов а не всех?

Ссылка на сообщение
Поделиться на других сайтах
  В 02.07.2019 в 12:33, Kto To сказав:

Используем в некоторых местах авторизацию клиентов по номеру порта на коммутаторах (dhcp option82)

 

Была схема

[Server]-[core switch]-[aggreation switch]-[huawei s2300]

 

Все работало у всех клиентов со всеми роутерами замечательно. Со временем [aggreation switch] забился линками, ставить второй смысла не было (включать медиаконверторами клиентов уже прошлый век) - поставили вместо свитча - bdcom P3310B. В него включили приходищий порт, клиентов перевели на пон и в него включили линк на huawei s2300 (офисное здание, клиенты по меди). После этого у клиентов включеных в huawei у кого роутеры Netis и у одного был DIR-300 - перестали получать ип по dhcp. При этом клиенты у которых TP-Link и Mikrotik - нормально получают ИП и работают. Прошивки обновляли до последних как на Netis так и на DIR-300 - эффекта 0. Пока временно перевели этих клиентов на PPPOE, но не хочется чтоб была путаница. На BDCOM P3310B включен dhcp snooping и порт в сторону Huawei добавлен как trust

 

На Хуавей используются влан 100 для внешних ип, 101 - для серых

На ОЛТ также используется авторизация dhcp option 82 (вланы 100,110,111)

Добавление в ip dhcp-relay snooping vlan - влан 101 - никакого эффекта не давал - как не получали ип Netis и DIR-300 так и не получают :(

 

interface GigaEthernet0/5
 description Huawei
 switchport trunk vlan-allowed 10,100,101
 switchport mode trunk
  dhcp snooping trust
  arp inspection trust
  ip-source trust

!
ip dhcp-relay snooping
ip dhcp-relay snooping vlan  100,110,111
ip arp inspection vlan  100,110,111
ip verify source vlan  100,110,111
ip dhcp-relay snooping information option format hn-type host

 

 

 

Expand  

Попробуй вкл dhcp-relay agent 

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

Потратил вечер на синтетические тесты и эксперименты. Пообщался с коллегой - у него аналогичная ситуация с роутерами Xiaomi.

Что выяснилось.

При включеном ip dhcp-relay snooping ни Netis ни Xiaomi не получают ип от дхцп сервера. Куда бы ни был включен роутер, хоть в ОНУ, хоть в порт ОЛТ, хоть в порт свитча за ОЛТ, хоть по опции 82, хоть без нее - ип НЕ ПОЛУЧАЕТ. 

Включение dhcp-relay agent - никакого эффекта не дает.

Пробовал выдавать ип как с серверного dhcpd так и просто ткнув другой роутер лан портом в ОЛТ - ип НЕ ПОЛУЧАЕТ

Только делаю no ip dhcp-relay snooping - сразу прилетает ИП на роутер.

При этом все также ТП-Линк и Микротик получает ип что при включеном dhcp-relay snooping что без него.

 

Как это полечить? 

 

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

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

Відредаговано tiratore
Ссылка на сообщение
Поделиться на других сайтах
  В 08.07.2019 в 07:37, KaYot сказав:

Не использовать устаревшие технологии)

Expand  

 

Проблема в том что 36хх модели можно конечно ставить - но они жрут света почти в 4 раза больше что удорожает стоимость построения узла и периодические расходы на замену аккумов :( 

 

Подскажите адекватную альтернативу по функционалу BDCOM P3310B...

Ссылка на сообщение
Поделиться на других сайтах
  В 09.07.2019 в 00:14, Kto To сказав:

Проблема в том что 36хх

Expand  

Да нет же, я по то что не нужно использовать всякие dhcp-snooping'и.

Толку от них не много, проблем много.

Ссылка на сообщение
Поделиться на других сайтах
  В 09.07.2019 в 00:14, Kto To сказав:

 

Проблема в том что 36хх модели можно конечно ставить - но они жрут света почти в 4 раза больше что удорожает стоимость построения узла и периодические расходы на замену аккумов :( 

 

Подскажите адекватную альтернативу по функционалу BDCOM P3310B...

Expand  

Работало каскадом как у вас, то есть после 3310B еще коммутаторы, никаких проблем со снупингом. НО, на 3310B должна быть прошивка 33463, у высших версий проблемы со снупингом и vlan для интернета на ниже стоящих коммутаторах должны быть отличные от 3310B, то есть на 3310B они не должны быть включены в ip dhcp snooping vlan

Ссылка на сообщение
Поделиться на других сайтах
  В 09.07.2019 в 08:00, fet4 сказав:

Работало каскадом как у вас, то есть после 3310B еще коммутаторы, никаких проблем со снупингом. НО, на 3310B должна быть прошивка 33463, у высших версий проблемы со снупингом и vlan для интернета на ниже стоящих коммутаторах должны быть отличные от 3310B, то есть на 3310B они не должны быть включены в ip dhcp snooping vlan

Expand  

 

О спасибо! Попробую отпишусь!

  В 09.07.2019 в 06:34, KaYot сказав:

Да нет же, я по то что не нужно использовать всякие dhcp-snooping'и.

Толку от них не много, проблем много.

Expand  

 

Ага - пппое наше все? )))

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

Имеется такая же проблема с роутерами ксяоми и тенда, вроде бы как решилась прошивкой 33463, но появился новый прикол dhcp работает не корректно, в логах сервера постоянные NAK
пример лога:
 

Sep 29 21:54:57 chs dhcpd: DHCPNAK on 172.20.10.171 to e8:65:d4:16:b0:10 via 172.20.0.2
Sep 29 21:54:58 chs dhcpd: DHCPOFFER on 172.20.10.171 to e8:65:d4:16:b0:10 (Tenda) via 172.20.0.2
Sep 29 21:54:58 chs dhcpd: DHCPREQUEST for 172.20.10.171 (172.16.0.1) from e8:65:d4:16:b0:10 (Tenda) via 172.20.0.2
Sep 29 21:54:58 chs dhcpd: DHCPACK on 172.20.10.171 to e8:65:d4:16:b0:10 (Tenda) via 172.20.0.2
Sep 29 22:02:51 chs dhcpd: DHCPREQUEST for 172.20.10.171 from e8:65:d4:16:b0:10 via 172.20.0.2: lease 172.20.10.171 unavailable.
Sep 29 22:02:51 chs dhcpd: DHCPNAK on 172.20.10.171 to e8:65:d4:16:b0:10 via 172.20.0.2
Sep 29 22:02:59 chs dhcpd: DHCPOFFER on 172.20.10.171 to e8:65:d4:16:b0:10 (Tenda) via 172.20.0.2

можно ли как-то это исправить?

Ссылка на сообщение
Поделиться на других сайтах
  В 29.09.2020 в 19:47, forella сказав:

Имеется такая же проблема с роутерами ксяоми и тенда, вроде бы как решилась прошивкой 33463, но появился новый прикол dhcp работает не корректно, в логах сервера постоянные NAK
пример лога:
 

Sep 29 21:54:57 chs dhcpd: DHCPNAK on 172.20.10.171 to e8:65:d4:16:b0:10 via 172.20.0.2
Sep 29 21:54:58 chs dhcpd: DHCPOFFER on 172.20.10.171 to e8:65:d4:16:b0:10 (Tenda) via 172.20.0.2
Sep 29 21:54:58 chs dhcpd: DHCPREQUEST for 172.20.10.171 (172.16.0.1) from e8:65:d4:16:b0:10 (Tenda) via 172.20.0.2
Sep 29 21:54:58 chs dhcpd: DHCPACK on 172.20.10.171 to e8:65:d4:16:b0:10 (Tenda) via 172.20.0.2
Sep 29 22:02:51 chs dhcpd: DHCPREQUEST for 172.20.10.171 from e8:65:d4:16:b0:10 via 172.20.0.2: lease 172.20.10.171 unavailable.
Sep 29 22:02:51 chs dhcpd: DHCPNAK on 172.20.10.171 to e8:65:d4:16:b0:10 via 172.20.0.2
Sep 29 22:02:59 chs dhcpd: DHCPOFFER on 172.20.10.171 to e8:65:d4:16:b0:10 (Tenda) via 172.20.0.2

можно ли как-то это исправить?

Expand  

 

ПППОЕ решает данную проблему :)

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

Мигрируем на 36хх или на других вендоров (увы).

Ссылка на сообщение
Поделиться на других сайтах
  В 01.10.2020 в 23:03, Kto To сказав:

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

Expand  

вот и похоронили, неплохой ОЛТ был...

Відредаговано a_n_h
Ссылка на сообщение
Поделиться на других сайтах
  В 01.10.2020 в 23:03, Kto To сказав:

 

ПППОЕ решает данную проблему :)

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

Мигрируем на 36хх или на других вендоров (увы).

Expand  

Не обязательно на 36хх, На 3310C и D таких проблем нет, придется переходить на них.

Ссылка на сообщение
Поделиться на других сайтах
  В 02.10.2020 в 06:41, forella сказав:

Не обязательно на 36хх, На 3310C и D таких проблем нет, придется переходить на них.

Expand  

а где гарантия, что тоже не похерят с каким-то косяком?

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

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

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

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

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

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

Вхід

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

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

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

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

    • Від Mykola_
      Продам bdcom 3310D в идеальном состоянии, не вскрывался . Можно доукомплектовать БП пролайн. Цена 8500. Торг в пределах разумного приветствуется .

    • Від ppv
      Після оновлення до 1.5.1 не відображаються сигнали на
      OLT BDCOM P3310B (Device version10.1.0B)

      та
      P3608-2TE (Firmware Version10.1.0E). 

      3310C та P3608B ніяких проблем немає, знімає все добре. 
      З GPON3600-8 все зрозуміло будуть виправлення в Ubilling: 1.5.2.
       
      Може в когось було щось подібне? Хочу знати куди копати.
    • Від LIKO
      Продам оптичний лінійний термінал (OLT) BDCOM P3600-16E-2AC , повна комплектація, можливий продаж з модулями BDCOM OLT-GSFP-20+++
      Ціна 85500 грн.
       





    • Від 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 и выясняя что и для чего. остального и в инете полно. 
    • Від Amigo
      Продам GEPON ОЛТи BDCOM
      1. BDCOM P3310B (Вживаний) - 6000 грн.
      2. BDCOM P3310C (Вживаний) - 7500 грн.
      3. BDCOM P3310C (Вживаний без вух) - 7000 грн.
      4. BDCOM P3608-2TE (Вживаний) - 20000 грн.
      5. BDCOM P3608-2TE  (Вживаний) - 19000 грн.

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