https://github.com/illarionov/rdr2netflow
Cisco SCE RDRv1 to Netflow v5 converter
https://github.com/illarionov/rdr2netflow
Last synced: 7 months ago
JSON representation
Cisco SCE RDRv1 to Netflow v5 converter
- Host: GitHub
- URL: https://github.com/illarionov/rdr2netflow
- Owner: illarionov
- Created: 2012-10-11T23:27:44.000Z (almost 13 years ago)
- Default Branch: master
- Last Pushed: 2013-04-19T07:07:32.000Z (over 12 years ago)
- Last Synced: 2023-03-11T11:48:14.256Z (over 2 years ago)
- Language: C
- Homepage:
- Size: 174 KB
- Stars: 6
- Watchers: 4
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README
- Changelog: ChangeLog
Awesome Lists containing this project
README
RDR 2 Netflow
==============Программа принимает поток формата RDRv1 с Cisco SCE - экспортера, преобразует
его в формат Netflow v5 и отправляет на Netflow коллектор.Установка
==========Во FreeBSD вместо make нужно использовать gmake (GNU make)
$ git clone git://github.com/littlesavage/rdr2netflow.git
$ cd rdr2netflow
$ make
$ su
# make installДля конечной установки рекомендуется использовать систему инициализации с
возможностью автоматического перезапуска: Daemontools, Runit, Launchd, Upstart,
либо Supervisor.
При большом трафике также рекомендуется увеличить размер приемного буфера
(ключ -b), предварительно увеличив ограничение ОС - net.core.rmem_max в Linux,
kern.ipc.maxsockbuf во FreeBSD.Пример запуска из runit:
$ cat /etc/service/rdr2netflow/run
#!/bin/sh
exec 2>&1
exec chpst -u nobody /usr/local/bin/rdr2netflow -s 192.168.1.202 -p 9999 \
-d 127.0.0.1 -P 9995 -V 1 -b 16777216$ cat /etc/service/rdr2netflow/log/run
#!/bin/sh
exec chpst -u log svlogd -tt /var/log/rrd2netflowИспользование
==============Usage:
rdr2netflow [-h] [options]Options:
Address to bind for listening (default any)
-s
-p Specifies the port number to listen (default 10000)
-d Send netflow to this remote host (default 127.0.0.1)
-P Remote port (default 9995)
-R RDR Repeater: send all incoming packets to this host
-F ip[/net][,...] Comma-separated list of networks to be excluded from the dump
-b Set send buffer size in bytes.
-V Verbose output
-h, --help Help
-v, --version Show version-s и -p задают IP адрес и порт, на котором будет приниматься RDRv1 поток (TCP).
-d и -P задают адрес и порт Netflow V5 коллектора (UDP).
-V задает уровень подробности логов:
-V 1 - минимальный уровень
-V 10 - дамп всех пакетов RDR TRANSACTION USAGE (TUR) и заголовков остальных RDR.
-V 100 - подробный дамп всех RDR пакетов.-R host/port - Отправлять принятый RDR поток на заданных узел. Порт назначения
указывается через '/'. Можно указать несколько раз, чтобы отправлять на
несколько хостов одновременно.
-E ip[/net][,...] - IP фильтр. Разделенный запятыми список IP сетей, которые будут
исключены из Netflow дампа.Пример
Принимать RDR на 192.168.1.202:9999 и отправлять Netflow на 127.0.0.1:9995:
$ rdr2netflow -s 192.168.1.202 -p 9999 -d 127.0.0.1 -P 9995 -V 1
Известные ограничения и недоработки
====================================Не заполняются поля Netflow: nexthop, input_if, output_if, pkts, tcp_flags,
tos, src_as, dst_as, src_mask, dst_mask. Если вы знаете, где в RDR
значения каких-либо из этих полей, сообщите нам.Поле Netflow sys_uptime - это не uptime экспортера, а время самого раннего
потока с момента запуска rdr2netflow.Поле Netflow last (uptime во время приема последнего пакета)
вычисляется из REPORT_TIME RDR. Т.е. это не время последнего пакета и точность
здесь секундная.rdr2netflow может принимать потоки с нескольких экспортеров, но отправляться
они будут на один коллектор с одним и тем же engineID|engineType.При включенных RDR interim TUR, в промежуточных TUR'ах счетчики
SESSION_UPSTREAM_VOLUME и SESSION_DOWNSTREAM_VOLUME обнуляются после каждого
отчета, а MILLISEC_DURATION продолжает накапливаться. На данный промежуточные
TUR экспортируются в netflow, но длительность потока вычисляется неверно.Авторы
=======Александр Морозов
Алексей Илларионов