Mikrotik RouterOS, использование Layer7 протокола

03.12.2013
Поделиться в:

Всем известно, что Mikrotik RouterOS, это достаточно гибкая, сетевая операционная система с обширным функционалом и достаточно большим количеством разнообразных функций и протоколов. Одной из таких функций, относящихся к разделу Firewall, является Layer7 protocol. И она не заслужена обделена вниманием, о ней мало информации и даже не все знают зачем она. Вот именно этот пробел, мы сегодня и постараемся заполнить, ведь данная особенность, открывает достаточно широкие возможности по определению вида трафика и его последующей сортировке.

По своей сути, Layer7 protocol, является методом поиска совпадений по регулярным выражения в ICMP, TCP и UDP потоках. И работает следующим образом: с каждого соединения, берутся первые 10 пакетов или первые 2KB, в которых производится поиск совпадений. Таким образом, мы можем находить тот или иной вид трафика, и дальше обрабатывать его в Firewall - запрещать, перенаправлять, маркировать соединения и прочее.

Чаще всего, L7 используют для блокировки тех или иных сайтов или же работы тех или иных программ. Рассмотрим например блокировку сайтов социальных сетей при помощи данной функции.

Предположим, что нам нужно заблокировать посещение сайтов ВКонтакте, Одноклассники, Facebook и Twitter. Для этого мы сперва создаем регулярное выражение вида:

 

^.*(get|GET).+(vk.com|odnoklassniki.com|facebook.com|twitter.com).*$

 

Подключаемся к нашему маршрутизатору и переходим в раздел IP - Firewall, где открываем вкладку Layer7 Protocol и добавляем новую запись, кнопкой +.

Где в поле Name, вписываем имя новой записи, а в поле Regexp, вставляем наше регулярное выражение.

Настройка блокировки посещение сайтов, социальных сетей с помощью Layer 7 protocol

И теперь, на его основе, мы можем создавать правила Firewall, на соответствующей вкладке.

Здесь мы добавляем правило, со следующими параметрами: Chain - forward, Layer7 Protocol - выбираем созданную нами ранее запись, и Action - drop.

Скриншот создания правил Firewall при блокировки соц. сетей

Скриншот создания правил Firewall при блокировки соц. сетей, вкладка дополнительные

Скриншот создания правил Firewall при блокировки соц. сетей, вкладка действие

И теперь, если в заголовке запроса, будет упоминаться тот или иной URL, перечисленный в регулярном выражении, этот запрос будет отклонен.

Однако, спектр возможного применения Layer7 protocol, не ограничивается только запретами. Можно и наоборот, дать приоритет тому или иному виду соединений, определенных при помощи этой функции. Например, определить телефонное соединение по протоколу SIP, при помощи регулярного выражения вида:

 

^(invite|register|cancel|message|subscribe|notify) sip[x09-x0d -~]*sip/[0-2].[0-9]

Настройка приоритета телефонного соединение по протоколу SIP через Mikrotik Router OS

После чего, пометить все пакеты данного типа при помощи правила на вкладке Mangle.

Настройка приоритета телефонного соединение по протоколу SIP через Mikrotik Router OS, вкладка Mangle

Настройка приоритета телефонного соединение по протоколу SIP через Mikrotik Router OS, вкладка action

И создать правило, в соответствии с которым, данным пакетам будет предоставлена приоритетная ширина канала в 25Mbit/s в разделе Queues.

Создание правила приоритета ширины канала в 25Mbit/s в разделе Queues

В целом, Layer7 protocol - это достаточно интересны инструмент, предоставляющий вам широкие возможности по управлению потоками трафика в вашей сети. Освоив который, можно производить самые разнообразнейшие манипуляции с пакетами и соединениями. Однако, в конце, хочется предупредить, что большое число L7 записей, может привести к высокой нагрузке на маршрутизатор. Поэтому не стоит злоупотреблять данной функцией.

 

logo
Mikrotik RouterOS, использование Layer7 протокола
Отзывы покупателей
Рейтинг покупателей
5 / 5 5 5 6
На основе 6 оценок покупателей
16.7%
0%
0%
0%
0%
Отзыв
Отлично
Заголовок*
Достоинства
Недостатки
Комментарий*
Представьтесь
Комментарий
А в случае с использованием Web-proxy на Микротике и работой пользователей через него? Как ни пробовал, не удается заблокировать ресурсы по Layer7 в этом случае.
Комментарий
Это все работает да согласен. Но есть один момент который не работает. если в запрещающем правиле firewall на вкладке advaced в Src. Address.list вставить лист разрешающих с отметкой !" то и им тоже запрещается."
Комментарий
Эдуард, Вполне вероятно, что это баг самой RouterOS, такое довольно часто бывает. Можно попробовать на других версиях, но это не факт."
Комментарий
Неужели у вас это работает для https?vk.com - работаетhttps://vk.com - не работаетПробовал дублировать правило: в первом ставил Dst Port 80, а во втором 443 - не помогло.Может кто-то нашел решение, как через Layer7 блокировать https?
Комментарий
Арсений, Конкретно соцсети, и в частности ВК, лучше банить по IP адресам (всей АС, принадлежащей компании), как это сделать, написано - http://lanmarket.ua/stats/rasshirennye-nastrojki-mikrotik-routeros:-zapret-opredelennyx-sajtov А весь диапазон адресов, можно найти на bgp.he.net"
Комментарий
mrrc, Да, скорей всего и не получится"

Возврат к списку


Популярное оборудование

Авторизуйтесь, чтобы добавить отзыв

x