Skip to end of metadata
Go to start of metadata

/usr/abills/misc/mikrotik/mikrotik_dhcp_leases.pl

Утилита для управления DHCP серверами на микротике.
Основная задача - синхронизировать список статических лиз.

В сравнении с Freeradius DHCP:

  • Нет динамического обновления адресов.

  • Меньше возможностей кастомизации.

  • Внешнее управление шейпером.

  • Нет поддержки опции 82.

Подключите и настройте модули Ipn и Dhcphosts. Настройте DHCP сервера на микротике (по одному на интерфейс(бридж), если их несколько).

По умолчанию, лизы для сети присваиваются dhcp-серверу с именем dhcp_abills_network_%NETWORK_ID%
Удобнее использовать параметр USE_NETWORK_NAME и связывать сети и сервера по имени (имя сети не должно содержать пробелов).

В билинге заведите IPoE (DHCP) сети с названием, равным имени DHCP-сервера на микротике (без учёта регистра).
Заполните хосты абонентов.

Установите скрипт в директорию abills/libexec.

cd /usr/abills/libexec/
 ln -s ../misc/mikrotik/mikrotik_dhcp_leases.pl .

Добавьте в crontab задание синхронизации лиз для нужного сервера доступа. Например для сервера доступа 15

*/5   *    *   *  *  root   /usr/abills/libexec/mikrotik_dhcp_leases.pl NAS_IDS=15 USE_NETWORK_NAME=1

Програма берет текущий список хостов для сервера доступа, список лиз на микротике и после сравнения:

  • Удаляет лизы, которых уже нет или отключённые в биллинге

  • Добавляет лизы, которые добавились или стали активными

Аргументы програмы

NAS_IDS='15'ID серверов доступа для серверов доступа (можно указать несколько через точку с запятой Ex. NAS_IDS='2;3')
VERBOSE=0Выдача информации по исполнению
CLEAN=0Очистить все генерированые лизы з сервера доступа
RECONFIGURE=0Очистить и снова добавить все лизы
DHCP_NAME_PREFIX='dhcp_abills_netwok_'Префикс для имени сервера доступа, позволяет связывать сети и dhcp-сервера на микротике по ID сети
USE_NETWORK_NAME=0Связывает сети в билинге с dhcp серверами по имени сети
SKIP_DHCP_NAME=0Не проверять соответствие имён серверов доступа и сетей, добавляет лизы для всех dhcp серверов
USE_ARP=0Включает ARP для DHCP-сервера. Не совместим с параметром SKIP_DHCP_NAME
DISABLE_ARP=0Выключает ARP для DHCP-сервера. Не совместим с параметром SKIP_DHCP_NAME
DEBUG=0Устанавливает уровень режима отладки
  • No labels