Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Войти
 
Страницы: 1
RSS
flow-tools. агрегация
 
Добрый день.
Задача стоит следующая: получаю flows v5, в зависимости от ситуации необходимо выдавать чистую или агрегированную инфу по разным данным(src, dst).
Использую для этого flow-tools.
В описании сказано, что агрегирование можно настроить только на этапе получения(в flow-capture). Но мне это не подходит.
Подскажите, есть ли способ делать агрегирование на этапе обработки уже полученной инфы?

Для вывода отчетов использую вот это

Код
flow-cat path/to/logs | flow-filter -r 6 | flow-export -f 2 -m DFLOWS,DPKTS,DOCTETS,FIRST,LAST,SRCADDR,DSTADDR,SRCPORT,DSTPORT,PROT

Спасибо.
Изменено: alex21 - 12.02.2013 16:53:49
 
.Я делаю так :
1. Принимаю flow-capture поток вот с такими параметрами -  flow-capture -R /usr/local/bin/flowcount.pl -S 15 -z 5 -n 95 -N 2 -w /var/flows 0/0/9991 На перловый скрипт внимания не обращайте - он просто парсит tmp-файл (текущий) и складирует его в базу по опредленным критериям - к делу это отношения не имеет.
2. После прошествия 15-минутного интерваала файл складируется в директорию /var/flows/2013/2013-02 (это в текущем году и в текущем месяце, если) в виде - ft-v05.2013-02-06.230000+0400 (например).
3. Теперь предположим, что мне нужна детализация по некоему IP 192.168.0.1 Лезу в директорию /etc/flow-tools/cfg И правлю файл filter.cfg вот так:
filter-primitive traf
   type ip-address
   permit 192.168.0.1
   default deny
4. Ниже заранее созданы вот такие примитивы:
filter-definition dst
   match dst-ip-addr traf

filter-definition src
   match src-ip-addr traf

filter-definition both
   match src-ip-addr traf
   or
   match dst-ip-addr traf
5. Допустим, мне нужны данные по трафику за некое число (например 5 февраля) в "оба конца" (примитив выше - both. ФОрмирую вот такую безумную команду:
flow-cat /var/flows/2013/2013-02/ft-v05.2012-02-05* | flow-nfilter -Fboth | flow-export -f2 -mUNIX_SECS,DOCTETS,FIRST,LAST,SRCADDR,DSTADDR,SRCPORT,DSTPORT,PROT > имя_файла
Потом я обрабатываю получившийся файл скриптом на баше - который распарсивает это все в удобоваримый текст, одновременно переводя юникстайм в москау.
А вот такой командой можно получить трафик от большего к меньшему для входящего (относительно пользователя) трафика - flow-cat /var/flows/2009/2009-04/ft-v05.2009-05-07* | flow-nfilter -Fdst |flow-stat -f9 -S2 > имя_файла
Ну вот где-то так.
 
Спасибо за Ваш ответ, но все таки не совсем понятно чем вот эта команда

Код
flow-cat /var/flows/2013/2013-02/ft-v05.2012-02-05* | flow-nfilter -Fboth ...
будет отличаться от

Код
flow-cat /var/flows/2013/2013-02/ft-v05.2012-02-05* | flow-filter -D 192.168.0.1 -S 192.168.0.1 ...

Заранее прошу прощения, если неправильно понял :D
 
Возможно, и ничем. По крайней мере - из мануала я особой разницы и не увидел. А смотреть подробно было, честно говоря, неохота. Я как-то давно flow-nfilter использую. Работает - и ладно.  :)
 
SOLDIER, скажи пожалуйста, тут

Код
filter-primitive traf         type ip-address         permit 192.168.0.1         default deny 
в permit можно указать несколько адресов? или для каждого нужен отдельный примитив?
 
man flow-nfiler, не?  :)  Смотрим примитив ip-address
Где-то вот так.
filter-primitive test-address
  type ip-address
  permit 0.0.0.1
  permit 0.0.0.2
  default deny
 
Цитата
SOLDIER пишет:
man flow-nfiler, не?  :)  
Ага, уже. Сначала спросил, потом подумал  :)
Страницы: 1
Читают тему