Прием IPFIX данных ipfixreceiver [Документация VAS Experts]

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
dpi:dpi_components:utilities:oldutility:ipfixreceiver [2020/09/21 07:08] – ↷ Операцией перемещения обновлены ссылки lexx26dpi:dpi_components:utilities:oldutility:ipfixreceiver [2024/09/26 15:29] (текущий) – внешнее изменение 127.0.0.1
Строка 7: Строка 7:
 ==== CentOS6 ==== ==== CentOS6 ====
  
-  - подключите репозиторий VAS Experts аналогично п.1 инструкции [[dpi:dpi_options:dpi_divert_spec:star:dpi:dpi_components:platform:dpi_update:dpi_update_10:dpi_10_update:start|установки DPI]].+  - подключите репозиторий VAS Experts <code>rpm --import http://vasexperts.ru/centos/RPM-GPG-KEY-vasexperts.ru 
 +rpm -Uvh http://vasexperts.ru/centos/6/x86_64/vasexperts-repo-1-0.noarch.rpm</code>
   - установите ipfixreceiver:\\ <code>yum install -y ipfixreceiver</code>   - установите ipfixreceiver:\\ <code>yum install -y ipfixreceiver</code>
   - проверьте изменения в конфигурационных файлах на соответствие версии см. раздел "Важные изменения"   - проверьте изменения в конфигурационных файлах на соответствие версии см. раздел "Важные изменения"
  
 ==== CentOS7 ==== ==== CentOS7 ====
-  - подключите репозиторий VAS Experts аналогично п.1 инструкции [[dpi:dpi_options:dpi_divert_spec:star:dpi:dpi_components:platform:dpi_update:dpi_update_10:dpi_10_update:start|установки DPI]].+  - подключите репозиторий VAS Experts <code>rpm --import http://vasexperts.ru/centos/RPM-GPG-KEY-vasexperts.ru 
 +rpm -Uvh http://vasexperts.ru/centos/6/x86_64/vasexperts-repo-1-0.noarch.rpm</code>
   - установите репозиторий epel <code>yum -y install epel-release</code>   - установите репозиторий epel <code>yum -y install epel-release</code>
   - установка репозитория forencis: <code>rpm --import https://forensics.cert.org/forensics.asc   - установка репозитория forencis: <code>rpm --import https://forensics.cert.org/forensics.asc
Строка 24: Строка 26:
   - изменен конфигурационный файл в части преобразования IP адресов, с версии 1.0.3 необходимо указывать decodeipv4, decodeipv6 в экспортной модели, пример:<code>  source_ip4, decodeipv4</code><code>  destination_ip4, decodeipv4</code>   - изменен конфигурационный файл в части преобразования IP адресов, с версии 1.0.3 необходимо указывать decodeipv4, decodeipv6 в экспортной модели, пример:<code>  source_ip4, decodeipv4</code><code>  destination_ip4, decodeipv4</code>
   - сохранение информации в файл вынесено в отдельный процесс, учитывайте что при большом количестве сессий (>25k сес/сек) процесс будет полностью загружать 2 ядра процессора. Для проверки, что процесс успевает обработать весь поток данных в режиме DEBUG добавлены сообщения\\ (a)cnt=NNNNN - отправлен буфер с данным номером\\ (b)cnt=YYYYY - сохранен буфер с данным номером.   - сохранение информации в файл вынесено в отдельный процесс, учитывайте что при большом количестве сессий (>25k сес/сек) процесс будет полностью загружать 2 ядра процессора. Для проверки, что процесс успевает обработать весь поток данных в режиме DEBUG добавлены сообщения\\ (a)cnt=NNNNN - отправлен буфер с данным номером\\ (b)cnt=YYYYY - сохранен буфер с данным номером.
-  - введен параметр buffer_size - размер буфера обмена между процессом приема и записи в файл, используется в разделе [dump], по умолчанию значение параметра 100000 записей (ориентировано на 20Гбит трафика или 25 000 сессий в сек). Если к-во сессий в секунду значительно меньше, то обязательно пропорционально измените данный параметр. +  - введен параметр buffer_size - размер буфера обмена между процессом приема и записи в файл, используется в разделе [dump], по умолчанию значение параметра 100000 записей (ориентировано на 20Гбит трафика или 25 000 сессий в сек). Если количество сессий в секунду значительно меньше, то обязательно пропорционально измените данный параметр. 
  
 ===== Файлы поставки ===== ===== Файлы поставки =====
