Ключевые слова:freebsd, netgraph, netflow, traffic, (найти похожие документы)
From: Michail Sgibnev <http://www.dreamcatcher.ru>
Date: Mon, 22 Oct 2005 14:31:37 +0000 (UTC)
Subject: Работа с модулем ядра FreeBSD для генерации NetFlow записей
Оригинал: http://www.dreamcatcher.ru/docs/ng_netflow.html
Модуль ядра FreeBSD для генерации NetFlow записей
На данный момент (13.02.2004) существует 2 ветви модуля
ng_netflow - для FreeBSD 4.х и FreeBSD 5.х (в очень глубокой бете
и на данный момент с трудом работоспособна). Поскольку методика
установки модуля для 5.х ветви неактуальна, рассмотрим случай с
FreeBSD 4.9
После скачивания дистрибутива выполняем следующий нехитрый набор
действий:
irish@free:tar -xzf ng_netflow-0.1.tar.gz
irish@free:cd ng_netflow-0.1
irish@free:ls
CVS Makefile flowctl
ChangeLog README ng_netflow
root@free:make && make install
...процесс идет....
===> ng_netflow
install -o root -g wheel -m 555 ng_netflow.ko /modules
install -o root -g wheel -m 444 ng_netflow.4.gz /usr/share/man/man4
===> flowctlinstall -s -o root -g wheel -m 555 flowctl /usr/local/sbin
install -o root -g wheel -m 444 flowctl.8.gz /usr/share/man/man8
Тестовая машина у нас с одним интерфейсом rl0, случай для
маршрутизатора описан в man достаточно подробно.
Загружаем необходимые модули:
root@free:kldload ng_ether
root@free:kldload ng_tee
root@free:kldload ng_netflow
И делаем окончательную настройку:
root@free:ngctl -f - << EOF
?mkpeer rl0: tee lower right
?connect rl0: rl0:lower upper left
?mkpeer rl0:lower netflow right2left iface0
?name rl0:lower.right2left netflow
?msg netflow: setifindex { iface=0 index=1 }
?mkpeer netflow: ksocket export inet/dgram/udp
?msg netflow:export connect inet/192.168.0.2:4444
?EOF
Где 192.168.0.2 - netflow коллектор
Проверяем:
root@free:flowctl netflow show
SrcIf SrcIPaddress DstIf DstIPaddress Pr SrcP DstP Pkts
rl0 192.168.0.2 rl0 192.168.0.1 6 03f8 006f 5
Вроде работает....
Теперь вся статистика валится по UDP на 192.168.0.2:4444, где ее надо
хранить и собирать. Делать это можно с помощью чего угодно, но сам я
использую Flow-capture.