Ukrainian English Russian
Ukrainian English Russian
0

Проброс портов на MikroTik

RB951-2N проброс портов

Необходимость настройки проброса портов (Port Forwarding) на роутерах MikroTik встречается довольно часто. Но даже для опытного администратора конфигурирование микротиковских маршрутизаторов может показаться сложным, тем более для обычного пользователя. Хотя как раз за широкие функциональные возможности, наряду со стабильностью и надежностью работы, эти устройства и ценятся.

В сегодняшней статье мы постараемся дать как можно более понятную инструкцию по настройке проброса портов на примере роутера MikroTik RB951-2n (изображен на картинке выше).

Для чего нужен проброс портов?

Для чего вообще вам может понадобиться такая настройка? Чаще всего Port Forwarding используется для:

  • организации игрового сервера на домашнем компьютере,
  • организации пиринговых (одноранговых) сетей,
  • для доступа к IP-камере из интернета,
  • корректной работы торрентов,
  • работы WEB и FTP-серверов.

 

Почему возникает необходимость в пробросе портов? Дело в том, что по умолчанию в роутерах работает правило так называемого маскарадинга. IP-адреса компьютеров и других устройств из локальной сети не видны ЗА роутером, во внешней сети. При поступлении пакетов данных из внутренней сети для отправки во внешний мир роутер открывает определенный порт и подменяет внутренний IP устройства на свой внешний адрес - надевает "маску", а при получении ответных данных на этот порт - отправляет их на тот компьютер внутри сети, для которого они предназначаются. 

Маскарадинг в NAT

Таким образом, все получатели данных из внешней сети видят в сети только роутер и обращаются к его IP-адресу. Компьютеры, планшеты и другие устройства в локальной сети остаются невидимыми.

 

Работа NAT в обратном направлении

Эта схема имеет одну особенность: роутер принимает только те пакеты данных, которые приходят по соединению, инициированному компьютером из внутренней сети. Если компьютер или сервер из внешней сети пытается установить соединение первым, роутер его сбрасывает. А для указанных выше пунктов (игровой сервер, пиринговые сети и т. п.) такое соединение должно быть разрешено. Вот для этого и применяется проброс портов. Фактически, это команда роутеру зарезервировать один порт и все данные извне, которые на него поступают, передавать на определенный компьютер. Т. е. сделать исключение из маскарадинга, прописав новое правило.

 

Настройка Port Forwarding в MikroTik

В MikroTik управление настройкой проброса портов находится в меню IP =>Firewall =>NAT.

Port Forwarding в MikroTik

 

По умолчанию здесь прописан тот самый маскарадинг - подмена внутренних локальных адресов внешним адресом сервера. Мы же здесь создадим дополнительное правило проброса портов.

Port forwarding NAT Mikrotik

 

Настройка вкладки General

Нажимаем плюсик и в появившемся окне заполняем несколько полей:

  • Chain - направление потока данных. В списке выбора - srcnat, что означает "изнутри наружу", т. е. из локальной сети во внешний мир, и dstnat - из внешней сети во внутреннюю. Мы выбираем второе, так как будем принимать входящие подключения.
  • Src. Address Dst. Address - внешний адрес, с которого будет инициироваться подключение, и адрес назначения (всегда адрес роутера). Оставляем незаполненным.
  • Protocol - здесь указываем вид протокола для нашего соединения, tcp или udp, заполняем обязательно.
  • Src. Port (исходящий порт) - порт удаленного компьютера, с которого будут отправляться данные, оставляем пустым, если для нас это неважно.
  • Dst. Port (порт назначения) - проставляем номер внешнего порта роутера, на который будут приходить данные от удаленной машины и переадресовываться на наш компьютер во внутренней сети.
  • Any. Port (любой порт) - если мы проставим здесь номер порта, то укажем роутеру, что этот порт будет использоваться и как исходящий, и как входящий (объединяя два предыдущие поля в одном).
  • In. interface (входящий интерфейс) - здесь указываем интерфейс роутера MikroTik, на котором используется, "слушается" этот порт. В нашем случае, так как мы делаем проброс для поступления данных извне, это интерфейс, через который роутер подключен к Интернет, по умолчанию это ether1-gateway. Параметр нужно указать обязательно, иначе порт не будет доступным из локальной сети. Если мы подключены к провайдеру через pppoe, то возможно, потребуется указать его, а не WAN-интерфейс.
  • Out. interface (исходящий интерфейс) - интерфейс подключения компьютера, для которого мы делаем проброс портов.

 

