Проброс портов на MikroTik
Необходимость настройки проброса портов (Port Forwarding) на роутерах MikroTik встречается довольно часто. Но даже для опытного администратора конфигурирование микротиковских маршрутизаторов может показаться сложным, тем более для обычного пользователя. Хотя как раз за широкие функциональные возможности, наряду со стабильностью и надежностью работы, эти устройства и ценятся.
В сегодняшней статье мы постараемся дать как можно более понятную инструкцию по настройке проброса портов на примере роутера MikroTik RB951-2n (изображен на картинке выше).
Для чего нужен проброс портов?
Для чего вообще вам может понадобиться такая настройка? Чаще всего Port Forwarding используется для:
Настройка Port Forwarding в MikroTik
В MikroTik управление настройкой проброса портов находится в меню IP =>Firewall =>NAT.
Настройка вкладки General
Нажимаем плюсик и в появившемся окне заполняем несколько полей:
Настройка вкладки Action
В поле Action прописываем действие, которое должен будет выполнять роутер. Предлагаются варианты:
Для наших настроек подойдут варианты dst-nat и netmap. Выбираем последний, как более новый и улучшенный.
В поле To Adresses прописываем внутренний IP-адрес компьютера или устройства, на который роутер должен будет перенаправлять данные по правилу проброса портов.
В поле To Ports, соответственно, номер порта, к примеру:
Если значения в поле Dst. Port предыдущей вкладки и в поле To Ports совпадают, то здесь его можно не указывать.
Далее добавляем комментарий к правилу, чтобы помнить, для чего мы его создавали.
Таким образом, мы создали правило для проброса портов и доступа к внутреннему компьютеру (в локальной сети) из Интернет. Напомним, что его нужно поставить выше стандартных правил маскарадинга, иначе оно не будет работать (Микротик опрашивает правила последовательно).
Если вам необходимо заходить по внешнему IP-адресу и из локальной сети, нужно настроить Hairpin NAT, об этом можно прочитать здесь.
Про проброс портов для FTP-сервера рассказывается здесь.
Инструкции по настройке MikroTik
Настройка UPnP MikroTik, автоматический проброс портов
В инструкции будет рассмотрена настройка UPnP в MikroTik, а в качестве наглядного примера будет подключён видеорегистратор Dahua. На выходе образуется инфраструктура, в которой нет необходимости пробрасывать порты для просмотра видеонаблюдения, UPnP полностью автоматизирует этот процесс.
MikroTik RouterOS поддерживает архитектуру Universal Plug and Play для прозрачного однорангового сетевого подключения персональных компьютеров и интеллектуальных устройств или устройств, подключенных к сети.
UPnP обеспечивает обмен данными между любыми двумя устройствами под управлением любого управляющего устройства в сети. Universal Plug and Play полностью не зависит от какого-либо физического носителя. Он поддерживает работу в сети с автоматическим обнаружением без какой-либо начальной настройки, в результате чего устройство может динамически присоединяться к сети. Серверы DHCP и DNS не являются обязательными и будут использоваться, если они доступны в сети. UPnP реализует простое, но мощное решение для обхода NAT, которое позволяет клиенту получить полную поддержку двусторонней одноранговой сети за NAT-ом.
Для UPnP существует два типа интерфейса: internal (тот, к которому подключены локальные клиенты) и external (тот, к которому подключен Интернет). Маршрутизатор может иметь только один внешний интерфейс с «общедоступным» IP-адресом и столько внутренних интерфейсов, сколько необходимо, все с «внутренними» IP-адресами с NAT.
Протокол UPnP используется для многих современных приложений, таких как большинство игр DirectX, а также для различных функций Windows Messenger (удаленная поддержка, совместное использование приложений, передача файлов, голос, видео) из-за брандмауэра.
Как настроить UPnP в MikroTik
Для того, чтобы роутер MikroTik начал взаимодействовать с другими устройствами по протоколу UPnP нужно:
Описание параметров UPnP
enabled – активирует UPnP службу;
allow-disable-external-interface – следует ли разрешать пользователям отключать внешний интерфейс маршрутизатора MikroTik. Эта функция добавлена отдельным параметром и регулирует режим совместимости для тех сетей, где UPnP нежелателен или его работа не предусмотрена;
show-dummy-rule – активация обходного пути для некоторых неработающих реализаций, которые неправильно обрабатывают отсутствие правил UPnP (например, появляются сообщения об ошибках). Эта опция проинструктирует сервер установить фиктивное (бессмысленное) правило UPnP, которое могут соблюдать клиенты, которые в противном случае отказываются работать правильно.
Настройка находится IP→UPnP
Активация режима UPnP
Определить internal и external интерфейсы
Настройка находится IP→UPnP→Interfaces
Пример настройки UPnP MikroTik в видеорегистраторе Dahua
На любом устройстве, поддерживающего технологию UPnP достаточно включить данный режим. Все правила со стороны роутера MikroTik создадутся автоматически
Активация UPnP в Dahua
Пробросы портов через UPnP
Настройка находится IP→Firewall→NAT

