Настройки клиента Net-SNMP

Подключение MIB-файлов

Для установки в систему стандартных MIB-файлов нужно установить пакет snmp-mibs-downloader:

# apt-get install snmp-mibs-downloader

Этот пакет скачивает и устанавливает стандартные MIB-файлы в каталог /var/lib/snmp/mibs.

Устанавливается их очень много и во многих из них есть синтаксические ошибки, предупреждения о наличии которых выводятся при запуске из командной строки любой утилиты snmp. Чтобы не видеть эти предупреждения, проще всего подключить только нужные MIB-файлы.

Например, для подключения MIB-файла IF-MIB, нужно вписать в файл /etc/snmp/snmp.conf строчку следующего вида:

mibs +IF-MIB

Если файлы расположены в нестандартном каталоге, то перед подключением MIB-файла нужно указать дополнительные каталоги для поиска MIB-файлов:

mibdirs +/var/lib/mibs/

Отключение проверки диапазона

На коммутаторах Huawei встречаются OID'ы, в октетах которых значения выходят за пределы допустимых значений для чисел со знаком. Клиент SNMP отказывается запрашивать такие OID'ы. Чтобы отключить проверки значений октетов, нужно вписать в файл /etc/snmp/snmp.conf опцию:

noRangeCheck yes

Указание исходного IP-адреса

Если в системе имеется несколько IP-адресов, то ядро операционной системы выбирает для подключения тот IP-адрес, через который будут посылаться исходящие пакеты. Обычно это не вызывает проблем.

Но если в системе настроено резервирование каналов связи с получением маршрутов от соседних маршрутизаторов по протоколу BGP, то исходный IP-адрес будет зависеть от того, какой из каналов сейчас активен. Это может вызывать проблемы, если на оборудовании настроена фильтрация входящих SNMP-запросов по IP-адресу отправителя.

Чтобы отправлять SNMP-запросы с одного и того же строго определённого IP-адреса, можно вписать в файл конфигурации /etc/snmp/snmp.conf опцию с указанием IP-адреса:

clientaddr 169.254.253.2

Настройки по умолчанию

Настройки библиотеки net-snmp по умолчанию находятся в файле /etc/snmp/snmp.conf, а настройки по умолчанию для взаимодействия с отдельными узлами сети можно указывать в файлах /etc/snmp/hosts/HOSTNAME.conf

Например:

defVersion 2c
defCommunity community
timeout 1
retries 3

Или:

noRangeCheck yes
defVersion 3
defSecurityName username
defSecurityLevel authPriv
defAuthType SHA
defAuthPassphrase security-passphrase
defPrivType AES
defPrivPassphrase private-passphrase
timeout 1
retries 3

Таким образом можно избавиться от необходимости явно указывать настройки SNMP в утилитах командной строки snmpget, snmpwalk и т.д.