Настройка проброса портов вкладка General

 

Настройка вкладки Action

В поле Action прописываем действие, которое должен будет выполнять роутер. Предлагаются варианты:

 
  • accept — просто принимает данные;
  • add-dst-to-address-list — адрес назначения добавляется в список адресов;
  • add-src-to-address-list — исходящий адрес добавляется в соответствующий список адресов;
  • dst-nat — перенаправляет данные из внешней сети в локальную, внутреннюю;
  • jump — разрешает применение правила из другого канала, например при установленном в поле Chain значения srcnat — применить правило для dstnat;
  • log — просто записывает информацию о данных в лог;
  • masquerade — маскарадинг: подмена внутреннего адреса компьютера или другого устройства из локальной сети на адрес маршрутизатора;
  • netmap — создает переадресацию одного набора адресов на другой, действует более расширенно, чем dst-nat;
  • passthrough — этот пункт настройки правил пропускается и происходит переход сразу к следующему. Используется для статистики;
  • redirect — данные перенаправляются на другой порт этого же роутера;
  • return — если в этот канал мы попали по правилу jump, то это правило возвращает нас обратно;
  • same — редко используемая настройка один и тех же правил для группы адресов;
  • src-nat — переадресация пакетов из внутренней сети во внешнюю (обратное dst-nat перенаправление).
 
 

Для наших настроек подойдут варианты dst-nat и netmap. Выбираем последний, как более новый и улучшенный.

Проброс портов, настройка вкладки Action

В поле To Adresses прописываем внутренний IP-адрес компьютера или устройства, на который роутер должен будет перенаправлять данные по правилу проброса портов.

В поле To Ports, соответственно, номер порта, к примеру:

  • 80/tcp — WEB сервер,
  • 22/tcp — SSH,
  • 1433/tcp — MS SQL Server,
  • 161/udp — snmp,
  • 23/tcp — telnet и так далее.

 

Если значения в поле Dst. Port предыдущей вкладки и в поле To Ports совпадают, то здесь его можно не указывать.

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

Комментарий к правилу проброса портов на Микротике

Таким образом, мы создали правило для проброса портов и доступа к внутреннему компьютеру (в локальной сети) из Интернет. Напомним, что его нужно поставить выше стандартных правил маскарадинга, иначе оно не будет работать (Микротик опрашивает правила последовательно).

Если вам необходимо заходить по внешнему IP-адресу и из локальной сети, нужно настроить Hairpin NAT, об этом можно прочитать здесь.

Про проброс портов для FTP-сервера рассказывается здесь.

