URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 93033
[ Назад ]

Исходное сообщение
"Подсчёт трафика: посоветуйте ПО для локалки"

Отправлено skeletor , 14-Фев-12 14:14 
Нужно считать трафик для каждого хоста в локалке. Есть требования:

- нужно считать отдельно трафик для каждого IP в локалке отдельно
- ПО должно быть как можно проще
- остальное - не важно.

Пробовал bpft (продолжение от trafd), но не в зависимости от того, как часто снимаю статистику (хоть каждую минуту) нельзя получить статистику, так как постоянно пишет

traflog: WARNING: table too big to fit into memory

гугл ничего толкового не даёт по этому поводу.

Содержание

Сообщения в этом обсуждении
"Подсчёт трафика: посоветуйте ПО для локалки"
Отправлено Punck , 14-Фев-12 14:26 
> Нужно считать трафик для каждого хоста в локалке. Есть требования:
> - нужно считать отдельно трафик для каждого IP в локалке отдельно
> - ПО должно быть как можно проще
> - остальное - не важно.
> Пробовал bpft (продолжение от trafd), но не в зависимости от того, как
> часто снимаю статистику (хоть каждую минуту) нельзя получить статистику, так как
> постоянно пишет
>
traflog: WARNING: table too big to fit into memory

> гугл ничего толкового не даёт по этому поводу.

http://sadmin.org.ru/articles/55/2/
Вполне нормально считает. Там на сайте есть 4-ая версия, и даже сертифицированная, можно попробывать её.


"Подсчёт трафика: посоветуйте ПО для локалки"
Отправлено Pahanivo , 14-Фев-12 14:54 
> Нужно считать трафик для каждого хоста в локалке. Есть требования:
> - нужно считать отдельно трафик для каждого IP в локалке отдельно
> - ПО должно быть как можно проще
> - остальное - не важно.
> Пробовал bpft (продолжение от trafd), но не в зависимости от того, как
> часто снимаю статистику (хоть каждую минуту) нельзя получить статистику, так как
> постоянно пишет
>
traflog: WARNING: table too big to fit into memory

> гугл ничего толкового не даёт по этому поводу.

самое простое снимать счетчики с правил фаревола - вообще просто и никакой нагрузки
ну а подетальней - netflow (flow-tools)+сенсор


"Подсчёт трафика: посоветуйте ПО для локалки"
Отправлено skeletor , 14-Фев-12 15:09 
> самое простое снимать счетчики с правил фаревола - вообще просто и никакой
> нагрузки
> ну а подетальней - netflow (flow-tools)+сенсор

Это нужно на каждый хост вешать своё правило - не удобно


"Подсчёт трафика: посоветуйте ПО для локалки"
Отправлено Pahanivo , 14-Фев-12 15:29 
>> самое простое снимать счетчики с правил фаревола - вообще просто и никакой
>> нагрузки
>> ну а подетальней - netflow (flow-tools)+сенсор
> Это нужно на каждый хост вешать своё правило - не удобно

а скрепты нашто?

for loop in 1..254
do
    rule for 192.168.0.$loop
done

юзай флоу  - подитальней + во флоутулзах есть и фильтра и обсчет статы ... только это дисковое пространство при интенсивном обмене ...


"Подсчёт трафика: посоветуйте ПО для локалки"
Отправлено nix , 14-Фев-12 23:53 
>[оверквотинг удален]
>>> нагрузки
>>> ну а подетальней - netflow (flow-tools)+сенсор
>> Это нужно на каждый хост вешать своё правило - не удобно
> а скрепты нашто?
> for loop in 1..254
> do
>     rule for 192.168.0.$loop
> done
> юзай флоу  - подитальней + во флоутулзах есть и фильтра и
> обсчет статы ... только это дисковое пространство при интенсивном обмене ...

Все проще. Генерируете netflow-поток для внутренней сетевой карты. Делается это нетграфом

#!/bin/sh

# PROVIDE: ngnetflow
# REQUIRE: DAEMON
# KEYWORD: shutdown

. /etc/rc.subr

name="ngnetflow"
rcvar=`set_rcvar`
command="/usr/sbin/ngctl"
load_rc_config $name
: ${ngnetflow_enable="NO"}
: ${ngnetflow_iface=""}
: ${ngnetflow_dst=""}

start_cmd="${name}_start"
stop_cmd="${name}_stop"

ngnetflow_start() {
/usr/sbin/ngctl -f- <<-SEQ
mkpeer ${ngnetflow_iface}: netflow lower iface0
name ${ngnetflow_iface}:lower netflow
connect netflow: ${ngnetflow_iface}: iface1 upper
connect netflow: netflow: out0 out1
mkpeer netflow: ksocket export inet/dgram/udp
name netflow:export ksocket
msg ksocket: connect inet/${ngnetflow_dst}
SEQ
}

ngnetflow_stop() {
/usr/sbin/ngctl -f- <<-SEQ
shutdown netflow:
SEQ
}

run_rc_command "$1"

В /etc/rc.conf пишите свои параметры. На 127.0.0.1:2001 лично у меня слушает pmacct, который собственно и занимается обработкой этого потока. Вы же можете использовать любую другую тулзу.

ngnetflow_enable="YES"
ngnetflow_iface="sk1"
ngnetflow_dst="127.0.0.1:2001"