This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
использование_протокола_snmp [2011/12/19 18:26] val |
использование_протокола_snmp [2013/02/20 09:38] val |
||
---|---|---|---|
Line 5: | Line 5: | ||
http://www.cisco.com -> Search -> SNMP Object Navigator -> SEARCH -> busy | http://www.cisco.com -> Search -> SNMP Object Navigator -> SEARCH -> busy | ||
- | ===== Cisco настройка snmp агента ===== | + | ===== Настройка snmp агента Cisco ===== |
- | ==== Разрешение на чтение ==== | + | * [[Общие настройки сетевого оборудования Cisco#Настройка snmp агента]] |
- | <code> | + | |
- | snmp-server community public RO | + | |
- | </code> | + | |
- | ==== Разрешение на запись ==== | + | ===== Установка snmp консоли ===== |
- | <code> | + | |
- | snmp-server community write RW | + | |
- | </code> | + | |
- | ===== Unix пакет net-snmp ===== | + | * [[Сервис SNMP#Установка пакета net-snmp]] |
- | + | * [[Сервис SNMP#Вывод иерархии OID]] | |
- | ==== Установка клиентских утилит, агента и службы перехвата trap сообщений ==== | + | |
- | <code> | + | |
- | server# pkg_add -r net-snmp | + | |
- | server# rehash | + | |
- | или | + | |
- | server# apt-get install snmp | + | |
- | server# apt-get install snmpd # inc snmpd and snmptrapd | + | |
- | </code> | + | |
- | + | ||
- | ==== Вывод иерархии OID ==== | + | |
- | <code> | + | |
- | server# snmptranslate -Tp | more | + | |
- | </code> | + | |
- | + | ||
- | ==== Настройка snmp агента ==== | + | |
- | <code> | + | |
- | gate# cat etc/snmp/snmpd.conf | + | |
- | rocommunity public | + | |
- | </code> | + | |
===== Варианты использования протокола SNMP в режиме чтения ===== | ===== Варианты использования протокола SNMP в режиме чтения ===== | ||
- | ==== Перебор всех значений OID устройства ==== | + | * [[Сервис SNMP#Варианты использования snmp консоли в режиме чтения]] |
- | <code> | + | * [[Сервис MRTG]] |
- | server# snmpwalk -On -c public -v2c router 1 | + | * [[http://ru.wikipedia.org/wiki/Cacti]] |
- | </code> | + | * [[Сервис Nagios]] |
- | + | * [[http://www.mikrotik.com/thedude.php]] | |
- | ==== Считывание имени устройства ==== | + | * [[http://ru.wikipedia.org/wiki/Сравнение_систем_мониторинга_сети]] |
- | <code> | + | |
- | server# snmpget -c public -v2c router 1.3.6.1.2.1.1.5.0 | + | |
- | + | ||
- | server# snmpget -c public -v2c router sysName.0 | + | |
- | + | ||
- | server# snmpwalk -c public -v2c router sysName | + | |
- | </code> | + | |
- | + | ||
- | ==== Определение загрузки CPU устройства ==== | + | |
- | <code> | + | |
- | server# snmpget -c public -v2c router 1.3.6.1.4.1.9.2.1.56.0 | + | |
- | </code> | + | |
- | + | ||
- | ==== Вывод списка интерфейсов устройства ==== | + | |
- | <code> | + | |
- | server# snmpwalk -c public -v2c router ifDescr | + | |
- | </code> | + | |
- | + | ||
- | ==== Вывод количества байт, прошедших через порт устройства с момента его включения ==== | + | |
- | <code> | + | |
- | server# snmpget -c public -v2c router ifInOctets.2 | + | |
- | + | ||
- | server# snmpget -c public -v2c router ifOutOctets.2 | + | |
- | </code> | + | |
- | + | ||
- | ==== Multi Router Traffic Grapher ==== | + | |
- | + | ||
- | [[Сервис MRTG]] | + | |
- | + | ||
- | [[http://www.mikrotik.com/thedude.php]] | + | |
===== Варианты использования протокола SNMP в режиме записи ===== | ===== Варианты использования протокола SNMP в режиме записи ===== | ||
- | ==== Отключение/включение интерфейсов ==== | + | * [[Сервис SNMP#Варианты использования протокола SNMP в режиме записи]] |
- | <code> | + | |
- | server# snmpwalk -c public -v2c switch ifDescr | + | |
- | + | ||
- | server# snmpwalk -c public -v2c switch ifOperStatus | + | |
- | + | ||
- | server# snmpset -c write -v2c switch ifAdminStatus.3 integer 2 | + | |
- | + | ||
- | server# snmpset -c write -v2c switch ifAdminStatus.3 integer 1 | + | |
- | </code> | + | |
- | + | ||
- | ==== Копирование файла конфигурации по tftp ==== | + | |
- | <code> | + | |
- | server# cat /TFTPDIR/firewall.acl | + | |
- | ... | + | |
- | + | ||
- | server# snmpset -c write -v2c router 1.3.6.1.4.1.9.2.1.53.192.168.X.10 string "firewall.acl" | + | |
- | </code> | + | |
- | значение 192.168.X.10 в конце OID содержит адрес tftp сервера | + | |
===== Варианты использования протокола SNMP в режиме генерации trap сообщений ===== | ===== Варианты использования протокола SNMP в режиме генерации trap сообщений ===== | ||
- | [[Сервисы электронной почты]] | + | * [[Сервис MTA#Установка и настройка MTA на обработку почты домена hostname]] |
- | + | * [[Сервис SNMP#Настройка snmptrapd сервиса]] | |
- | ==== Запуск сервиса snmptrapd ==== | + | * [[Общие настройки сетевого оборудования Cisco#Настройка адреса перехватчика trap сообщений]] на cisco switch |
- | + | * [[Общие настройки сетевого оборудования Cisco#Настройка генерации trap-ов в случае падения/поднятия интерфейсов]] на cisco switch | |
- | === Ubuntu === | + | * Использование почтового клиента [[UA mail]] |
- | <code> | + | |
- | server# cat /etc/default/snmpd | + | |
- | ... | + | |
- | SNMPDRUN=no | + | |
- | ... | + | |
- | TRAPDRUN=yes | + | |
- | ... | + | |
- | + | ||
- | server# cd /etc/snmp/ | + | |
- | </code> | + | |
- | + | ||
- | === FreeBSD === | + | |
- | <code> | + | |
- | [server:~] # /usr/local/etc/rc.d/snmptrapd rcvar | + | |
- | + | ||
- | [server:~] # cd /usr/local/etc/snmp/ | + | |
- | </code> | + | |
- | + | ||
- | === FreeBSD/Ubuntu === | + | |
- | <code> | + | |
- | server# cat snmptrapd.conf | + | |
- | </code><code> | + | |
- | traphandle default mail -s snmptrap root | + | |
- | traphandle default cat >> /tmp/traps | + | |
- | authCommunity execute writetrap | + | |
- | </code><code> | + | |
- | # touch /tmp/traps | + | |
- | + | ||
- | root@server:~# /etc/init.d/snmpd restart | + | |
- | или | + | |
- | [server:~] # /usr/local/etc/rc.d/snmptrapd start | + | |
- | + | ||
- | # cat /tmp/traps | + | |
- | </code> | + | |
- | !!! На стенде при первой итерации большие задержки | + | |
- | + | ||
- | ==== Настройка на cisco адреса перехватчика trap сообщений ==== | + | |
- | <code> | + | |
- | switch(config)# snmp-server host server writetrap | + | |
- | </code> | + | |
- | + | ||
- | ==== Настройка cisco на генерацию trap-ов в случае падения/поднятия интерфейсов ==== | + | |
- | <code> | + | |
- | switch(config)# snmp-server enable traps snmp linkdown linkup | + | |
- | </code> | + | |
- | + | ||
- | + | ||
- | ===== Дополнительные материалы ===== | + | |
- | + | ||
- | ==== Использование RMON подсистемы протокола SNMP ==== | + | |
- | + | ||
- | === Мониторинг изменения загрузки интерфейса f0/2 === | + | |
- | + | ||
- | == Определение OID == | + | |
- | + | ||
- | Таблица соответствий имен переменных их числовым значениям в оборудовании может быть не полной | + | |
- | <code> | + | |
- | server# snmptranslate 1.3.6.1.2.1.2.2.1 | + | |
- | IF-MIB::ifEntry | + | |
- | + | ||
- | server# snmptranslate 1.3.6.1.2.1.2.2.1.10 | + | |
- | IF-MIB::ifInOctets | + | |
- | + | ||
- | server# snmpwalk -c public -v2c router ifDescr | + | |
- | ... | + | |
- | IF-MIB::ifDescr.2 = STRING: FastEthernet1/0 | + | |
- | ... | + | |
- | + | ||
- | server# snmpget -c public -v2c router ifEntry.10.2 | + | |
- | + | ||
- | server# snmpget -c public -v2c router ifInOctets.2 | + | |
- | </code> | + | |
- | + | ||
- | == Настройка коммутатора == | + | |
- | <code> | + | |
- | rmon event 111 log trap writetrap description "Change bandwith" | + | |
- | rmon alarm 222 ifEntry.10.2 10 delta rising-threshold 10000 111 falling-threshold 10000 111 | + | |
- | </code> | + | |
- | + | ||
- | коментарии: | + | |
- | + | ||
- | * event - кому посылать (в trap с комьюнити writetrap) и описание события | + | |
- | * alarm - причины возникновения trap и привязка к event | + | |
- | * Номер alarm (222) присутствует в сообщении trap | + | |
- | + | ||
- | <code> | + | |
- | ifEntry.10.2 - (тоже что и ifInOctets.2 но коммутатор это не понимает) | + | |
- | 10 - период расчета в секундах | + | |
- | delta - считать относительно предыдущего параметра | + | |
- | rising-threshold 10000 111 - при превышении разницы значений счетчика на 10000 генерировать event 111 | + | |
- | falling-threshold 10000 111 - при уменьшении разницы значений счетчика на 10000 генерировать event 111 | + | |
- | </code> | + | |
- | + | ||
- | == Генерация трафика == | + | |
- | <code> | + | |
- | C:\>ping -n 1000 -l 1500 -w 0 172.16.1.254 | + | |
- | </code> | + | |
- | + | ||
- | == Отладка на UNIX == | + | |
- | <code> | + | |
- | server# tail -f /tmp/traps | + | |
- | ... | + | |
- | </code> | + | |
- | + | ||
- | == Отладка на коммутаторе == | + | |
- | <code> | + | |
- | router# debug snmp packets | + | |
- | ... | + | |
- | </code> | + | |
- | + | ||
- | === Мониторинг загрузки процессора === | + | |
- | + | ||
- | == Конфигурация cisco устройства == | + | |
- | <code> | + | |
- | rmon event 4 log trap public description "Cpu hight load" | + | |
- | rmon alarm 8 1.3.6.1.4.1.9.2.1.56.0 10 absolute rising-threshold 80 4 falling-threshold 6 20 | + | |
- | </code> | + | |