
Проброс портов на MikroTik
Необходимость настройки проброса портов (Port Forwarding) на роутерах MikroTik встречается довольно часто. Но даже для опытного администратора конфигурирование микротиковских маршрутизаторов может показаться сложным, тем более для обычного пользователя. Хотя как раз за широкие функциональные возможности, наряду со стабильностью и надежностью работы, эти устройства и ценятся.
В сегодняшней статье мы постараемся дать как можно более понятную инструкцию по настройке проброса портов на примере роутера MikroTik RB951-2n (изображен на картинке выше).
Для чего нужен проброс портов?
Для чего вообще вам может понадобиться такая настройка? Чаще всего Port Forwarding используется для:
- организации игрового сервера на домашнем компьютере,
- организации пиринговых (одноранговых) сетей,
- для доступа к IP-камере из интернета,
- корректной работы торрентов,
- работы WEB и FTP-серверов.
Настройка Port Forwarding в MikroTik
В MikroTik управление настройкой проброса портов находится в меню IP =>Firewall =>NAT.
По умолчанию здесь прописан тот самый маскарадинг - подмена внутренних локальных адресов внешним адресом сервера. Мы же здесь создадим дополнительное правило проброса портов.
Настройка вкладки 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 (исходящий интерфейс) - интерфейс подключения компьютера, для которого мы делаем проброс портов.

Настройка вкладки 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. Выбираем последний, как более новый и улучшенный.
В поле 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-сервера рассказывается здесь.
Комментарии
Есть микротик и ip камера.
Или возможно подключить ip камеру на другой регистратор.
То есть на другую точку, где находиться так же микротик. И другая точка работает по VPN.
В центральном офисе подключить камеру до маршрутизатора и что бы камера работала с другова офиса в котором находиться нужный регистратор?
Источник: https://lantorg.com/article/probros-portov-na-mikrotik © LanTorg.com
Как правило "поставить выше"?
Но, почитал комментарии, там у некоторых всё таки не получалось подключиться после настройки проброса.
Рекомендую напомнить в статье, что в MikroTik правила файервола и ната опрашиваются последовательно, а значит чтобы данное правило сработало, его необходимо поставить выше дефолтного правила маскарадинга. В противном случае его перебьет правило общей маски.
А если люди только начинают с этим знакомиться, то часто забывают об этом, нелишне будет напомнить.
!. при пробросе порта без изменения его номера поле "To Ports" нужно оставлять пустым. Указывая номер порта, мы загружаем проц для тупого действия замены одного номера на такой же.
2. Действие "Netmap" предназначено для мапинга сетей один к одному! Используйте "DstNat" в поле "Action". Это также снизит нагрузку на процессор!
перестаньте вводить людей в заблуждение.
это всего лишь NAT1:1 подмена один к одному, а не новая вариация.
По второму вопросу - да, возможности для углубления в тему еще оставались, но статья и так получилась объемная :). Спасибо за пожелание, постараемся учесть, и если читателям будет интересно, осветим отдельные моменты подробнее.
1) Это переработанная статья с Хабра *ссылка удалена*, о чем не указано, что не очень порядочно.
2) В части chain лучше было рассказать про iptables дать схему прохождения пакетов со всеми цепочками prerouting, postrouting, forward, input, output. Так будет понятнее и корректнее чем "srcnat, что означает "изнутри наружу", т. е. из локальной сети во внешний мир, и dstnat - из внешней сети во внутреннюю."