[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Подсчет трафика



On 02/15/2010 01:23 AM, Artem Chuprina wrote:
Люди местные, сами мы недобрые...

А расскажите, кто чем считает трафик и потом анализирует насчитанное.

Интересует примерно следующая модель использования.  Есть сеть, довольно
развесистая, аж о двух роутерах (один роутит подсети внутренней сети и в
DMZ, а другой из DMZ наружу).  Внешний роутер маскарадит (и сам тоже
малость генерирует трафик).  Внутренняя сеть на VLAN'ах, и есть OpenVPN.

Что хочется получить.  В любой момент под рукой должна быть сводная
информация вида "кто пожрал канал" - Top несколько пожирателей канала.
Статистика (можно переключаемо вручную): за последние сутки-двое (с
детализацией по часам), неделю (с детализацией приблизительно по времени
дня), за пару месяцев (с детализацией по дням).  Детализацию удобно было
бы видеть графиками.  Поскольку у внешнего роутера может быть более
одного внешнего интерфейса, хорошо бы уметь увидеть статистику,
касающуюся только одного из них.

Заинтересовавшие вхождения нужно иметь возможность быстро и удобно (с
точки зрения интерфейса) увидеть с аналогичным подходом (Top несколько,
с детализацией) по: протоколам (в понимании IP,
т.е. ICMP/UDP/TCP/что-там-еще-бывает), хостам (с кем в основном
обменивался пакетами заинтересовавший меня наш внутренний хост), внутри
протоколов TCP/UDP - по портам.

Собственно, задачи, которые хочется решать:

- сколько мы пожрали трафика за отчетный перед провайдером период

- кто пожрал внешний канал

- чем он его пожрал (трояна словил, за ненужными апдейтами ломанулся
   мимо родного WSUS'а, торрент торрентит, и т.п.)

- где узкие места в локальной сети

При этом на роутерах софта должно быть по минимуму - особенно софта,
слушающего какие-то соединения.  Категорически отказать апачу, а за
выполнение aptitude install php<что-угодно>  на роутере у нас применяется
корпоративный расстрел на месте.  На машине, которая показывает
результаты админу или начальнику, можно и пыхпых.

Поскольку внешний роутер маскарадит, то, вероятно, снимать надо ULOG'ом.
pcap'ом либо его собственный внешний трафик не увидишь, либо детализацию
по внутренним адресам не получишь.

Насколько я понимаю, мейнстрим формата съема на одной машине с
обработкой на другой - это NetFlow.  Но если со снималкой для него вроде
все понятно - fprobe-ulog, остальные ulog-варианты не умеют NetFlow, то
вот с дальнейшей обработкой и визуализацией хотелось бы почитать мнение
тех, кто этих устриц ел.

Мда, живут же люди... у меня все гораздо проще:
Две внутренних сети (~100 машин), обе включены в один роутер, имеющий выход в мир и выход к сервакам на коллокейшене отдельно. Роуты разводятся iproute, стандартно. Подсчет трафика - pmacct, пищущий в мускуль (ip, mac, source ip, dest ip, протокол, порт, объем и кол-во пакетов). Данные pmacctd кеширует и сбрасывает в таблицу раз в пять минут. Авторизации, по сути, никакой - по ip, и раз в неделю я прогоняю скриптик на предмет несоответствия маков ip, дабы наказать особо умных. Есть прозрачный squid, там же. Раз в день данные за день чистятся и группируются по принципу пользун-хост-порт (перловым скриптом) и заносятся в таблицу истории. Сумма за день инкрементится в свойствах пользователя. Раз в 10 минут другой скрипт проверяет, сколько пользователь использовал, если перебор - банит его iptables, оставляя только корп. мыло и аську. Без ежедневного упрощения статистики в месяц (~15 гб трафа, мы нищеброды) текущая таблица имела 2-3 миллиона записей и объем в полтора гигабайта, что отрицательно влияло на производительность банилки, потому ввел ежедневое подведение итогов. Начальству, по сути, интересен не список портов и ip, а лог сквида с группировкой по домену (сей лог парсится раз в 30 мин, чистится и кладется в мускуль). Есть некий интерфейс ко всему этому на php. Понимаю, что местами через задницу, но оно работает, а на корню менять не хочется.

Недавно в сторонней организации, занимающейся транспортом на WiFI, увидел роутеры (специальные девайсы на ARM) под управлением Mikrotik RouterOS (урл не дам, но гуглится легко - у сволочи прова умер прокси). Сия ось - жутко погрызанный BSD, около 30 метров, есть сборка под x86, может грузиться с флешки/харда и заточена под роутерные нужды, есть отдельный удаленный гуй для настройки и снятия статистики. Сама ось дает шейпинг и маршрутизацию, возможно и кеширование HTTP. Гуй - графики и разноцветных пользователей по длине очереди (суть загрузке канала). Только вот сумму сама считать и логи вести не особо любит - во встроенной железке просто мозгов нет. Думаю попробовать заюзать, а статистику снимать по snmp и скармливать mrtg. Минус - ось платная. Впрочем, лицензия покупается единоразово, недорого. Сам Mikrotik Router - около 80-100 баксов с доставкой по почте, это три eth и два miniPci под вайфай, плюс лицензия на ось. Вот.


Reply to: