Как подружить FastTrack и IPsec в Mikrotik RouterOS?

26 июль 2017 1 882 7

В одной из предыдущих публикаций я описывал способ маркировки нужного трафика и его последующую отправку в VPN. Одной из негативных сторон описанного метода является необходимость отключения FastTrack.

FastTrack был добавлен начиная с версии RouterOS 6.29, функция очень полезная, если кратко, она позволяет пересылать пакеты без обработки ядром (Linux Kernel), как результат вы получаете существенное повышение производительности.

Включение FastTrack происходит при помощи команды:

/ip firewall filter add chain=forward action=fasttrack-connection connection-state=established,related

Данное правило позволяет пересылать пакеты со статусом «Established» и «Related» напрямую получателю, минуя ядро и правила файрволла (брандмауэр). Таким образом, соединение, получившее статус Established/Related далее будет пересылать пакеты напрямую, без необходимости в дополнительной обработки или фильтрации при помощи Firewall.

Разумеется, соединение получает статус Established/Related только после прохождение файрволла, поэтому в дальнейшем соединение остается защищенным

И всё было бы хорошо, если бы некоторые нюансы, в частности, одновременная работа FastTrack и IPsec.

Начиная с версии RouterOS 6.30, разработчики добавили возможность маркировки соединений и пакетов, что позволяет видоизменить правило FastTrack, исключив из него ненужное.

Для того, чтобы промаркировать пакеты IPsec, нам необходимо прибегнуть к помощи Mangle из подменю Firewall.

/ip firewall mangle add action=mark-connection chain=output comment="Mark IPsec" ipsec-policy=out,ipsec new-connection-mark=ipsec

/ip firewall mangle add action=mark-connection chain=input comment="Mark IPsec" ipsec-policy=in,ipsec new-connection-mark=ipsec
mark-ipsec.rsc [240 b] (cкачиваний: 38)

При помощи данного правила, мы выполняем пометку (маркировку) всего входящего и исходящего трафика IPsec.

Теперь осталось только внести изменения в правило FastTrack, добавив в него connection-mark:

/ip firewall filter add action=fasttrack-connection chain=forward comment=FastTrack connection-mark=!ipsec connection-state=established,related

Наличие восклицательного знака перед меткой, означает, что правило будет исключать все пакеты и соединения с пометкой «ipsec». На этом собственно всё.

Источник Интернет-магазин ntools.com.ua

Комментарии:

Добавить
  • bowtiesmilelaughingblushsmileyrelaxedsmirk
    heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
    winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
    worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
    expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
    disappointedconfoundedfearfulcold_sweatperseverecrysob
    joyastonishedscreamtired_faceangryragetriumph
    sleepyyummasksunglassesdizzy_faceimpsmiling_imp
    neutral_faceno_mouthinnocent
  1. Dehale
    Dehale Посетители 25 ноября 2017 07:03
    + 0 -
    Как раз настраивал обход блокировки по вашему мануалу, все работает отлично, использую платный VPN от hidemy. А вот подружить FastTrack не удалось почему-то. Не работает не одна из схем

    http://clip2net.com/clip/m202824/d1a69-clip-7kb.png

    Должны же передаваться данные?
  2. ravdinve
    ravdinve Посетители 10 сентября 2017 22:50
    + 0 -
    DmitryAVET, очевидно в этом и разница. У меня IPSec без L2TP.
    1. DmitryAVET
      DmitryAVET Создатель 10 сентября 2017 23:08
      + 0 -
      Вероятно. У меня в IP - IPsec - Installed SAs и Policies фигурирует внешний IP роутера, поэтому input/ouput срабатывает. IPsec настроен банальной активацией "Use IPsec: require" в настройках L2TP Server на удаленном Mikrotik.
  3. ravdinve
    ravdinve Посетители 10 сентября 2017 01:55
    + 0 -
    В вашей статье допущена ошибка, необходимо указать chain=forward, но никак не input или output, тогда все заработает.
    1. DmitryAVET
      DmitryAVET Создатель 10 сентября 2017 09:13
      + 0 -
      Действительно, в оригинальной публикации указаны следующие правила маркировки:

      /ip firewall mangle add action=mark-connection chain=forward comment="Mark IPsec" ipsec-policy=out,ipsec new-connection-mark=ipsec
      /ip firewall mangle add action=mark-connection chain=forward comment="Mark IPsec" ipsec-policy=in,ipsec new-connection-mark=ipsec

      Тем не менее, в комментариях есть вариант с input/output для IPsec. Лично у меня вариант с forward попросту не маркирует траффик. Правда у меня IPsec в паре с L2TP, а не IPsec в чистом виде.

      Вообще официальная документация говорит нам следующее:

      input - используется для обработки пакетов, входящих на роутер по одному из интерфейсов с конечным IP, являющимся одним из адресов роутеру. Пакеты, проходящие через роутер повторно не обрабатываются правилами input chain.

      forward - используется для обработки пакетов, проходящих через роутер;

      output - используется для обработки пакетов, исходящих от роутера и покидающих его по одному из интерфейсов. Как и в случае с input, "проходные" пакеты (forward) не обрабатываются.

      Исходя из Packet Flow как бы логично использовать Forward, но как я уже упоминал выше, у меня там нулевые счетчики.
      1. ravdinve
        ravdinve Посетители 10 сентября 2017 13:15
        + 0 -
        Это интересно, на самом деле. У меня все работает именно как в оригинальной статье, а как в вашем примере - нет. Возможно версии ROS разные? Мы с вами про Policy IPSec говорим же?
      2. DmitryAVET
        DmitryAVET Создатель 10 сентября 2017 13:51
        + 0 -
        Версия на момент написания была ~ 6.4x.x, сейчас последняя 6.40.3 - без изменений. Конфигурация следующая:
        1) на моем микротике поднят L2TP+IPsec к удаленному Mikrotik. Прописаны манглы для маркировки пакетов, чтобы часть траффика уходила в VPN (Policy Based Routing).
        2) на удаленном Mikrotik поднят L2TP-клиент на зарубежный сервер.
        И вот в такой конфигурации мой микрот не хочет маркировать пакеты в forward.

Mikrotik представит обновление RouterOS 6.40 уже в ближайшие дни

Представители компании Mikrotik подтвердили намерение выпустить обновление RouterOS 6.40 уже в ближайшие дни. Начиная с версии RouterOS v6.40rc36,...

Обход блокировки сайтов со стороны провайдера на Mikrotik (RouterOS) при помощи

В рамках данной публикации мне хотелось бы поговорить об одном из методов обхода блокировки сайтов со стороны провайдера на маршрутизаторах Mikrotik...

Denial Of Service: уязвимость RouterOS 6.38.5 позволяет вызвать отказ сети

Не успели Mikrotik закрыть уязвимости, выявленные с публикацией Wikileaks Vault 7, как 28-го марта была опубликована новая уязвимость CVE-2017-7285,...

Выход обновления RouterOS 6.38: доработка IPSec, поддержка IKEv2, STP, LLDP,

Накануне Нового года, 30-го декабря компания Mikrotik выпустила обновление RouterOS 6.38. Чуть ранее мы уже говорили об особенностях и изменениях в...

Не работает Simple Queue в RouterOS на оборудовании Mikrotik? Есть решение!

На днях ко мне приехал новенький Mikrotik hAP, предназначенный для установки на одном из филиалов. Установка предполагается в торговой точке,...

Mikrotik выпустил обновление RouterOS 6.35: исправления, оптимизации, новые

Компания Mikrotik сегодня представила обновление операционной системы RouterOS до версии 6.35. Обновление ROS уже доступно на официальном сайте, а...


авторизация на сайте

Войти при помощи Вконтакте Войти при помощи Facebook Войти при помощи Google+ Войти при помощи Яндекс
Забыли пароль?