Есть вопросы или предложения по настройке UPnP в MikroTik? Активно предлагай свой вариант настройки! Оставить комментарий →
Записки IT специалиста
Технический блог специалистов ООО»Интерфейс»
Проброс портов и Hairpin NAT в роутерах Mikrotik
Проброс портов
Давайте рассмотрим небольшую схему, которая поможет понять принцип действия проброса портов.
Допустим, некий удаленный ПК хочет обратиться к нашему веб-серверу, который находится за маршрутизатором в локальной сети. Но обратиться он может только по внешнему адресу маршрутизатора (в нашем примере 192.168.3.113), на который мы пробросили порт 80 веб-сервера. Поэтому он формирует пакет, в котором адресом назначения выступает маршрутизатор и отправляет его получателю, в качестве адреса источника он указывает собственный адрес.
Маршрутизатор, получив такой пакет выполняет замену адреса назначения с собственного, на адрес веб-сервера, также, при необходимости, он может изменить и порт назначения. После чего пакет отправляется в локальную сеть и достигает веб-сервера. Данные о преобразовании заносятся в специальную таблицу трансляции NAT.
Нужно ли менять адрес отправителя? Нет, если маршрутизатор выступает основным шлюзом сети, а в подавляющем большинстве случаев это так. Веб-север обработает запрос, а так как он ничего не знает о сети получателя, то обратный пакет будет направлен шлюзу по умолчанию, т.е. назад нашему маршрутизатору.
Маршрутизатор на основании данных таблицы трансляции выполнит обратное преобразование, заменив на этот раз адрес источника с внутреннего адреса веб-сервера, на свой внешний адрес и отправит пакет запросившему его узлу.
Мы не даром заостряем на этом особое внимание, так как непонимание процесса прохождения пакета по цепочкам сетевого фильтра способно привести к значительным затруднениям, когда вроде-бы все правила составлены верно, но ничего не работает.
Так для пакета от клиента к веб-серверу и обратно порядок прохождения цепочек будет следующим:
Обратите внимание, что пакет не попадает в цепочки INPUT и OUTPUT, которые используются для собственных пакетов маршрутизатора.
Либо выполните в терминале:
Но это еще не все, после PREROUTING пакет попадет в цепочку FORWARD, в которой, если вы настраивали роутер по нашей инструкции, запрещены любые внешние пакеты, кроме инициированных из локальной сети соединений.

