billing:howto:mikrotik_cache

В Mikrotik Router OS есть возможность хранить пользователей локально. Полезное свойство, на тот случай если произошла поломка биллинга и radius сервер не доступен. Идея заключается в том что в определённое время сервер с биллингом генерирует файл с пользователями для сервисов pppoe-pptp и затем делает выгрузку на удалённый mikrotik. Mikrotik в свою очередь отслеживает доступность сервера с биллингом и если не получен ответ, то активируются записи в разделе Secret. Записи в Secret имеют приоритет перед Radius запросами, поэтому они должны быть выключенными.

Перейдём к настройке:

1. Сделайте авторизацию по ключу между микротиком и сервером, читать тут.

2. Скачайте свежий дистрибутив mikbill, в папке DISTR/caсhe-system архив mikrotik-cache.tar.gz. Перенесите этот архив на сервер с биллингом. Разархивируйте архив. В папке billing файлы которые нужно перенести на сервер с биллингом, согласно внутренней иерархии.

3. Проверьте настройки Микротика в Справочнике NAS:

  • Галка на Использовать SSH
  • Тип NAS - Mikrotik
  • Тип шейпера - Radius

4. Проверьте создание файла с пользователями, для этого перейдите в каталог

cd /var/www/mikbill/admin/res/cache

запустите скрипт

php mikrotik-ppp.php

Должен появится скрипт users.rcs

5. Проверьте выполнение этого файла на микротике.

Должны создаться профили в PPP→Profiles, с помощью них будет ограничиваться скорость пользователям, данные берутся на основе тарифов в биллинге. Каждая учетная запись привязана к профилю.

 |

Создание записей пользователей в PPP→Secret также проверьте.

 |

6. Теперь добавьте в Netwatch следующее:

IP Вашего сервера

 |

В событие "Up" добавьте команду

/ppp secret disable [find]
 |

В событие "Down" добавьте команду

/ppp secret enable [find]
 |

Т.е. при потери связи с биллингом, микротик активирует учетные записи в PPP→Secret. Данный метод конечно не распространяется на тот случай если возникли неполадки в работе MySQL или Radius, но Вы всегда можете быстро активировать учётные записи в ручном режиме. Удаленный тест микротиком работы Radius сервера будет в следующих наших релизах.

7. Ну и не забудьте добавить на сервере задание в планировщик:

5 5 * * * root /var/www/mikbill/admin/sys/scripts/cache_sys
  • billing/howto/mikrotik_cache.txt
  • Последнее изменение: 9 лет назад
  • sergeev