Салют товарищи!
Поделитесь опытом, чем можно мониторить активность пользователей в сети?
У меня имеется Mikrotik в качестве сердца сети, на нём включен NetFlow, и есть сервер, который собирает статистику и складывает всё в базу данных. Но особенность Netflow такова, что он отдаёт информацию только после того, как клиент загрузил\выгрузил файл. Но бывают ситуации, что кто-то занял канал, скачиванием большого файла, и пока он его не скачает, NetFlow мне об этом не сообщит. Есть-ли какие-нибудь механизмы, для отслеживания подобных моментов. Или, всё-таки, придётся ставить прокси?
Что значит не сообщит? Netflow не знает ничего про файлы. Он оперирует пакетами передаваемыми по сети. Если кто-то качает "файл", то у вас будет куча записей "кто-кому-сколько_байт". Это если объяснять на пальцах
Если нужно мониторить не статистику использования, а нагруженность канала, то забирайте текущие цифры по SNMP.
хм, может я как-то не так настроил NetFlow на Mikrotik, просто у меня такая ситуация, что пока человек качает файл, мне в лог ничего не падает. после скачивания, приходит в лог в стиле src, dst, size, port, proto и поле Size, соответственно в 1гб (например)
Игорь С: не могу утверждать на 100%, честно говоря никогда не обращал вниммания на статистику в процессе скачки больших файлов. И проверить сейчас не на чем. Но мне кажется, что это может быть особенностью работы коллектора/анализатора.
Игорь С: Кстати, в микротике в Simple queue есть не только лимитирование шиины канала, но еще и boost time/limit. Если характер работы сотрудников компании позволяет, можно немного порезать общую пропускную способность канала + дать boost на файлы адекватного размера. Например boost time 10-15s и лимит в 90% ширины канала при общем лимите в 1-2 мегабита на человека (цифры наобум, все зависит от ваших условий). Мелкие файлы и открытие страниц не страдает благодаря boost, а скачка в больших количествах режется по полной.
Конечно прокси. Не микротиковское в смысле встроенное прокси, а нормальный полноценный squid. Который в частности решает и задачу обломать юзера, возжелавшего слить фильмец на пару гигов в рабочее время :)
Присоединяюсь к kinvlad и Дмитрий. NetFlow пофиг, кто и что передает. Он различает только передаваемые пакеты и тип трафика. Он не различает файлов. Возможно, вы путаете с SNMP, но и там такого особо не наблюдается.
1. Под винду хорошо работает NetFlow Analyzer.
2. На микротике, в свойствах интерфейса с нагрузкой нажмите на кнопку Torch и будет вам счастье. Оповещения конечно не будет (для этого есть целый класс программб например из первого пункта), но кто и как забивает канал сейчас, можно посмотреть.
Можно сделать хитрую штуку через фаирвол. По ссылке пример с блокировкой по времени, вам же можно сделать блок не по времени, а скажем просто сделать запись в логе или сразу на мейл отправлять сообщение. Можно опять же по образу и подобию примера сделать список как в примере но не резать его совсем а просто выкинуть в другое правило и он целый час\6\сутки\неделю будет наслаждаться скоростью в 100кб\с.
Другой вариант задействовать QoS. Тогда качать могут спокойно но подвинутся если кто то другой захочет тоже что то покачать.
Микротики очень классные штуки и практически любую задачу можно решить штатными средствами, крайне рекомендую полазить по их вики с примерами разных финтов.