-
Зараз на сторінці 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 и выясняя что и для чего. остального и в инете полно.
-
Від Henleys
Всім привіт, придбав б\у упс BX650CI-RS по хорошій ціні, і вирішив придбати для нього нову батарею UGC 12V 9Ah.
Після цього вирішив провести калібровку і протестувати на працездатність. Софтом не зміг відкалібрувати його, тому вирішив його розрядити до повного виключення, і залишити на зарядці сутку.
Після такої маніпуляції, були проведено заміри і тест роботи від батареї:
1. Показники після механічного калібрування:
Напруга на батареї при підключеному ДБЖ до мережі: 14.17 В
Напруга на батареї при вимкненому ДБЖ: 13.49 В
2. Тест на ККД:
Вхідна потужність (від мережі): 230 Вт.
Вихідна потужність (на навантаження): 213 Вт.
ККД ДБЖ: 92.6%
3. Час роботи від батареї при навантаженні 213 Вт: 3 хвилини 15 секунд (До калібрування було 3 хвилини 5 секунд)
4. Напруга на батареї після повного вимкнення ДБЖ: 12.7 В
Подивившись інформацію в інтернеті і запитавши в чата ДЖПТ, я зрозумів, що час повинен бути мінімум 6хв.
Виникло таке питання, чи це низькоякісна батарея? Чи сам Упс погано відкалібрований і не просажує батарею до її мінімума?
Хотів би почути вашу думку, хто в цьому розбирається. Дякую!
-
Від rocker_ilko
Продам упси apc
Online UPS APC SURT6000XLiX547
ціна 600$
в наявності є кількість.
також в наявності є інші моделі.
-
Від strellson
Продам заводський акумулятор літій-залізо-фосфат (LiFePO4), призначений для використання в системах
відновлюваної енергетики та приладів для збереження енергії. Батарея від компанії Delong має виняткову ємність, яка становить 48В при 200 А*год, а загальна ємність зберігання енергії дорівнює 10 кВт-год.
Акумулятор виробляється компанією Shenzhen Delong Energy Technology Co., Ltd., яка є провідним
виробником літій-залізо-фосфатних акумуляторів для різноманітних застосувань. Компанія за досить короткий час
зарекомендувала себе як перевірений постачальник надійних та високоякісних акумуляторів з акцентом на продуктивність та екологічність.
Особливості:
1) Вбудована функція плавного пуску, коли інвертор повинен запускатись від акумулятора, може зменшити вплив струму.
2) Подвійний активний захист лише на рівні BMS.
3) Автоматичне встановлення адреси при підключенні кількох груп.
4) Підтримка пробудження з допомогою сигналу 5~12В порту RJ45.
5) Підтримка хост-контролера для оновлення модуля акумулятора через CAN або RS485 зв'язок.
6) Дозволяє 95% глибину розряду, яка може бути використана для інверторів, що працюють відповідно до протоколу CAN.
7) Модуль нетоксичний, екологічно чистий та безпечний для навколишнього середовища.
8.) Матеріал катода – літій-залізо-фосфат, який має хороші показники безпеки та тривалий термін служби.
9) Система керування акумулятором (BMS) має функції захисту від перезаряджання, перевантаження по струму, високої та низької температури.
10) Система може автоматично керувати станом зарядки та розрядки та збалансувати напругу кожного елемента.
11) Гнучка конфігурація, кілька акумуляторних модулів можуть бути підключені паралельно збільшення ємності і потужності.
12) Застосування способу самоохолодження для швидкого зниження загального рівня шуму системи.
13) Модуль має менший саморозряд і може зберігатись на полиці до 6 місяців без підзарядки.
14) Невеликий розмір та невелика вага, стандарт 19-дюймового вбудованого модуля, легке встановлення та обслуговування.
Розміри: 482/438*540*240mm
Вага: 80кг
Новий, у заводській упаковці.
Гарантія виробника 10 років.
Цена 2000 usd
-
Від strellson
Продам літій-залізо-фосфатну батарею серії LFP HS51200 - новий продукт для зберігання енергії, який може забезпечити надійну підтримку живлення для різного обладнання та систем.
Має вбудовану систему керування батареєю BMS, яка може керувати та контролювати напругу батареї, струм, температуру та іншу інформацію.
Комплект складається з 5 батарей по 10кВч на підставці з роликами.
Ціна комплекту 12500 usd.
В наявності 15 вересня.
Hd7e906d84b424843b126d28ef0fdf818r.webp
-
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВхід
Уже зарегистрированы? Войдите здесь.
Войти сейчас