LINUX.ORG.RU
ФорумAdmin

Считалка трафика.....


0

0

Есть такой сетап:
Router (железяка весьма глупая) он роутит небольшую сеточку с настоящими адресами, в этой сетке firewall (linux-box) а за ним еще linux-box с маскарадингом, который и пущает в инет кучу клиентов.
Не подскажет ли уважаемый all какой-нибудь толковый софт по подсчету трафика - в принципе требований не многа -
возможность задать что является локальным-нелокальным трафиком (i.e. какие сети считать локальными а какие нет), отчеты типа: просто подсчет саммари на каждого клиента (по локальному и/или наружнему трафику), суммарный трафик за период и т.п.

В общем что-то типа ntop - но попроще и понадежней - а то хоть ntop красив и фичаст - но уж сильно падуч, баглив, и как-то невнятно (имхо) выдает статистику. Короче чтобы простой был и нанадежный....

Еще я так понимаю что для полного счастья софт ентот придется поставить и на маскарадный бокс и на firewall - в небольшой сети тоже траффик наружу есть и статистику по ней тоже хочется иметь.....

Вроде бы обычная задача :-))) Но я что-то толкового софта под линух так и не видел :-(((((

Заранее всем спасиба!!!


Ну особливо по поводу готового не знаю. Но вообще на линуксе для этого
часто используют ipchains. Если сделать ipchains -nvxL > file, а потом
поглядеть данный файл, то для каждого правила в первых двух столбцах
количество пакетов и количество байт, для которых это правило
выполнилось - то есть ядро все это дело считает. А дальше можно заглянуть
в секцию NOTES в man ipchains. Там как-то вскользь рекомендуется создать
для подсчета отдельные цепочки (для входящего и исходящего траффика
отдельно) без -j <target> (у пользовательской цепочки действие по
умолчанию всегда RETURN - вернуться в "родительскую" цепочку).
Если сказать ipchains -nvxL <chain> > file, то выводится только <chain>,
что позволяет отсечь лишнее. Дальше уже методом написания собственных
скриптиков кто во что горазд :).

Если считать на маскарадере - то есть одна маленькая тонкость: пакеты
в цепочке OUTPUT на внешнем интерфейсе - уже от его (внешнего интерфейса)
адреса, а в цепочке INPUT на нем же - адресованы на него. Поэтому считать
приходится на внутреннем интерфейсе.

Вот вроде и все...

Dimai
()

В принципе, я на днях слепил подобную прогу. Тоже работает через ipchains, но информацию получает не при помощи команы "L", а получает лог всего трафика по-пакетно ("опция -l"). Инфа накапливается в базе на MySQL. Оттуда можно получить любую инфу которая тебя интересует. Я, например, для этого быстренько на С++Билдере для винды клиентик набросал, с построением графика. Есть правда и проблемка одна - см. тему "чтение из именованного потока". Так шо пока при перезагрузке нужно ее каждый раз руками пускать...

Robin
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.