Обратите внимание, что если вы пробрасываете порт с изменением номера, скажем внутренний 3389 (RDP) на внешний 3390, то в правиле брандмауэра вы всегда должны указывать внутренний порт, т.е. 3389, так как пакет уже прошел цепочку PREROUTING и данные о получателе в нем уже изменены на адрес и порт внутреннего сервера.
Из терминала это можно сделать командами:
Осталось только проверить работу наших правил, попробуем получить доступ к веб-серверу со внешнего узла:
Как видим, все прекрасно работает.
Hairpin NAT
Почему так происходит? Давайте рассмотрим еще одну схему:
Первая ее часть нам уже знакома, узел отправляет запрос на внешний адрес маршрутизатора, он заменяет адрес назначения адресом внутреннего сервера и отправляет пакет к нему, адрес отправителя остается неизменным. А вот дальше начинается самое интересное, веб-сервер видит, что отправитель находится в ним в одной сети и отправляет ответ ему напрямую. Но отправитель направлял запрос на внешний адрес сервера и ждет ответа именно от него, поэтому ответный пакет, отправителем которого указан внутренний адрес веб-сервера будет отброшен и связь установить не удастся.
Что же делать? Очевидно, что нужно каким-то образом заставить веб-сервер отвечать не напрямую клиенту, а пересылать пакет обратно маршрутизатору. Здесь нам на помощь придет действие src-nat (SNAT), которое позволяет изменить адрес отправителя, находящееся в цепочке POSTROUTING. В терминах Mikrotik данная настройка носит наименование Hairpin NAT.
Чтобы понять, как это работает мы подготовили следующую схему:
Теперь наш маршрутизатор не только изменяет адрес назначения, но и адрес источника, указывая в его качестве собственный внутренний IP. Обработав такой пакет веб-сервер отправит его обратно к маршрутизатору, который выполнит обратные преобразования (согласно таблице трансляции) и оправит его получателю. А так как отвечать будет именно тот узел, к которому был отправлен запрос, то в данном случае все будет работать.
Обратите внимание, что в качестве адреса и порта назначения мы указываем внутренние адрес и порт, так как пакет уже прошел цепочку PREROUTING, где данные получателя были изменены. К сожалению, не все это понимают, во многих инструкциях в сети в данном правиле фигурирует внешний адрес, стоит ли говорить, что такое правило работать не будет.
Через терминал данное правило можно создать следующим образом:
В нашем случае все адреса статические, поэтому использование src-nat здесь будет более уместно.
Правило создано, проверим его работу:
Подводя итог, можем сказать, что в пробросе портов нет ничего сложного, но только в том случае, если вы представляете в каком порядке и как обрабатываются пакеты, в противном случае даже такая элементарная задача способна превратиться в длительные мучения на ровном месте. Поэтому мы надеемся, что данный материал пригодится вам не только в практическом плане, но и позволит повысить собственный уровень знаний.
Дополнительные материалы:
Mikrotik
The Dude
Помогла статья? Поддержи автора и новые статьи будут выходить чаще:
MikroTik проброс портов и настройка NAT для доступа в интернет
Из этой статьи мы узнаем, как настроить на MikroTik проброс портов и NAT (трансляция сетевых адресов) для доступа хостов локальной сети в интернет. Для примера выполним проброс портов через туннель между двумя MikroTik. А также продемонстрируем реализацию перенаправление трафика на маршрутизатор.
Освоить MikroTik вы можете с помощью онлайн-курса «Настройка оборудования MikroTik». В курсе изучаются все темы из официальной программы MTCNA. Автор – официальный тренер MikroTik. Материал подходит и тем, кто уже давно работает с оборудованием MikroTik, и тем, кто еще не держал его в руках. В состав входят 162 видеоурока, 45 лабораторных работ, вопросы для самопроверки и конспект.
Поговорим о настройке Masquerade, выясним, когда рекомендуется использовать Srcnat вместо Masquerade. Рассмотрим пример, где объединим две разные сети, IP-адреса которых совпадают, с помощью Netmap.
MikroTik NAT. Общая информация
NAT (Network Address Translation) – преобразование сетевых адресов. Главное назначение NAT – это экономия белых IP-адресов и повышение безопасности сети за счет ограничения обращений к внутренним хостам LAN снаружи и возможности скрыть сервисы с помощью подмены портов.
«Классический» NAT предполагает, что количество одновременных выходов в интернет из локальной сети за “натом” ограничено количеством свободных портов TCP/UDP. Благодаря этому множество устройств может одновременно выйти в интернет через один белый IP.

По умолчанию для LAN сети, находящейся за “натом”, доступ в интернет есть, а из глобальной сети в NAT-сеть попасть нельзя. За исключением случаев проброса портов.
Настройка NAT на MikroTik подразделяется на два типа:
Все остальные действия – производные от dst-nat и src-nat.
NAT обрабатывает только первый пакет соединения (connection-state=new).
Схематично принцип работы NAT можно изобразить так:

Destination NAT
Цепочка Dstnat при настройке NAT на MikroTik служит для изменения IP-адреса и/или порта назначения и выполнения обратной функции для ответа.
Практически применяется в следующих случаях:
Стандартные действия возможные для цепочки dst-nat:
Давайте практически разберем, как выполняется настройка NAT на MikroTik для цепочки dstnat.
Проброс портов на MikroTik
Пример проброса порта для RDP
Как говорилось ранее, в MikroTik проброс портов делается при помощи создания правил для цепочки dstnat. В качестве примера выполним проброс порта RDP соединения для доступа к внутреннему компьютеру локальной сети.
Так как стандартный порт 3389 для RDP подключения является известным и часто подвергается атакам, то пробросить его напрямую будет не очень хорошей идеей. Поэтому скроем данный сервис с помощью подмены порта.
На вкладке “General” укажем цепочку правил, протокол, протокол подключения и входящий интерфейс:

