Примеры управления коммутаторами SNR по протоколу SNMP

Примеры управления коммутаторами SNR по протоколу SNMP

Пример настройки коммутатора SNR для управления и мониторинга с использованием протоколов SNMP v2 и v3

В данном примере приведен возможный вариант конфигурации SNMP v2\v3 для коммутаторов серии SNR-2900.

snmp-server enable
snmp-server securityip x.x.x.x
snmp-server community rw 0 usergroup
snmp-server user user usergroup authPriv des auth md5
snmp-server group usergroup authpriv read view access 1
snmp-server view view 1.3.6.1.2.1.1. include

access-list 1 permit host-source x.x.x.x

Пример запроса для SNMP v3

snmpwalk -v3 -u user -l authPriv -a md5 -A useruser -x des -X useruser y.y.y.y

Ниже собраны примеры, часто запрашиваемые в технической поддержке для управления коммутаторами по протоколу SNMP.

Так как примеров управления существует великое множество — данная заметка будет периодически обновляться и дополняться.

Включение/выключение порта:

snmpset -v2c -c private x.x.x.x .1.3.6.1.2.1.2.2.1.7.N i 2

где:

x.x.x.x — IP коммутатора,

N — номер порта

2 — состояние порта (1 — вкл., 2 — выкл.)

Таблица MAC-адресов 

snmpwalk -v2c -c private x.x.x.x .1.3.6.1.2.1.17.4.3.1.1

Выполнение VCT (Virtual-cable-test) и получение состояния:

Запустить VCT на порту:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.3.2.1.18.N i 1

Получить состояние VCT:

snmpget -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.3.2.1.19.N

где:

x.x.x.x — IP коммутатора,

N — номер порта

Сохранение настроек коммутатора:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.1.6.0 i 1

где:

x.x.x.x — IP коммутатора

Перезагрузка коммутатора:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.1.1.0 i 3

где:

x.x.x.x - IP коммутатора

Получение загрузки CPU коммутатора:

snmpget -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.1.11.10.0

где:

x.x.x.x — IP коммутатора

Включение/выключение Flow Control на порту:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.3.2.1.6.N i 1

где:

x.x.x.x — IP коммутатора,

N — номер порта

1 — состояние Flow Control (1 — вкл, 0 — выкл)

Создать VLAN

Создаём VLAN 4001 с названием «test»:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.5.1.1.4.4001 i 1

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.5.1.1.2.4001 s «test»

Установить native VLAN на порту (switchport access vlan xxx):

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.3.2.1.16.N i M

где:

x.x.x.x — IP коммутатора,

N — номер порта

M — PVID VLAN’a

Включить AM (Access Management, IP-MAC-Port Binding) глобально:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.4.1.0 i 1

Выключить AM (Access Management, IP-MAC-Port Binding)глобально:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.4.1.0 i 2

Включить AM (Access Management, IP-MAC-Port Binding) ip-pool на порту N для IP-адреса y.y.y.y:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.4.2.1.2.N.y.y.y.y i 1

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.4.2.1.3.N.y.y.y.y i 1

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.4.2.1.6.N.y.y.y.y i 1

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.4.2.1.7.N.y.y.y.y i 1

Включить AM (Access Management, IP-MAC-Port Binding) mac-ip-pool на порту N для IP-адреса y.y.y.y и MAC-адреса zz-zz-zz-zz-zz-zz:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.4.2.1.2.N.y.y.y.y i 1

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.4.2.1.3.N.y.y.y.y i 2

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.4.2.1.5.N.y.y.y.y s «zz-zz-zz-zz-zz-zz»

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.4.2.1.7.N.y.y.y.y i 1

Выключить AM (Access Management, IP-MAC-Port Binding) на порту N для IP-адреса y.y.y.y

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.4.2.1.7.N.y.y.y.y i 2

Загрузка файлов на TFTP-сервер (Сохранение конфигурации на TFTP-сервер)

Перед сохранением конфигурации на TFTP-сервер, убедитесь в том, что пустой файл, в который будет сохраняться конфигурация, уже создан в папке TFTP-сервера.

1. Задаем IP-адрес TFTP-сервера:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.1.10.3.0 s «y.y.y.y»

2. Задаем имя файла на коммутаторе:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.1.10.4.0 s «startup.cfg»

3. Задаем имя файла на TFTP-сервере:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.1.10.5.0 s «backup-current.cfg»

4. Устанавливаем тип сервера (1-FTP, 2-TFTP):

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.1.10.7.0 i 2

5. Запускаем процедуру загрузки (1-Upload, 2-Download):

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.1.10.8.0 i 1

Проверка статуса выполнения команды:

snmpget -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.1.10.9.0

Результатом будет числовое значение текущего состояния:

        0 — Error

        1 — OK

        2 — Uploading

        3 — Downloading

        4 — Idle

Загрузка файлов с TFTP-сервера (Обновление ПО коммутатора)

1. Задаем IP-адрес TFTP-сервера:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.1.10.3.0 s «y.y.y.y»

2. Задаем имя файла на TFTP-сервере:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.1.10.4.0 s «6.2.138.103_nos.img»

3. Задаем имя файла на коммутаторе:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.1.10.5.0 s «nos.img»

4. Устанавливаем тип сервера (1-FTP, 2-TFTP):

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.1.10.7.0 i 2

5. Запускаем процедуру загрузки (1-Upload, 2-Download):

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.1.10.8.0 i 2

