Перейти к содержанию

Навигация

SNMP: различия между версиями

3343 байта добавлено ,  7 лет назад
(Новая страница: «'''SNMP (Simple Network Management Protocol)''' - стандартный протокол для управления сетевыми устройствами в…»)
 
Строка 78: Строка 78:
| '''id''' || string || ID устройства в MQTT || Нет || snmp_[address]_[community]
| '''id''' || string || ID устройства в MQTT || Нет || snmp_[address]_[community]
|-
|-
| '''address''' || string || Сетевой адрес устройства || Да || -
| '''address''' || string || Сетевой адрес устройства || style="background: #22EE44;" | Да || -
|-
|-
| '''device_type''' || string || Тип устройства (нужен для загрузки шаблона) || Нет || -
| '''device_type''' || string || Тип устройства (нужен для загрузки шаблона) || Нет || -
Строка 84: Строка 84:
| '''enabled''' || bool || Включить устройство в опрос? || Нет || true
| '''enabled''' || bool || Включить устройство в опрос? || Нет || true
|-
|-
| '''community''' || string || Имя сообщества SNMP || Да || -
| '''community''' || string || Имя сообщества SNMP || style="background: #22EE44;" | Да || -
|-
|-
| '''oid_prefix''' || string || Префикс (имя MIB) для текстовых OID каналов, где оный не указан явно || Нет || -
| '''oid_prefix''' || string || Префикс (имя MIB) для текстовых OID каналов, где оный не указан явно || Нет || -
Строка 91: Строка 91:
|-
|-
| '''snmp_timeout''' || integer || Время ожидания ответа (в секундах) || Нет || 5
| '''snmp_timeout''' || integer || Время ожидания ответа (в секундах) || Нет || 5
|-
| '''poll_interval''' || integer || Минимальное время опроса для каждого канала по умолчанию || Нет || -
|-
|-
| '''channels''' || array || Описание каналов устройства (переменных SNMP) || Нет || -
| '''channels''' || array || Описание каналов устройства (переменных SNMP) || Нет || -
|-
|-
|}
|}
==== Описание каналов ====
{| class="wikitable"
|-
! Имя параметра !! Тип !! Описание !! Обязательный !! Значение по умолчанию
|-
| '''name''' || string || Имя канала || style="background: #22EE44;" | Да || -
|-
| '''oid''' || string || OID в числовом или текстовом виде || style="background: #22EE44;" | Да || -
|-
| '''control_type''' || string || Тип данных (согласно [https://github.com/contactless/homeui/blob/contactless/conventions.md Conventions]) || Нет || text
|-
| '''units''' || string || Обозначение единиц измерения (для control_type == value) || Нет || -
|-
| '''scale''' || float || Множитель (для числовых значений) || Нет || 1.0
|-
| '''poll_interval''' || int || Минимальный интервал опроса канала (в мс) || Нет || poll_interval из описания устройства, либо 1000
|-
|}
==== Преобразование OID ====
Если OID представлен в числовом виде (начинается с точки: .1.2.3.4), никакого преобразования не происходит.
Если OID представлен в текстовом виде (например, SNMPv2-MIB::sysName.0), необходимо, чтобы в системе был установлен соответствующий MIB, содержащий описание этой переменной.
Преобразование имён происходит с помощью вызова утилиты snmptranslate, так что можно проверить наличие MIB вручную с помощью команды
<syntaxhighlight lang="bash">
# snmptranslate -On oid
</syntaxhighlight>
Параметр '''oid_prefix''' в описании устройства позволяет опустить имя MIB (префикс; '''SNMPv2-MIB'''::sysName.0). В этом случае, префикс из '''oid_prefix''' будет автоматически
присоединён ко всем OID каналов устройства, где явно не указан префикс. Например, при '''oid_prefix''' = SNMPv2-MIB:
* sysName.0 -> '''SNMPv2-MIB::'''sysName.0
* sysLocation.0 -> '''SNMPv2-MIB::'''sysLocation.0
* HOST-RESOURCES-MIB::hrSystemUptime.0 -> HOST-RESOURCES-MIB::hrSystemUptime.0
* .1.3.6.1.2.1.1.6.0 -> .1.3.6.1.2.1.1.6.0
==== Установка MIB ====
Если у Вас есть требуемый MIB-файл, то достаточно скопировать его в директорию /root/.snmp/mibs, предварительно создав её:
<syntaxhighlight lang="bash">
# mkdir -p /root/.snmp/mibs
# cp your-mibs-file.mib /root/.snmp/mibs
</syntaxhighlight>
После этого проверьте правильность работы snmptranslate с каким-либо известным OID:
<syntaxhighlight lang="bash">
# snmptranslate -On oid
</syntaxhighlight>


=== Шаблоны ===
=== Шаблоны ===
wb_editors
154

правки