Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
dpi:dpi_components:utilities:ipfixreceiver2 [2023/09/01 08:43] – elena.krasnobryzh | dpi:dpi_components:utilities:ipfixreceiver2 [2024/10/15 13:19] (текущий) – atereschenko | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== ipfixreceiver2 ====== | + | ====== |
+ | {{indexmenu_n> | ||
+ | ===== Введение ===== | ||
+ | |||
+ | ipfixreceiver2 | ||
+ | |||
+ | * Позволяет сохранять полученные данные в необходимом формате в текстовый файл. | ||
+ | * Позволяет реплицировать полученные данные на другие IPFIX коллекторы. | ||
+ | |||
+ | ===== Установка и обновление ===== | ||
+ | |||
+ | ==== CentOS ==== | ||
+ | |||
+ | - Подключите репозиторий VAS Experts < | ||
+ | rpm -Uvh http:// | ||
+ | - Подключите репозиторий [[https:// | ||
+ | - Установите ipfixreceiver2: | ||
+ | - Для обновления ipfixreceiver2 выполните команду: | ||
+ | |||
+ | ===== Файлы поставки ===== | ||
+ | |||
+ | * Файлы с описанием типов полей данных ipfix: \\ < | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | |||
+ | * Примеры конфигурационных файлов с описанием моделей импорта и экспорта данных ipfix: \\ < | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | |||
+ | * Исполняемый файл:< | ||
+ | === CentOS 6 === | ||
+ | |||
+ | * Скрипты для запуска процессов импорта и экспорта данных ipfix:< | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | |||
+ | === CentOS 7 === | ||
+ | |||
+ | * Сервисные файлы для запуска процессов импорта и экспорта данных ipfix:< | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | |||
+ | ===== Параметры запуска программы ===== | ||
+ | Программа ipfixreceiver2 имеет следующие параметры запуска:< | ||
+ | где | ||
+ | --daemon | ||
+ | --umask=mask | ||
+ | --pidfile=path | ||
+ | -h, --help | ||
+ | -fFILE, --config-file=FILE | ||
+ | -v, --version | ||
+ | |||
+ | ===== Конфигурация ===== | ||
+ | |||
+ | Параметры работы программы задаются в .ini файле. | ||
+ | |||
+ | === Секция [connect] === | ||
+ | |||
+ | В данной секции задаются параметры для приема данных ipfix. | ||
+ | * protocol - IP протокол (tcp или udp)\\ :!: При использовании протокола udp необходимо убедиться, | ||
+ | * host - интерфейс, | ||
+ | * port - номер порта | ||
+ | * flow_type - тип принимаемого потока: | ||
+ | * tcp_idle_time - время простоя для tcp соединения, | ||
+ | * tcp_keep_cnt - количество запросов на проверку соединения. По умолчанию 5 | ||
+ | * tcp_keep_interval - интервал между запросами на проверку, | ||
+ | |||
+ | === Секция [dump] === | ||
+ | |||
+ | В данной секции задаются параметры дампа принятых данных в файл. | ||
+ | |||
+ | * delimiter - символ разделителей данных в файле. | ||
+ | * rotate_minutes - через сколько минут закрывать временный файл и переименовывать его в постоянный. | ||
+ | * rotate_flows - через какое количество ipfix записей закрывать временный файл и переименовывать его в постоянный. 0 - отключение данного вида ротации. | ||
+ | * dumpfiledir - каталог для размещения файлов с дампом. В случае отсутствия данного параметра возможна работа программы в режиме репликации ipfix данных (начиная с версии 0.2.6) без сохранения в файлы. | ||
+ | * fileprefix - префикс имени файла с дампом. | ||
+ | * rotateformat - формирует имя файла с дампом. | ||
+ | * extension - расширение файла с дампом. | ||
+ | * temp_file_suffix - суффикс имени временного файла. | ||
+ | * processcmd - команда для запуска при ротации файла. %s задает имя постоянного файла с дампом. | ||
+ | * detach_child - если true, то процесс processcmd отвязывается от процесса ipfixreceiver' | ||
+ | * decode_url - декодировать символы в url при использовании decodepath. | ||
+ | * decode_host - декодировать idna в имени хоста при decodehost. | ||
+ | * decode_referer - декодировать idna в referer при decodereferer. | ||
+ | * reopen_time - через сколько секунд будет предпринята попытка открыть файл для записи дампа после возникшей ошибки с файлом. По умолчанию 30 секунд. | ||
+ | * checkdir - проверять ли на существование dumpfiledir и в случае отсутствия создать каталог (создаются все каталоги из dumpfiledir). По умолчанию true. | ||
+ | * fw_max_elements_in_queue - количество элементов, | ||
+ | * fw_max_queue_size - максимальное количество массивов элементов в очереди. Если на момент добавления в очередь количество находящихся в очереди будет больше, | ||
+ | * bad_characters - символы, | ||
+ | |||
+ | === Секция [InfoModel] === | ||
+ | В данной секции задается xml файл с описанием типа данных в принимаемом потоке ipfix. | ||
+ | * XMLElements - путь к xml файлу с описанием типа данных в формате [[https:// | ||
+ | |||
+ | === Секция [Template] === | ||
+ | В данной секции задается порядок следования данных в принимаемом потоке ipfix и при необходимости фильтр принимаемых данных по идентификатору. | ||
+ | * Elements - список принимаемых данных (через запятую). | ||
+ | * filter_tid - только данные с данным идентификатором будут обрабатываться, | ||
+ | |||
+ | === Секция [ExportModel] === | ||
+ | В данной секции определяется порядок и формат вывода полученных данных. | ||
+ | * Elements - список данных, | ||
+ | |||
+ | ^Формат_вывода^Описание^ | ||
+ | |decode_unsigned|Декодировать как unsinged| | ||
+ | |decode_signed|Декодировать как signed| | ||
+ | |decodeipv4|Декодировать как IPv4 адрес| | ||
+ | |decodeipv6|Декодировать как IPv6 адрес| | ||
+ | |decode_string|Декодировать как строку| | ||
+ | |decode_seconds|Декодировать как дату и время в секундах. Формат вывода по умолчанию ' | ||
+ | |decode_milliseconds|Декодировать как дату и время в миллисекундах. Формат вывода по умолчанию ' | ||
+ | |decodehost|Декодировать как имя хоста| | ||
+ | |decodepath|Декодировать как путь в url| | ||
+ | |decodereferer|Декодировать как referer| | ||
+ | |||
+ | === Секция [stats] === | ||
+ | В данной секции задаются параметры вывода статистики работы программы в telegraf. | ||
+ | * socket_path - путь к datagram socket telegraf' | ||
+ | * interval - через сколько секунд отправлять статистику в telegraf. | ||
+ | * tag - тег, выставляемый в поле ipfix_tag при отправке статистики в telegraf. | ||
+ | |||
+ | === Секция [export] === | ||
+ | |||
+ | *to - задаются адреса коллекторов для экспорта полученных ipfix записей. Формат ip/ | ||
+ | to=10.0.0.2/ | ||
+ | *queue_size - количество элементов в очереди (для каждого адреса назначения из to своя очередь) на отправку. По умолчанию 50000. | ||
+ | *domain - идентификатор домена. По умолчанию 1. | ||
+ | |||
+ | === Секция [logging] === | ||
+ | В данной секции задаются параметры логирования программы. | ||
+ | * loggers.root.level - уровень логирования | ||
+ | * loggers.root.channel - канал для вывода сообщений | ||
+ | * channels.fileChannel.class - класс канала вывода | ||
+ | * channels.fileChannel.path - путь к лог-файлу | ||
+ | * channels.fileChannel.rotation - параметр ротации | ||
+ | * channels.fileChannel.archive | ||
+ | * channels.fileChannel.purgeCount - количество архивных файлов | ||
+ | * channels.fileChannel.formatter.class - класс форматировщика | ||
+ | * channels.fileChannel.formatter.pattern - шаблон для форматировщика | ||
+ | * channels.fileChannel.formatter.times - время | ||
+ | :!: Более подробно ознакомиться с параметрами логирования можно по ссылке [[https:// | ||
+ | |||
+ | ===== Обработка сигнала HUP ===== | ||
+ | |||
+ | При получении сигнала HUP основным процессом программы производится принудительное закрытие временного файла и переименовывание его в постоянный файл (выполняется ротация файлов). | ||
+ | |||
+ | |||
+ | ===== Примеры конфигураций ===== | ||
+ | |||
+ | === Приём ipfix данных === | ||
+ | |||
+ | В файлах / | ||
+ | * При необходимости внести изменения в секцию [connect], указав интерфейс, | ||
+ | * В секции [dump] указать: | ||
+ | * dumpfiledir - каталог, | ||
+ | * rotate_minutes - время, через которое закрывать временный файл, переименовывать его в файл с постоянным именем и выполнить команду из параметра processcmd для действий над полученным файлом. | ||
+ | * processcmd - команду, | ||
+ | * delimiter - символ разделитель между полями данных. | ||
+ | * В секции [ExportModel] указать необходимый порядок следования полей в сохраняемом файле. | ||
+ | |||
+ | === Экспорт ipfix данных | ||
+ | |||
+ | Для экспорта получаемых ipfix данных необходимо внести изменения в конфигурационный файл, путем добавления секции [export] и указания адресов назначения. Например, | ||
+ | < | ||
+ | to = 10.0.0.5/ | ||
+ | Если необходимо задать несколько ipfix коллекторов, | ||
+ | < | ||
+ | to = 10.0.0.5/ | ||
+ |