Доброго дня, коллеги! У всех наверняка бывало такое, что в каком-то удаленном офисе начинают звонить пользователи и жаловаться на лаги и связь. Крайне часто этими лагами бывают сами пользователи, которые решили "втихую" выкачать себе пару фильмов на выходные или сериальчик. Вот их и будем отлавливать и карать.
Что нам нужно, чтобы выловить злостного качальщика? Если офис удаленный и небольшой, а в качестве роутера используется "Микрот", то этого вполне достаточно. В общих чертах, мы поймем кто это там балуется. Начнем.
Предварительно, нужно привести ваш микрот к некоему общему стандарту, если это еще не сделано. Например, нам обязательно потребуется локальный "бридж", который соединяет все физические порты во внутреннюю подсеть. В двух словах: я всегда создаю бридж "USER_net", которому присваиваю некую подсеть, например, "192.168.0.1/24", далее, если добавить в этот бридж порт 1, 2, 3 и т.д., то они автоматически будут работать в этой сети, а адрес 192.168.0.1 будет всегда доступен и отвечать на пинг. Если вы делаете так же, то молодцы, если иначе, например, вы вешаете на порт 1 адрес "192.168.0.1/24", а потом добавляете в бридж 1, 2, 3 и т.д., то при таком варианте 192.168.0.1 будет отвечать только если поднят 1 порт, в него вставлен шнур и оборудование. Да, в какой-то прошивке это пофиксили, но иногда этот баг всплывает. Поэтому 1 вариант правильнее и надежнее. Так же, если в офисе у вас используется несколько подсетей, то можно создать несколько бриджей, присвоить им нужные подсети, а далее распределять членство физических портов по разным бриджам.
Можно и на конкретном физическом интерфейсе смотреть, если он у вас 1, а если два и более, то придется на каждом отдельно, складывать потом это и в целом не очень удобно. Но можно.
Кстати, разделить Wi-Fi с локальной подсетью лучше сразу и навешать дополнительных ограничений. Все-таки, беспроводная сеть априори менее защищенная ввиду доступности ее для большего числа потенциальных жуликов и пр. проходимцев. На моих картинках "WiFi_net" - это именно она. Если она уже у вас ограничена, то некоторые порты, например, в переговорках для гостей, можно запихнуть в эту сеть. Но об этом потом как-нибудь.
Итак, мы создали бридж, в котором живет локальная подсеть и через этот бридж проходит весь трафик от локальных клиентов - этого нам и надо было добиться. Теперь можно собрать статистику с этого бриджа. Для этого запускаем встроенную утилиту Torch, находится в Tools -> Torch.
Для быстрого поиска "качальщика" нам достаточно указать интерфейс, с которого собирать статистику, время сбора - можно ставить любое, но при маленьком времени сбор не остановится, а будет сбрасывать счетчики. И выставить сортировку по обоим столбцам Tx и Rx ("трансфер" и "ресив"), чтобы бОльшие значения были сверху. Далее ждем накручиваний счетчика. Все, мы узнали кто сейчас "сожрал интернет", точнее знаем его айпи-адрес. Сможете вы по айпи узнать ФИО сотрудника - зависит от вашей организации, эти данные можно поискать на DHCP, DNS, да даже скриптом выдрать из AD. А можно выключить ему интернет (по айпи) и ждать пока вредитель сам позвонит и начнет жаловаться, что у него все сломалось.
Выбираем, ессесно, последний вариант и идем в IP -> Firewall. Для начала, если его у вас еще нет, создадим список всех локальных подсетей. На вкладке "Address lists" создаем списком:
После этого возвращаемся на "Filter Rules" и добавляем новое правило:
Так мы заблокируем ему выход интернет, но доступ ко внутренним ресурсам через впн останется. Вот такая вот хитрость. Остается дождаться пока это тело позвонит жаловаться на интернет и как ему ответить уже сами решайте. На моей практике одного предупреждения всегда было достаточно, чтобы человек понял, что он делает что-то не то. Ну а если не поймет, то на все заявки о плохой работе интернета, можно давать контакты этого гыука.
Комманды всего вышеописанного, для упрощения задач.
Добавить спиосок локальных подсетей:
- /ip firewall address-list add address=192.168.0.0/16 comment="list for transit local trafic" list=local_list
- /ip firewall address-list add address=172.16.0.0/12 list=local_list
- /ip firewall address-list add address=100.64.0.0/10 list=local_list
- /ip firewall address-list add address=10.0.0.0/8 list=local_list
Создание интерфейса бридж и добавление в него 3, 4 и 5 физических портов:
- /interface bridge add auto-mac=yes name=USER_net
- /interface bridge port add bridge=USER_net interface=ether3
- /interface bridge port add bridge=USER_net interface=ether4
- /interface bridge port add bridge=USER_net interface=ether5
Ну вот, в общих чертах, и все. Этот механизм не ВАХ какой информативный, но он позволяет быстро вычислить источник, который очень активно поглощает интернет и быстро с этим что-то сделать. Чуть интереснее вариант можно придумать со встроенным в микроты прокси-сервером, но это уже более глобальный вариант, который потребует от вас прописывания прокси через GPO и пр. шаги и не реализуется с нахлеста. Спасибо за прочтение, если понравилось и было полезно - лайк пож. и подписочку. От вас не убудет, а мне будет приятно! Удачи, коллеги! ;)