Snmputils

Набор утилит для управления сетевым оборудованием, используя SNMP

Возможности

  • Управление оборудование по SNMP
  • Включение выключение абонентов на портах коммутаторов
    • Dlink
    • Edge-Core
    • Zyxel
    • CeLAN
  • Управление скорость на портах коммутаторов
    • Dlink
    • Edge-Core
  • управление состоянием портов

Установка

Создать таблицы в базе.

# mysql --default-character-set=utf8 -D abills < db/Snmputils.sql

abills/libexec/config.pl

@MODULES = (
          'Snmputils'
          );
$conf{SNMPUTILS_SAVE_CONF}=1; сохранение параметров конфигурации после применения привязок MAC к портам
По умолчанию: 0
$conf{SNMPUTILS_BINDING_DEPOSIT}=0; Количество средств на счету ниже которого не привязываетя пользователь к портам комутатора. Количество средств - Депозит + Кредит аккаунта пользователя.
По умолчанию: 0
$conf{SNMPUTILS_CHANGE_VLAN}=1; Включает управление VLAN на порту. По умолчанию пользователя заносит в его рабочий VLAN указанный в Dhcphosts, пользователей с негативным депозитом переносит в гостевой VLAN указанный в описании сетей DHCP.
Пере инициализации происходят при следующих операциях: дневной периодик, пополнение счета, изменении кредита
$conf{SNMPUTILS_CHANGE_PORT_STATE}=1; Включение управления портами коммутаторов абонентов. Для абонентов с негативным депозитом система закрывает порты

ABillS

/ Other/ SNMP Information/ - Панель управления

  • RFC1213-MIB System information - Информация о системе
  • IF-MIB:ifTable - Таблица интерфейсов
  • RFC1158-MIB:ipNetToMediaTable - таблица связок IP/MAC
  • RFC1158-MIB:ipRoutingTable - Управление маршрутизацией
  • RFC1213-MIB:tcpConnTable - TCP соединения
  • RFC1213-MIB:udpTable - UDP - соединения
  • D-Link IP MAC Port Binding - IP-MAC-Port Binding для DES-30хх, DES-3526, DES-3550, DES-3828, DES-3828DC, DES-3828P, DES-3852
  • CeLAN MACs - Таблица статиеских и динамических MAC адресов, управление статической таблицей

/ Monitoring/ SNMP/ - Панель мониторинга

  • Cisco Aironets
  • Motorola (River Delta) BSR1000 modems
  • D-Link
  • Patton RAS 29xx
  • Livingston Portmaster 2/3

/ Customers/ Logins/ Information/ SNMP _BINDING/
Привязка индентификатора пользователя к логину при манипуляциях с SNMP данными.

ID: Индентификатор (MAC, IP или другие данные)
Parameters: Параметры
Comments: Коментарии

Для того, чтобы в мониторинге отображался логин пользователя, а не только MAC, нужно в поле ID добавить MAC.

Возможность управления связками MAC/IP для доступа к сети.
Контроль работает как в ручном режиме, так и в автоматическом. В ручном режиме (меню: / Other/ SNMP Information/) оператор может задать связки MAC/IP, включить или выключить режим блокировки на порту, просмотреть блокированные MAC адреса.
В автоматическом режиме система формирует таблицы допустимых MAC/IP адресов используя данные модуля Dhcphosts и синхронизирует их с коммутаторами доступа. Для включения доступа пользователя к коммутатору:

  1. Внести в поле Ports порты, на которых будет доступ у пользователя к сети. Если поля не указаны пользователю, разрешается использовать все поля открытые в конфигурации сервера доступа. Если есть необходимость разрешить доступ пользователя на нескольких серверах доступа, нужно отметить доступные сервера в меню разрешённых серверов пользователя (/ Customers/ Logins/ Information/ NAS/)
  2. Заполнить поля поле NAS модуля Dhcphosts (Dhcphosts). Данная опция указывает на каком коммутаторе будет открыт доступ пользователю.

Мониторинга блокированных адресов / Мониторинг/ SNMP/ тип D-link port binding

Протестировано на D-Link:

Модель Прошивка
DES-30xx Build 4.00.003
DES-3200-28
DES-3200-18
DES-3200
DES-3526 Build 4.01-B19
DES-3828 Build 3.00.B29

ABillS

/ System configuration/ NAS/

Type: dlibk_pb
Disable: Использовать / не использовать этот сервер для контроля
:Manage:
IP:PORT: IP адрес управляемого коммутатора
Password: SNMP community для доступа к комутатору
RADIUS Parameters (,): Assign-Ports=«1,2,3,4,5,6,7,8,9,10»
Задаёт порты на которых включить блокировку

В периодических процессах сервер автоматом запускает программу контроля IP/MAC адресов на коммутаторах.

Для ручного запуска процеса контроля нужно набрать команду:

# /usr/abills/libexec/periodic daily MODULES=Snmputils NO_ADM_REPORT=1 DEBUG=1

DEBUG - включает режим отладки. Если DEBUG равно 5 (пять) и больше программа имитирует работу скрипта, но ничего не меняет.
NAS_IDS=1,3,7 - задать ID NAS серверов для обновления. Если не указана опция обновляются все включённые NAS с типом dlibk_pb

$conf{SNMPUTILS_DLINK_ACL_TYPE}=1; Установить режим работы Snmp port binding

1 ACL
0 ARP

Настройка комутатора

Включение управления в режиме чтение/правка.

