Настройка встроенного коллектора

Встроенный NetFlow-коллектор поддерживает NetFlow версий 1, 5 и 7 (9ая версия не поддерживается), sFlow версии 5.

Сконфигурируйте radius.properties, указав порты для приема потоков:

#размер буфера приема
#collector.capture.flow.buffer.capacity=4194304
#рекомендация размера буфера сокета
#collector.capture.flow.socket.buffer.capacity=524288
#количество потоков для порта по умолчанию
#collector.capture.flow.thread.count=10
 
#порт приема для netflow потока
#номер порта
collector.capture.flow.port.1=2001
#тип слушателя - netflow
collector.capture.flow.port.1.type=netflow
#количество потоков для порта
#collector.capture.flow.port.1.thread.count=8
 
#порт приема для sflow потока
#номер порта
collector.capture.flow.port.2=2002
#тип слушателя - sflow
collector.capture.flow.port.2.type=sflow

Коллектор может принимать данные на несколько портов, при этом на один порт может принимать данные только одного типа (netflow или sflow). Для обратной совмесимости в версией 4.6 порт типа netflow может также принимать данные sflow. Для каждого порта прописывается тип слушателя, также можно прописать количество потоков.

Опишите правила деления трафика по услугам в Конфигурации модуля .

netflow.service.link.1=23 IN 81.30.199.0 110-112
netflow.service.link.2=24 IN 81.30.199.12
netflow.service.link.3=25 OUT 0.0.0.0-255.255.255.255
netflow.service.link.4=27 IN 0.0.0.0-255.255.255.255

Читается так:Правило с приоритетом 1 к услуге с кодом 23 привязывается трафик с адреса 81.30.199.0 и с портов 110-112. Правило с приоритетом 2 к услуге с кодом 24 привязывается входящий для клиентов трафик с адреса 81.30.199.12....

Конфигурация состоит из строк следующего формата (разделители-пробелы):

netflow.service.link.<pos>=<sid> <direction> <address> <ports>

где:

  • <pos> - позиция правила, просмотр идёт в порядке позиций;

  • <sid> - код услуги, к которой привязано правило;

  • <direction> - ключевое слово IN или OUT, определяет тип трафика по отношению к клиенту, которое описывает правило;

  • <address> - один диапазон адресов, включая концы, либо одиночный адрес;

  • <ports> - диапазон портов, либо одиночный порт, параметр может быть пропущен.

В каждом правиле можно указать только один диапазон адресов и портов. Для добавления нескольких диапазонов последовательно располагаются несколько правил. В последних позиции должны стоять правила, в которые попадают все входящие и все исходящие пакеты (см. пример), это гарантирует вам что трафик не "потеряется" совсем.

Для того чтобы ассоциировать NAS с коллектором в биллинге добавьте в конфигурации NASа строку:

collector.agent.address=<IP адрес с которого приходит поток для NASа>

После добавления этих строк все адреса клиентов, авторизировавшихся на NASе, будут добавлены на коллекторе и по ним будет сниматься периодическая статистика по количеству потреблённых услуг.

При регистрации адреса на коллектор кроме него самого передаётся адрес агента NetFlow, с которого будет приниматься данные для этого адреса. Это сделано с целью недопущения повторного обсчёта трафика в случае, если трафик идёт от одного клиента к другому.

Для уточнения портов, на которые приходит потоки для NASа, добавьте в конфигурации NASа:

collector.agent.ports=<порты через запятую, на которые приходит статистика данного NASа>

Для применения изменённых настроек коллектора достаточно перезапустить BGRadiusDialup, сохранить конфигурацию, модуля либо изменить что-то в списке NASов. После изменения настроек коллектора проверьте лог collector.log на предмет ошибок разбора конфигурации привязки услуг.

Если вы используете NetFlow и тарифицируете трафики с делением по типам, то для их отображения в отчёте добавьте строку в конфигурации модуля:

traffics=<sid1>/<sid2>/..<sidN>;<title1>/<title2>/..<titleN>

Например:

traffics=1/2;Внешн./Лок.

В этом случае в отчётах по сессиям клиентов через дробь будут выводится наработки по трафикам с кодами услуг 1 и 2 через дробь.Надпись "Внешн./Лок." будут добавлены в заголовок таблицы отчёта по сессиям клиента в Web. Если такая строка не указана в трафиках сессии выводятся суммарный входящий и исходящий трафики по данным RADIUS.

Для возможности предоставления детализации по сессиям необходимо установить IPN модуль, создать в нем источник, соответствующий NASу DialUP-модуля и направить на него дублирующий поток. В конфигурации NASа прописать опции:

#
ipn.module.id=<код экземпляра модуля IPN>
ipn.source.id=<код источника, соответствующего NASу>

В мониторе модуля DialUp отображается всегда трафик по данным RADIUS, использовать его для сверки цены сессий некорректно при обсчёте по данным NetFlow.