Проверка статуса выполнения команды:

snmpget -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.1.10.9.0

Результатом будет числовое значение текущего состояния:

        0 — Error

        1 — OK

        2 — Uploading

        3 — Downloading

        4 — Idle

Создание IP extended ACL

1. Включаем файрволл (firewall enable)

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.1.1.1 i 1

2. Создаём ACL c указанным номером (100-199)

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.1.3.1.1.4.101 i 0

3. Создаём правило 1 и выбираем действие a (permit = 1, deny = 0)

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.1.3.4.1.4.101.1 i 1

4. Выбираем протокол IP

0 — IP                        1 — ICMP

2 — IGMP                4 — IP-IP

6 — TCP                9 — IGRP

17 — UDP                47 — GRE

50 — ESP                51 — AH

88 — EIGRP                89 — OSPF

103 — PIMv2                108 — PCP

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.1.3.4.1.5.101.1 i 6

5. Указываем source :

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.1.3.4.1.6.101.1 a y.y.y.y

Опционально wildcard (по умолчанию 255.255.255.255):

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.1.3.4.1.7.101.1 a a.a.a.a

Для настройки any-source, задаем source 1.1.1.1 и wildcard 255.255.255.255

6. Указываем destination :

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.1.3.4.1.8.101.1 a z.z.z.z

Опционально wildcard:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.1.3.4.1.9.101.1 a b.b.b.b

Для настройки any-destination, задаем destination 1.1.1.1 и wildcard 0.0.0.0

7. Указываем source port (для IP/TCP/UDP, любой s-port = 0):

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.1.3.4.1.13.101.1 i 0

8. Указываем destination порт:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.1.3.4.1.15.101.1 i 135

9. Применяем правило:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.1.3.4.1.17.101.1 i 0

Создание MAC ACL

1. Включаем файрволл (firewall enable):

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.1.1.1 i 1

2. Создаём ACL с указанным номером (700-799):

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.1.3.1.1.4.700 i 0

3. Создаём правило 1 и указываем действие (permit = 1, deny = 0)

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.1.3.5.1.4.700.1 i 0

4. Указываем source MAC:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.1.3.5.1.5.700.1 s «xx-xx-xx-xx-xx-xx»

5. Указываем destination MAC (any-destination = 00-00-00-00-00-00)

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.1.3.5.1.6.700.1 s "00-00-00-00-00-00»

6. Применяем правило:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.1.3.5.1.7.700.1 i 0

Привязка ACL к порту

1. Создаём привязку с ID 1 (можно использовать любые значения) ACL 100 к порту 8:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.1.4.1.1.5.0.8.1.1 i 100

2. Чтобы включить traffic-statistics (порт 8, ID привязки 1):

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.10.1.4.1.1.6.0.8.1.1 i 1

QoS

1. Создаём class-map, привязываем к нему ACL и сохраняем его:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.11.2.2.1.2.N.{ A.B.C} i 7

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.11.2.2.1.3.N.{ A.B.C} s «X»

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.11.2.2.1.5.N.{ A.B.C} i 0

 

N – количество символов в названии class-map

A.B.C.{ …} – название class-map

X – номер или название ACL[a]

a = 97, b = 98, c = 99 и т. д.

0 = 48, 1 = 49, 2 = 50, 3 = 51 и т. д.

 

Например для class-map c1 и access-list 101:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.11.2.2.1.2.2.99.49 i 7

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.11.2.2.1.3.2.99.49 s «101»

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.11.2.2.1.5.2.99.49 i 0

2. Создаём policy-map с уникальным произвольным номером (например, 1) и сохраняем его:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.11.2.1.1.2.10 s «PolicyMap1»

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.11.2.1.1.4.10 i 0

N – номер policy map, любое уникальное число

3. Создаём связку policy-map и class-map и настраиваем параметры полисинга:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.11.2.4.1.4.10.N.{ A.B.C} b 1

N.{ A.B.C} – то же самое, что и выше, название class-map.

rate:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.11.2.4.1.5.10.N.{ A.B.C} i 1024

burst:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.11.2.4.1.6.10.N.{ A.B.C} i 256

conform-action transmit:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.11.2.4.1.9.10.N.{ A.B.C} b 0

exceed-action drop:

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.11.2.4.1.15.10.N.{ A.B.C} b 01 

snmpset -v2c -c private x.x.x.x .1.3.6.1.4.1.40418.7.100.11.2.4.1.48.10.N.{ A.B.C} i 0

4. Применяем policy-map к порту N:

snmpset -v2c -c private x.x.x.x 1.3.6.1.4.1.40418.7.100.11.2.11.1.4.0.N.1 s «PolicyMap1»

snmpset -v2c -c private x.x.x.x 1.3.6.1.4.1.40418.7.100.11.2.11.1.5.0.N.1 i 0

Управление ассоциациями с multicast vlan

snmpset -v2c -c … $IP_ADDRESS 1.3.6.1.4.1.40418.7.100.5.2.1.3.4090 s «$VLAN_ID» — любой влан, один либо последовательность, не переписывает список ассоциаций как таковой, просто задает список для дальнейшего сета
snmpset -v2c -c … $IP_ADDRESS 1.3.6.1.4.1.40418.7.100.5.2.1.4.4090 i 1 (1 — добавить, 0 — удалить вышезаданный список)
 
(4090 — multicast-vlan)