Оцените материал:
4.2 (голосов 88)
Предыдущая статья
24.02.2015
Краткий обзор последних новинок
Следующая статья
18.03.2015
Настройка VPN через MikroTik - PPtP и PPPoE
Комментарии


  • 11.10.2021, 13:05
    Владимир
    Не транслируется порт, в чём ошибка?
    add action=masquerade chain=srcnat comment="LAN to WAN" out-interface=WAN src-address=192.168.88.0/24
    add action=dst-nat chain=dstnat dst-port=60104 in-interface=WAN protocol=tcp to-addresses=192.168.88.144 to-ports=57880
    add action=src-nat chain=srcnat dst-address=192.168.88.144 dst-port=57880 protocol=tcp to-addresses=192.168.88.1
    add action=accept chain=forward comment="accept WAN -> LAN RDP" dst-address=192.168.88.144 dst-port=57880 in-interface=wan protocol=tcp
  • 06.02.2021, 12:05
    Владимир
    Уважаемые знатоки. Имеется локальная сеть на два рабочих места (основное и удаленное), соединенных радиомостом на двух RB SXT 2nD.
    На основном установлен роутер-1 (RB952Ui-5ac2nD). К нему подключены: Интернет (порт WAN), компьютер-1 (порт LAN1-master) и "базовый" блок р/радиомоста через PPoE порт (LAN4-slave). На роутере-1 NAT включён,scrnat, out interfase = pppoe-out1.
    На удаленном рабочем месте установлен "удаленный" блок р/моста, подключённый к роутеру-2 (RB951Ui-2HnD) через PPoE порт (ether5). К роутеру-2 подключен компьютер-2 через порт ethtr2. На роутере-2 NAT отключен, все порты объединены.
    Сеть работает нормально, но не могу наладить удаленное включение компьютера-2 с компьютера-1. Сетевые платы обоих компьютеров настроены на получение "магического пакета". При попытке добавить в NAT роутера-1 правило пропуска на порт №9 UDP пакетов, роутер-1 пишет, что не может добавить это правило т.к.: "outgoing interface matching not possible in input and prerouting chains".
    Что делать дальше - не знаю. Прошу у вас помощи советом, указанием на мою ошибку или ссылкой на источник, где можно прочитать рецепт решения проблемы.
    Прошу сильно не пинать за возможные мои ляпы т.к. профильного образования не имею (бывший военный летчик) и возраст "за 70 лет".
    Заранее благодарю за любой ответ всех кто откликнется.
  • 15.12.2020, 11:59
    Артур
    Здравствуйте,

    Есть микротик и ip камера.
    Или возможно подключить ip камеру на другой регистратор.
    То есть на другую точку, где находиться так же микротик. И другая точка работает по VPN.
    В центральном офисе подключить камеру до маршрутизатора и что бы камера работала с другова офиса в котором находиться нужный регистратор?
  • 06.11.2020, 17:27
    Иван
    Тип через 2IP.ru пишет что порт открыт на роутере... а к бд подключиться не могу
  • 06.11.2020, 17:25
    Иван
    Я вот не знаю, пытаюсь сделать все как указано, но ничего не получаеться, удаленно не видно бд, ХЕЛЛЛПАААА
  • 20.04.2020, 16:48
    Андрей
    Ниху@ не работает
  • 17.03.2020, 08:56
    Алексей Бугров
    "правило для проброса портов и доступа к внутреннему компьютеру (в локальной сети) из Интернет... нужно поставить выше стандартных правил маскарадинга, иначе оно не будет работать"
    Источник: https://lantorg.com/article/probros-portov-na-mikrotik © LanTorg.com
    Как правило "поставить выше"?
  • 13.03.2020, 00:57
    Vlad
    Все получилось, сорри.
  • 12.03.2020, 23:42
    Vlad
    connection refused.. не получилось((
  • 24.09.2019, 08:04
    Комментарий администратора
    Валерий, спасибо! Дополним статью.
  • 19.09.2019, 07:36
    Валерий
    Коротко и ясно, спасибо.
    Но, почитал комментарии, там у некоторых всё таки не получалось подключиться после настройки проброса.
    Рекомендую напомнить в статье, что в MikroTik правила файервола и ната опрашиваются последовательно, а значит чтобы данное правило сработало, его необходимо поставить выше дефолтного правила маскарадинга. В противном случае его перебьет правило общей маски.
    А если люди только начинают с этим знакомиться, то часто забывают об этом, нелишне будет напомнить.
  • 14.07.2019, 08:40
    Сергей
    Подскажите пожалуйста, каким образом можно реализовать перенаправление трафика, поступающего на внешний интерфейс микротика снаружи, чтобы в зависимости от диапазона портов назначения, например, 30000-30100 они перенаправлялись на диапазон внутренних адресов, например, 192.168.1.100-192.168.200 на определённый порт, например, 3389, ОДНИМ-ДВУМЯ правилами, а не так чтобы городить для каждого внутреннего хоста своё правило? Понимаю, что это не очень безопасно, в но в ряде случаев такая задача может встречаться.
  • 02.07.2019, 10:48
    Комментарий администратора
    Максим, спасибо за дополнение! При случае протестируем :)
  • 01.07.2019, 19:33
    Максим
    Ошибки проброса портов.
    !. при пробросе порта без изменения его номера поле "To Ports" нужно оставлять пустым. Указывая номер порта, мы загружаем проц для тупого действия замены одного номера на такой же.
    2. Действие "Netmap" предназначено для мапинга сетей один к одному! Используйте "DstNat" в поле "Action". Это также снизит нагрузку на процессор!
  • 25.01.2019, 14:14
    NFr
    Сделал всё как в статье для порта 16261. ПРоверил через сайты и через программу порт закрыт. Перепроверил сделанное. Пакеты на порт приходят,
  • 03.12.2018, 20:06
    Владислав
    Спасибо за статью! Однако, осталось нераскрытым, как перенаправить порт сразу на все компьютеры в сети, и как перенаправить его и для основного провайдера (PPPoE) и для резервного (USB-модем).
  • 23.05.2018, 09:50
    Комментарий администратора
    Илья, к сожалению, мы не можем расписать все тонкости настройки. Возможно, позже будет оформлен дополнительный гайд по данному вопросу. А пока, можем посоветовать вам обратиться к мастерам по настройке оборудования от вашего провайдера.
  • 21.05.2018, 21:10
    Илья
    Скажите, а как можно выполнить настройку prerouting и postrouting?
  • 14.05.2018, 11:04
    Комментарий администратора
    Илья, в этой схеме данное правило NAT не работает, оставьте это поле незаполненным. Подобная ошибка требует дополнительной настройки prerouting и postrouting.
  • 13.05.2018, 15:10
    Илья
    При указании Out. Interface выводится ошибка "Couldn't change NAT Rule <> - outgoing interface matching not possible in input and prerouting chains (6)".
  • 14.04.2017, 19:22
    Cod
    microtik это шляпный роутер, при пробросе портов - ПК, на который приходят пакеты видит адрес не внешнего IP, а адрес (IP) роутера. Это, вообще, с какого бодуна было так криво реализовано, такого даже на мыльницах не видел...
  • 26.12.2016, 13:11
    Александр
    Прочел, настроил, все работает. Полезная статья, спасибо.
  • 28.10.2016, 09:19
    Комментарий администратора
    pappy, да, не совсем точно сформулировано. Имелось в виду, что у netmap действует более расширенно, чем dst-nat.
  • 27.10.2016, 16:12
    pappy
    >>>netmap — более новая вариация dst-nat;
    перестаньте вводить людей в заблуждение.
    это всего лишь NAT1:1 подмена один к одному, а не новая вариация.
  • 10.10.2016, 09:28
    Комментарий администратора
    Игорь, спасибо, мы не заметили эту опечатку :)
  • 08.10.2016, 19:19
    Игорь
    Подправьте первую картинку. Там в левом верхнем прямоугольничке ошибочно указан IP 64.234.166.25 новичков будет смущать )))
  • 19.05.2016, 09:02
    Комментарий администратора
    Алексей, так сложно сказать. Пробросили все необходимые порты? Для видеорегистратора их может быть несколько, и они могут быть разными, в зависимости от модели. Какие именно порты использует регистратор можно посмотреть в его настройках. Также, возможно, нужно поменять порт 80 (доступ по веб-интеррфейсу) на 88 и пробрасывать его, а не 80, чтобы не возникало конфликтов с роутером.
  • 17.05.2016, 17:22
    Алексей
    Подскажите делаю все как указанно в статье но не могу зайти на регистратор
  • 26.10.2015, 16:32
    Комментарий администратора
    Сергей, если мы правильно поняли, вам нужна "шпилька", погуглите по теме Hairpin NAT, нужно будет прописать 2 дополнительных правила. Спасибо за вопрос, постараемся, как только будет время, добавить информацию по этой настройке в статью.
  • 26.10.2015, 14:22
    Сергей
    Добрый день! Подскажите пожалуйста, извне работает, а как сделать чтобы по этому же адресу внешнему можно было подключиться к серверу с локальной сети? Т.е. чтобы работал редирект извне и с локалки.
  • 15.05.2015, 18:11
    Денис
    Сделал все настройки как описано в статье, но на ВЕБморду камеры попасть извне не могу. Ввожу адрес и порт (пример 176.24.9.27:8080), внутрисетевой адрес камеры 192.168.1.50:8080. На сам роутер извне доступ есть (при вводе адреса 176.24.9.27). Может еще какие то настройки надо вводить? На пример в "Filter Rules"?
  • 06.03.2015, 08:48
    Комментарий администратора
    Сергей, при написании статьи информация использовалась из нескольких источников, в том числе и из указанной вами статьи на хабре. Общепринято, что если при подготовке материала используется более двух различных источников, материал считается авторским, и ссылки на источники не указываются (за исключением дословного цитирования).

    По второму вопросу - да, возможности для углубления в тему еще оставались, но статья и так получилась объемная :). Спасибо за пожелание, постараемся учесть, и если читателям будет интересно, осветим отдельные моменты подробнее.
  • 06.03.2015, 08:36
    Сергей
    Статья нормальная, но два замечания:
    1) Это переработанная статья с Хабра *ссылка удалена*, о чем не указано, что не очень порядочно.
    2) В части chain лучше было рассказать про iptables дать схему прохождения пакетов со всеми цепочками prerouting, postrouting, forward, input, output. Так будет понятнее и корректнее чем "srcnat, что означает "изнутри наружу", т. е. из локальной сети во внешний мир, и dstnat - из внешней сети во внутреннюю."
Запросить прайс
Подписаться на новости
Задать вопрос
Написать директору