Строка 53: Строка 55:
     endscript     endscript
 }</code> \\ Обратите внимание на использование метода copytruncate, иначе файл будет пересоздан и запись лога из процесса прекратится.\\ Соответственно в конфигурации ipfixreceiver у вас в разделе [handler_ipfixreceiverlogger] указано следующее:\\ <code>args=('/var/log/dpiuiflow.log', 'a+')</code> }</code> \\ Обратите внимание на использование метода copytruncate, иначе файл будет пересоздан и запись лога из процесса прекратится.\\ Соответственно в конфигурации ipfixreceiver у вас в разделе [handler_ipfixreceiverlogger] указано следующее:\\ <code>args=('/var/log/dpiuiflow.log', 'a+')</code>
-  - Настройте удаление старых файлов. Например удаление старых архивов (более 31 дня) с записями о сессиях запакованных gzip:\\ <code>15 4 * * * /bin/find /var/dump/dpiui/ -name url_\*.dump.gz -cmin +44640 -delete > /dev/null 2>&1</code>\\ Измените строчку под ваши требования и добавьте в файл /var/spool/cron/root.+  - Настройте удаление старых файлов. Напримерудаление старых архивов (более 31 дня) с записями о сессиях запакованных gzip:\\ <code>15 4 * * * /bin/find /var/dump/dpiui/ -name url_\*.dump.gz -cmin +44640 -delete > /dev/null 2>&1</code>\\ Измените строчку под ваши требования и добавьте в файл /var/spool/cron/root.
  
 ===== Параметры запуска программы ===== ===== Параметры запуска программы =====
-Утилита ipfixreceiver имеет следующие параметры запуска :+Утилита ipfixreceiver имеет следующие параметры запуска:
 <code>usage: ipfixreceiver start|stop|restart|status|-v [-f <config file>] <code>usage: ipfixreceiver start|stop|restart|status|-v [-f <config file>]
 где где
Строка 71: Строка 73:
 ===== Конфигурация ===== ===== Конфигурация =====
  