При пробросе портов на MIkroTik надо обязательно указать входящий интерфейс. Иначе возможны проблемы.
Следующим шагом откроем вкладку “Action”:
Как итог все запросы, приходящие на внешний IP роутера по порту 47383, будут пересылаться на внутренний адрес локальной сети 192.168.12.100 порт 3389 (RDP).
Проброс порта на MikroTik для видеонаблюдения
Следующим примером мы постараемся показать, как настроить на MikroTik проброс портов для видеосервера с установленным ПО “Линия”.
Проброс порта на MikroTik для видеорегистратора напрямую, настраивается аналогичным образом.
Предположим, что есть Видеосервер с ПО “Линия” к которому необходимо получить доступ извне. Для начала откроем настройки программного обеспечения “Линия”, чтобы узнать порт Веб-сервера:

Чтобы получить доступ к видеосерверу, необходимо пробросить порт 9786. Откроем Winbox и добавим правило:

Распространенной ошибкой при пробросе портов на MikroTik является то, что не указывают входящий интерфейс.
Откроем пункт меню “Action”:
Проброс портов для нескольких внешних IP
Чтобы сделать проброс портов для нескольких WAN, то необходимо создать Interface List и добавить в него нужные интерфейсы. Далее укажем созданный лист в параметре In. Interface List. Покажем это на примере:
Создадим новый лист для интерфейсов “ISP”:
Следующим шагом добавим нужные WAN интерфейсы:

Повторить данный шаг для всех WAN-интерфейсов.
Модернизируем ранее созданное правило проброса порта для RDP соединения, указав лист “ISP” для настройки In. Interface List:

Так можно настроить проброс портов на MikroTik для нескольких WAN.
Как защитить проброшенные порты вы можете узнать изучив статью MikroTik настройка Firewall.
Перенаправление трафика на маршрутизатор
С помощью действия redirect возможно перенаправление трафика на Микротик. Практическое применение данного действия мы рассмотрим, выполнив переадресацию запросов DNS.
Перенаправим весь DNS-трафик на маршрутизатор. Следовательно, пользователи компьютеров в LAN, какие бы настройки DNS ни указывали локально, будут считать, что им отвечает DNS-сервер, которому сделан запрос, но фактически ответ будет приходить от маршрутизатора.
Для этого выполним настройку NAT на MikroTik следующим образом.

Перейдем в пункт меню “Action” и укажем действие redirect:

MikroTik проброс портов по туннелю L2TP
Рассмотрим пример проброса портов между двумя устройствами Mikrotik, которые объединены туннелем L2TP. Есть два роутера, один из них выходит в интернет по «серому IP», а второму провайдер выдает «белый IP». Попробуем пробросить порт до компьютера, который находится за роутером с приватным адресом, через Микротик с публичным IP-адресом. Чтобы лучше понять задачу, нарисуем схему:

Нам нужно пробросить порт до компьютера (WS01), через GW1.
Для этого зайдем на маршрутизатор GW2 и выполним маркировку соединений для «Input»:
Переходим во вкладку «Action»:

Аналогичным образом промаркируем соединения цепочки «forward»:


Следующим шагом, на основании соединений сделаем маркировку маршрутов:

Маркировка маршрута цепочки «prerouting»:


В итоге правила «Mangle» у нас должны выглядеть так:

Осталось добавить маршрут по умолчанию для пакетов маркированных как пришедшие из туннеля. Для этого открываем:
Настройка GW2 закончена. Переходим к конфигурированию GW1, выполнив проброс порта до хоста 192.168.13.48:


