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

Исходное сообщение
"Использование netgraph модулей ng_tee и ng_netflow для учета трафика во FreeBSD"

Отправлено opennews , 02-Дек-08 13:08 
"Подсчет трафика с netgraph (http://www.tux.in.ua/articles/969)" - использование netgraph модулей ng_tee и ng_netflow для учета трафика во FreeBSD.

URL: http://www.tux.in.ua/articles/969
Новость: http://www.opennet.me/opennews/art.shtml?num=19181


Содержание

Сообщения в этом обсуждении
"Использование netgraph модулей ng_tee и ng_netflow для учета трафика во FreeBSD"
Отправлено Arti , 02-Дек-08 13:08 
Законный вопрос зачем в этой ситуации ng_tee?

ng_tee копирует данные, да и потом еще в довесок one2many - процессорное время девать чтоли некуда.

ng_netflow отлично вещается непосредственно на интерфейс. Для учета входящего и исходящего трафика достаточно просто задействовать две пары хуков ng_netflow.


"ng_netflow"
Отправлено Andrew Kolchoogin , 03-Дек-08 01:01 
> Для учета входящего и исходящего трафика достаточно просто задействовать
> две пары хуков ng_netflow.

    Сам-то пробовал? А попробуй.

    Но статья -- действительно, дурь полная. Видимо, man по ng_split так никто почитать и не удосужится...


"ng_netflow"
Отправлено Arti , 03-Дек-08 08:36 
Если это роутер ng_netflow c несколькими интерфейсами, то вешаем на разные интерфейсы, при это надо  учесть направление движение трафика, если интерфейс один то вместо ng_tee два ng_split:

mix'ы сплитов подключам к upper и lower; крюк in каждого сплита соединяется с крюком out через пары ifaceX outX ноды ng_netflow.

В конце концов есть ng_ipfw, но в любом случае ng_tee использовать не надо в тем более one2many.


"ng_netflow"
Отправлено Andrew Kolchoogin , 03-Дек-08 15:28 
>  Если это роутер ng_netflow c несколькими интерфейсами, то вешаем на разные интерфейсы

    Нет. (C)

    Учёт траффика будет работать неправильно при наличии адресной трансляции.


"ng_netflow"
Отправлено Arti , 03-Дек-08 16:38 
Я бы не стал так категорично. Особено если учесть, что автор заметки не описал топологию сети, которую планируется считать.

Про NAT речи не идёт, да и то все зависит от того где и что надо считать.

Пример:
роутер c "нетранзитной" AS, 3 интерфейса: два на провайдера и один смотрит на DMZ; обсчитываем DMZ.

Соответвтенно на "провардерских" интерфейсах считаем в одном направлении, на "локальном" в другом. Все замечательно посчитается за исключением трафика (в одну (любую) строну) генерируемого самим этим роутером, однако что кроме BGP должен генерить внешний гейт.

Пример два:
Внешний гейт с NAT и несколькими NAS в DMZ . На внешнем гейте у нас есть NAT; задача считать клиентов NAS.

Соответственно если обсчитывать пользователей NAS, то вещаем ng_netflow на интерфейс внешнего роутера смотрящего на NAS и на самих NAS, понятно что NAS'ах и роутере трафик считается в разном (встречном) направлении.

Описанное выше кстати решает проблему подсчета дважды межабонентского трафика.

Одним словом все зависит от задачи.


"Использование netgraph модулей ng_tee и ng_netflow для учета..."
Отправлено Sky_lord , 03-Дек-08 01:22 
Мммм.... А можно примерчик для учета входящего и исходящего трафика только через ng_netflow без использования ng_tee? Чисто для общего образования - у меня у самого сделано через ng_tee (хотя, конечно, и без one2many - зачем его заюзали - вообще не понятно) и сделать только через ng_netflow сходу не соображу. И не видел нигде никогда подобных примеров... Собственно, вроде непосредственно в man'е и то через tee Было...

"Использование netgraph модулей ng_tee и ng_netflow для учета"
Отправлено Andrew Kolchoogin , 03-Дек-08 15:30 
>Мммм.... А можно примерчик для учета входящего и исходящего трафика только через
>ng_netflow без использования ng_tee?

    Пример есть в мане (работает только с 6.0, во FreeBSD v5.x без ng_tee нельзя никак).
Однако, при наличии адресной трансляции учёт траффика будет неправильным.


"Использование netgraph модулей ng_tee и ng_netflow для учета"
Отправлено SubGun , 02-Дек-08 14:01 
А в чем разница между netflow и ng_netflow? Какие преимущества?

"Использование netgraph модулей ng_tee и ng_netflow для учета"
Отправлено _umka_ , 02-Дек-08 15:05 
netflow это общее название протокола.
ng_netflow реализация в freebsd средствами netgraph.

"Использование netgraph модулей ng_tee и ng_netflow для учета"
Отправлено SubGun , 02-Дек-08 18:59 
Оно-то понятно. Но какая разница в том, что я, используя flow-tools(как пример) буду снимать с цисок статистику через netflow, либо то же самое, но используя flow-tools-ng и ng_netflow? Получу ли я в чем-то выигрыш за счет использования netgraph?

"Использование netgraph модулей ng_tee и ng_netflow для учета"
Отправлено Stell , 02-Дек-08 19:09 
Речь идет о случае, когда netflow снимается не с цисок, а с роутера под FreeBSD - для этого и нужен ng_netflow.

"Использование netgraph модулей ng_tee и ng_netflow для учета"
Отправлено SubGun , 03-Дек-08 10:16 
Упс, понятно. Спасибо за ликбез.

"Использование netgraph модулей ng_tee и ng_netflow для учета"
Отправлено rednikov , 05-Июн-09 09:42 
По моему вы неправы..
ng - наверно от next generation
Это форк от flow-tools