Учёт нескольких классов трафика
Данная схема предусматривает учёт разных классов трафика: интернет, пиринговый, локальная сеть провайдера.
Настройка сервера доступа
Настройка Mikrotik для подсчета трафика
Нам нужно настроить Микротик чтоб он слушал и отправлял flow пакеты на биллинг сервер для их последующей обработки с помощью колектора (flow-tools).
В консоли Микротика :
/ip traffic-flow set enabled=yes /ip traffic-flow target add dst-address=10.0.0.10 port=9996 version=5 /ip traffic-flow set interfaces=ether3 active-flow-timeout=30m inactive-flow-timeout=15s cache-entries=4k enabled=yes ;
в данном случае нам интересны 2 параметра :
ether3 | интерфейс на котором слушать |
10.0.0.10 | адрес сервера обработки flow пакетов (Сервер биллинга) |
Конфигурация параметров сервера доступа (Mikrotik) в веб интерфейсе администратора
Перейти в меню Настройка>Сервер доступа и завести новый сервер доступа.
ID | Номер сервера доступа |
---|---|
IP | IP адрес |
Название: | Название |
Radius NAS-Identifier: | Дополнительный идентификатор сервера доступа. Использовать только в случае если на одно IP адресе используется несколько серверов доступа |
Описание: | Описание |
Тип: | Тип |
ExternalAccounting: | Указывает что данные для аккаунтинга берутся не с RADIUS сервера, а с внешнего источника. Обязательно включаем опцию! |
Alive (sec.): | Период между RADIUS Alive пакетами. Используется для проверки активности абонента. Если на протяжении 3 ALive пакетов от сервера доступа не было никаких данных система завершает сесию |
Отключено: | |
:Управление: | |
IP:PORT: | IP и порт для управления сервером доступа |
Пользователь: | Пользователь для управления |
Пароль: | Пароль для управления |
Конфигурация тарифных планов
Перейти в меню Настройка>Интернет+>Тарифные планы для создания тарифного плана.
После создания тарифного плана переходим в Интервалы и создаём временной интервал работы.
После создания работы во временном интервале заводим класс трафика
После успешной конфигурации все должно выглядеть так
Подключение модуля трафик анализатора
cd /usr/abills/libexec/ ln -s ../Abills/modules/Ipn/trafdstats trafdstats ln -s ../Abills/modules/Ipn/traffic2sql traffic2sql
Создать таблицы в базе
mysql -D abills < db/Ipn.sql
abills/libexec/config.pl
flow-tools
http://www.splintered.net/sw/flow-tools/
Пакет утилит для работы с NetFlow потокамиотправляемыми маршрутизаторами Cisco или Juniper.
cd /usr/ports/net-mgmt/flow-tools make make install
Запускаем
flow-capture -S 5 -n 287 -N 0 -d 5 -w /usr/abills/var/log/ipn/ 0/0/9996
Автоматический старт при загрузке в FreeBSD:
chown flowtools /usr/abills/var/log/ipn/
/etc/rc.conf
flow_capture_enable="YES" flow_capture_datadir="/usr/abills/var/log/ipn/" flow_capture_port="9996" flow_capture_flags="-S 5 -n 287 -N 0 -d 5"
Запуск скрипта обработки статистики /etc/crontab
*/5 * * * * root /usr/abills/libexec/traffic2sql 8 flowdir=/usr/abills/var/log/ipn/
Здесь 8 - NAS_ID сервера доступа с которого учитываем трафик