Настройка проброса порта на MikroTik через туннель L2TP закончена.
Source NAT
Основное назначение Source NAT MikroTik – изменение IP-адреса и/или порта источника и выполнение обратной функции для ответа.
Самое распространенное применение – это выход множества ПК в интернет через один белый IP-адрес.
Стандартные действия для цепочки src-nat:
Настройка MikroTik NAT для доступа в интернет
Настройка NAT для статического WAN
Если мы получаем статический IP от провайдера, то рекомендуем для настройки NAT на MikroTik использовать правило src-nat. Это позволит устройствам из LAN выходить в глобальную сеть интернет. Откроем:
Откроем вкладку “Action”:
Настройка NAT для динамического WAN
Если мы получаем динамический IP от провайдера, то необходимо использовать правило Masquerade.
Masquerade – это частный случай src-nat для ситуаций, когда внешний IP-адрес может динамически изменяться.
Тогда настройка NAT на MikroTik будет выглядеть следующим образом:


Правило src-nat/masquerade должно стоять первым в списке.
Использование masquerade вместо src-nat может вызвать проблемы:
Рекомендуем, при получении статического IP от провайдера, использовать правило scr-nat.
Если у вас несколько внешних интерфейсов, то рекомендуется добавлять условие, выделяя трафик по адресу источника:

Где Src. Address – локальная подсеть.
NAT loopback (Hairpin NAT)
Настройка Hairpin NAT MikroTik предназначена, чтобы организовать доступ из LAN к ресурсу в LAN по внешнему IP-адресу WAN. Чтобы подробно описать данную настройку и разобраться в проблеме, рассмотрим пример:

Если хост локальной сети (Ws01) обращается к серверу, находящемуся в этой же сети по внешнему IP, то сервер, получив запрос, зная, что данное устройство находится в одной LAN с IP 192.168.12.10 отвечает ему напрямую. Хост не принимает данный ответ, так как не обращался к серверу по айпи 192.168.12.100.
Правило Hairpin NAT MikroTik для статического WAN
Чтобы избежать проблему, описанную выше, выполним настройку hairpin NAT на MikroTik. При получение статического айпи от поставщика интернет-услуг, советуем использовать правило Src-nat:

Для значений Src. Address и Dst. Address указываем локальную подсеть.
Далее открыв вкладку “Action”:
NAT Loopback при динамическом WAN
При получении динамического IP-адреса от провайдера, для правила NAT loopback нужно использовать masquerade:
Затем откроем пункт меню “Action”:

Назначим действие(Action) – маскарад.
Поставим созданное правило вторым:

При этом необходимо учитывать то, что при этом проброс портов должен быть выполнен с параметром dst-address.
Покажем пример такого правила:

На этом настройка Hairpin NAT на MikroTik выполнена. Теперь мы сможем обращаться к внутренним ресурсам сети по внешнему IP.
Netmap
Действие Netmap служит для создания связки из IP-адресов (1:1 NAT). На практике применяется для решения следующих задач:
Далее мы покажем примеры конфигурации MikroTik реализующие задачи, описанные выше используя netmap.
Проброс всех портов и протоколов на локальный IP
Для случая, когда нам нужно на MikroTik пробросить все порты и сервисы до компьютера, который находится за “натом”, чтобы обращаться к нему по белому IP, воспользуемся действием Netmap:

На вкладке “Action”, выберем действие netmap и укажем айпи хоста, доступ к которому хотим получить:

Как объединить разные сети с одинаковой IP-адресацией
Предположим, что у нас есть два филиала с одинаковыми адресами подсетей 192.168.12.0/24, которые надо объединить.

Чтобы избежать проблем с маршрутизацией нам необходимо:
Для этого откроем конфигурацию GW1 (Филиал №1) и добавим правила:
Далее открыв пункт меню “Action”, выберем действие netmap:
Теперь создадим цепочку dstnat:


Разместим эти правила первыми:

Переходим к конфигурированию GW2 (Филиал №2).
Открыв меню NAT, добавляем цепочку srcnat:


Осталось добавить цепочку dstnat:


И также разместим эти правила первыми:

Также надо учитывать, что на обоих маршрутизаторах должна быть настроена маршрутизация до удаленной сети.
Надеюсь, статья была для вас полезна. Если остались вопросы, то пишите в комментарии, постараемся оперативно ответить.
Освоить MikroTik вы можете с помощью онлайн-курса «Настройка оборудования MikroTik». В курсе изучаются все темы из официальной программы MTCNA. Автор – официальный тренер MikroTik. Материал подходит и тем, кто уже давно работает с оборудованием MikroTik, и тем, кто еще не держал его в руках. В состав входят 162 видеоурока, 45 лабораторных работ, вопросы для самопроверки и конспект.




















