Переадресация портов из внутренней сети во внутреннюю сеть (шпилька NAT)

16

Я успешно настроил переадресацию портов на маршрутизаторе Mikrotik, который переводит каждый запрос, идущий на IP-адрес WAN на порте 8844 (скажем, 20.20.20.22:8844) микротика, на локальный IP-адрес и тот же порт.

Поскольку у меня есть DNS-имя для IP-адреса WAN (20.20.20.22), я бы хотел, чтобы это правило также работало из внутренней сети:

192.168.111.77 -> 20.20.20.22:8844 -> 192.168.111.2:8844

Я нашел веб-страницу Mikrotik, которая описывает эту ситуацию: http://wiki.mikrotik.com/wiki/Hairpin_NAT Но я не смог добиться того же.

Вот распечатка правила

введите описание изображения здесь

Это просто частичный экран печати, но все остальное не установлено (пусто).

РЕДАКТИРОВАТЬ: правило переадресации портов и классический маскарад на маршрутизаторе выглядит следующим образом:

/ip firewall nat
add chain=dstnat in-interface=ether1-gateway protocol=tcp dst-port=8844 \
  action=dst-nat to-address=192.168.111.2 to-port=8844
add chain=srcnat out-interface=ether1-gateway action=masquerade
Joudicek Jouda
источник

Ответы:

16

Решение состоит в том, чтобы переписать переадресацию портов для правила, чтобы не использовать in-interface = ether1-gateway , но dst-address-type = local :

/ip firewall nat
add chain=dstnat dst-address-type=local protocol=tcp dst-port=8844 \
  action=dst-nat to-address=192.168.111.2 to-port=8844

Затем добавьте шпильку NAT, как указано в исходном сообщении:

/ip firewall nat
add chain=srcnat src-address=192.168.111.0/24 \
  dst-address=192.168.111.2 protocol=tcp dst-port=8844 \
  out-interface=bridge-local action=masquerade
Joudicek Jouda
источник
Я не могу заставить это работать, если использую мост. Есть идеи?
pcunite
@pcunite: только что протестировал это с RouterOS 6.24 + bridge-local, и он отлично работает!
lifeofguenter
@JoudicekJouda Я также следовал инструкциям в вики wiki.mikrotik.com/wiki/Hairpin_NAT, но они никогда не говорили использовать dst-address-type = local в правиле перенаправления портов, а не in-interface = ether1-gateway . Интересно, почему это имеет значение?
Джонатан Комар
0

Nat Masquerade с 192.168.111.0/24 по 192.168.111.0/24 это работает для всех сервисов одновременно. не указывайте интерфейсы или порт. внутренний порт должен совпадать с внешним портом.

user721084
источник
1
Добро пожаловать в Супер пользователя! Ваш ответ может быть улучшен путем предоставления более подробной информации о том, как его реализовать, особенно для тех, кто может быть новичком в рассматриваемой системе.
Я говорю: восстанови Монику