Добавить в корзинуПозвонить
Найти в Дзене

Что такое passthrough в брандмауэре Mikrotik и зачем он нужен

Обсуждение в предыдущих постах показало, что далеко не все понимают назначение флага passthrough в брандмауэре. Начнем с того, что вспомним принцип работы брандмауэра: пакет движется по цепочке пока не будет совпадения с критериями правила. Затем к пакету применяется действие. Если действие является терминирующим, то пакет прекращает движение по цепочке и переходит в следующую. Если действие не терминирующее, то продолжает. В таблицах nat или filter большинство действий является терминирующими, за редкими исключениями, например, добавить адрес в список. А вот с таблицей mangle все по другому. Там у нас появляется выбор. Обычно все действия по маркировке пакетов и соединений начинаются в цепочке prerouting данной таблицы. Хорошо, вот кинули мы марку на соединение, а дальше что? А дальше все зависит от последующей логики. Если потом эту марку мы будем использовать где-нибудь в nat или filter, то пакет можно смело терминировать. Делать в этой цепочке ему больше нечего. А если нам ну

Что такое passthrough в брандмауэре Mikrotik и зачем он нужен

Обсуждение в предыдущих постах показало, что далеко не все понимают назначение флага passthrough в брандмауэре.

Начнем с того, что вспомним принцип работы брандмауэра: пакет движется по цепочке пока не будет совпадения с критериями правила.

Затем к пакету применяется действие. Если действие является терминирующим, то пакет прекращает движение по цепочке и переходит в следующую. Если действие не терминирующее, то продолжает.

В таблицах nat или filter большинство действий является терминирующими, за редкими исключениями, например, добавить адрес в список.

А вот с таблицей mangle все по другому. Там у нас появляется выбор. Обычно все действия по маркировке пакетов и соединений начинаются в цепочке prerouting данной таблицы.

Хорошо, вот кинули мы марку на соединение, а дальше что? А дальше все зависит от последующей логики. Если потом эту марку мы будем использовать где-нибудь в nat или filter, то пакет можно смело терминировать. Делать в этой цепочке ему больше нечего.

А если нам нужно затем промаркировать пакеты на основании марки соединения, скажем, сделать им mark-routing, то терминировать пакет никак нельзя. С таблицей маршрутизации надо определиться здесь и сейчас, до принятия решения о маршрутизации.

И здесь нам на помощь приходит как раз passthrough, установка этой опции делает правило не терминирующим. И пакет продолжает движение по цепочке дальше.

Таким образом, если у нас есть два правила, в первом из которых мы маркируем соединения, а во втором пакеты. То в первом мы ставим флаг passthrough, а во втором уже нет.