-По умолчанию используется файл конфигурации /etc/dpiui/ipfixreceiver.conf .\\ +По умолчанию используется файл конфигурации /etc/dpiui/ipfixreceiver.conf.\\ 
 :!:Больше информации о конфигурировании логирования можно найти по ссылке [[https://docs.python.org/2.6/library/logging.html | Logging ]] :!:Больше информации о конфигурировании логирования можно найти по ссылке [[https://docs.python.org/2.6/library/logging.html | Logging ]]
  
Строка 109: Строка 111:
 ==== dump ==== ==== dump ====
   - rotate_minutes - период в минутах, по прошествии которого временный файл в dumpfiledir/<port>.url.dump будет перемещен в архив (mv) и создан новый временный файл.<code>rotate_minutes=10</code>   - rotate_minutes - период в минутах, по прошествии которого временный файл в dumpfiledir/<port>.url.dump будет перемещен в архив (mv) и создан новый временный файл.<code>rotate_minutes=10</code>
-  - processcmd - команда которая будет запущена по окончании ротации файла, параметр имя файла с путем к нему.<code>processcmd=gzip %%s</code>+  - processcmd - командакоторая будет запущена по окончании ротации файла, параметр имя файла с путем к нему.<code>processcmd=gzip %%s</code>
   - dumpfiledir - директория куда будут сохраняться файлы с принятыми данными. <code>dumpfiledir=/var/dump/dpiui/ipfixflow/</code>   - dumpfiledir - директория куда будут сохраняться файлы с принятыми данными. <code>dumpfiledir=/var/dump/dpiui/ipfixflow/</code>
-  - buffer_size - размер буфера обмена между процессом приема и записи в файл, по умолчанию значение параметра 100000 записей (ориентировано на 20Гбит трафика или 25 000 сессий в сек). Если к-во сессий в секунду значительно меньше, то обязательно пропорционально измените данный параметр. +  - buffer_size - размер буфера обмена между процессом приема и записи в файл, по умолчанию значение параметра 100000 записей (ориентировано на 20Гбит трафика или 25 000 сессий в сек). Если количество сессий в секунду значительно меньше, то обязательно пропорционально измените данный параметр. 
  
 ==== InfoModel ==== ==== InfoModel ====
Строка 150: Строка 152:
  
 Наименование полей и описание можно взять по ссылкам:\\ Наименование полей и описание можно взять по ссылкам:\\
-  - [[dpi:dpi_options:opt_statistics:statistics_ipfix:start|Шаблон экспорта Netflow в формате IPFIX]] +  - [[dpi:dpi_options:opt_statistics:statistics_ipfix|Шаблон экспорта Netflow в формате IPFIX]] 
-  - [[dpi:dpi_options:opt_li:li_ipfix:start|Шаблоны экспорта clickstream и SIP]] +  - [[dpi:dpi_options:opt_li:li_ipfix|Шаблоны экспорта clickstream и SIP]] 
-  - [[dpi:dpi_components:radius:radmon_acct_ipfix:start|Шаблон экспорта AAA в формате IPFIX]]+  - [[dpi:dpi_components:radius:radmon_acct_ipfix|Шаблон экспорта AAA в формате IPFIX]]
  
  
Строка 185: Строка 187:
 </code> </code>
  
-==== Создаем сервис в Centos7 ==== +==== Создаем сервис в CentOS7 ==== 
-Создание сервиса в centos7 по шагам, название сервиса **ipfix1**, используемая конфигурация **/etc/dpiui/ipfixreceiver.conf**, используемый порт **1500**. \\+Создание сервиса в CentOS7 по шагам, название сервиса **ipfix1**, используемая конфигурация **/etc/dpiui/ipfixreceiver.conf**, используемый порт **1500**. \\
 Создаем файл /etc/systemd/system/ipfix1.service следующего содержания: Создаем файл /etc/systemd/system/ipfix1.service следующего содержания:
 <code> <code>
Строка 220: Строка 222:
   - как понять, что утилита работает?\\ a) проверьте, что порт из конфигурации прослушивается утилитой, например 1500:<code>netstat -nlp | grep 1500</code> b) проверьте лог, нет ли ошибок\\ c) Проверьте, что запись в промежуточный файл происходит, например для 9996 порта (директория для файлов - /var/dump/dpiui/ipfixurl): <code>tail -f /var/dump/dpiui/ipfixurl/9996.url.dump</code>   - как понять, что утилита работает?\\ a) проверьте, что порт из конфигурации прослушивается утилитой, например 1500:<code>netstat -nlp | grep 1500</code> b) проверьте лог, нет ли ошибок\\ c) Проверьте, что запись в промежуточный файл происходит, например для 9996 порта (директория для файлов - /var/dump/dpiui/ipfixurl): <code>tail -f /var/dump/dpiui/ipfixurl/9996.url.dump</code>
   - все проверено, но приема сообщений нет?\\ a) забыли открыть порт в iptables.\\ b) инициализировали ipfixreceiver с неверным IP сервера.   - все проверено, но приема сообщений нет?\\ a) забыли открыть порт в iptables.\\ b) инициализировали ipfixreceiver с неверным IP сервера.
-  - с DPI идет большое количество сессий (более 2 млн сессий/мин), при включенном DEBUG режиме видно, что счетчик обмена буферами не успевает записать до получения следующего блока записей, что можно сделать?\\ a) удалите преобразование даты в строку, это уменьшит процессорное время на обработку и дополнительно получите уменьшение объема результирующего файла\\ b) удалите преобразование decodeipv4, не значительно, но так же получите ускорение записи файла\\ c)настройте buffer_size при к-ве сес /сек более 30к совместно с п.d\\ d) увеличьте частоту процессора и объем памяти+  - с DPI идет большое количество сессий (более 2 млн сессий/мин), при включенном DEBUG режиме видно, что счетчик обмена буферами не успевает записать до получения следующего блока записей, что можно сделать?\\ a) удалите преобразование даты в строку, это уменьшит процессорное время на обработку и дополнительно получите уменьшение объема результирующего файла\\ b) удалите преобразование decodeipv4, незначительно, но так же получите ускорение записи файла\\ c) настройте buffer_size при к-ве сес /сек более 30к совместно с п.d\\ d) увеличьте частоту процессора и объем памяти