create snmp community snmppass view CommunityView read_write
create snmp host 10.128.0.1 v1  snmppass
  • snmppass - комунити для управления
  • 10.128.0.1 - IP хоста с биллингом

CeLAN

Настройка коммутатора

Включение управления в режиме чтение/правка.

set snmp getcommunity snmppass
set snmp setcommunity snmppass
  • snmppass - комунити для управления

ABillS

/ System configuration/ NAS/

Type: celan
:Manage:
IP:PORT: IP адрес управляемого коммутатора
Disable: Использовать / не использовать этот сервер для контроля
Password: SNMP community для доступа к коммутатору

Cisco Air

Cisco

Мониторинг клиентов на точках доступа. Протестировано на:

  • Cisco Aironet AP350
  • Cisco Aironet AP1230
  • Cisco Aironet AP1242
  • Cisco Aironet AP1310

Настройка

snmp-server community snmpcommunity RO
snmp-server enable traps tty

ZyXEL

ZyXEL

Управление Static MAC Forwarding.

Протестировано на:

  • ES-2024A

HUAWEI

  • S2326TP-EI
system-view
snmp-agent community read snmp_pass
snmp-agent community write snmp_pass

ABillS

/ System configuration/ NAS/

Type: qbridge
Disable: Использовать / не использовать этот сервер для контроля
Password: SNMP community для доступа к комутатору

Настройка клиента осуществляется аналогично D-Link IP MAC Port Binding.
При заведении записей для коммутаторов Zyxel в секции Dhcphosts обязательно нужно заполнять поля

Ports Порт клиента
Vlan Помещать клиента в этот Vlan

Если эти поля не заполнены система не будет вносить записи в таблицу Static MAC Forwarding коммутаторов.

Mikrotik Мониторинг сигнала

snmp_control.pl

snmp_control.pl ((утилита доступна только коммерческим пользователям))

Утилита управления параметрами коммутатора для модуля IPN

установка

cp snmp_control.pl /usr/abills/misc/

настройка

config.pl

$conf{IPN_FILTER}='/home/asm/abills/misc/snmp_control.pl %STATUS %LOGIN %FILTER_ID %PORT';

Возможности

  • Установка скорости на порту.

Параметры фильтра для модуля Dv - PORT_SPEED:1024

  • Установка влана и скорости для порта

Параметры фильтра для модуля Dv - 10:1024
первый параметр это номер влана второй скорость, все остальные параметры система передаёт автоматически при подключении беря из и dhcphosts Протестировано Dlink:

Модель прошивка
DES-3028
DES-3052
DES-3200-18
DES-3200-26
DES-3200-28
DES-3526
DES-3528
DES-3550

Протестировано Edgecore:

Модель прошивка
3526
3528
  • Контроль рабочего, гостевого вланов и скорости на порту.

Рабочий влан:гостевой:скорость в килобитах

10:34:1024

пример проверки с консоли

/usr/abills/misc/snmp_control.pl ONLINE_ENABLE test 1173:1172:2024 1 DEBUG=3 NAS_MNG_IP_PORT=10.13.1.20 NAS_MNG_PASSWD=public NAS_ID=11
  • Установка статуса порта включить/выключить

для активации этой функции нужно прописать в поле Filter-Id параметр PORT_STATUS

config.pl

$conf{IPN_FILTER}='/usr/abills/misc/snmp_control.pl %STATUS %LOGIN %FILTER_ID %PORT DEBUG=3; echo "%STATUS %LOGIN %FILTER_ID %PORT"';

Параметры программы:

snmp_control.pl (ONLINE_ENABLE|ONLINE_DISABLE|HANGUP) %LOGIN %FILTER_ID %PORT

SHOW_VLANS=[NAS_ID] - Показать Vlan на комутаторах
FILTER_ID=...       - Названеи фильра VLAN:PORT_SPEED
  PORT_STATUS         - Изменении статуса порта
  PORT_SPEED:[speed]  - Изменении скорости порта
  [main_vlan]:[guest_vlan]:[speed] - изменении вланов клиента и скорости
  [main_vlan]:[speed]              - изменении основного влана и скорости
PORT=...            - Порт коммутатора
TP_SPEED=1          - Получать скорость с тарифного плана
IN_ONLY=1           - Шейпер только на входящий трафик
OUT_ONLY=1          - Шейпер только на исходящий трафик
MAIN_VLAN=...       - Номер рабочего Vlan
GUEST_VLAN=...      - Номер гостевого Vlan
RESERV_PORTS=...,.. - Зарезервированные порты (По умолчанию: 25,26,27,28). Для данных портов не применяется правила обрезки скорости и изминения  Vlan
RESET=1             - Обнулить все привязки к Vlan
DEBUG=1..6          - Режим отладки
DHCP_NAS_INFO       - Получить DHCP  информацию о комутаторе
IP=...              - IP адрес клиента

DEVICE_INFO=txt_file- Загрузить список коммутаторов из файла
SNMP_COMMUNITY      - SNMP community для DEVICE_INFO (default: public)
MAC=...             - Искать мак на коммутаторах

help                - Помощь
  

Поиск мака на коммутаторах

./snmp_control.pl DEVICE_INFO=1.txt MAC=a0:f3:c1:e4:95:1b

вывод:

 a0:f3:c1:e4:95:1b 4
   192.168.253.214:49:1
   192.168.253.221:49:1
   192.168.253.112:34:1
   192.168.253.112:34:302
 # IP  комутатора:Порт комутатора:Vlan  коммутатора