Страница 1 из 1

Hairpin NAT со сменой порта

Добавлено: 05 мар 2019, 16:37
KotoSobak
Добрый день.
В сети есть веб-сервер, на который извне сделан проброс порта 3211--->80.
Необходимо сделать доступ к нему изнутри сети по внешнему адресу и порту 3211.
Все инструкции по созданию правил HairpinNAT как то эту тему обходят и не получается у меня сделать такой финт.
Если подмену порта убрать, то подключается.

Код: Выделить всё

add action=masquerade chain=srcnat comment="Hairpin" dst-address=192.168.0.252 dst-port=3211 protocol=tcp src-address=192.168.0.0/24
add action=dst-nat chain=dstnat comment="Hairpin2" dst-address=xxx.xxx.xxx.xxx dst-port=3211 protocol=tcp to-addresses=192.168.0.252 to-ports=80
Правило NAT

Код: Выделить всё

add action=dst-nat chain=dstnat comment="Web to server (192.168.0.252)" dst-port=3211 in-interface=ether1 protocol=tcp to-addresses=192.168.0.252 to-ports=80

Re: Hairpin NAT со сменой порта

Добавлено: 21 мар 2019, 16:51
Chupakabra303
Маскарадинг нужно к dst-port=80 применять.
Если у вас 1 порт только маскируется, то наверное можно было бы и src-nat-ом обойтись.

Вот моя Hairpin конфигурация для ftp но без изменения портов, правда:

Код: Выделить всё

add action=masquerade chain=srcnat comment="Hairpin NAT \E4\EB\FF FTP" dst-address=172.16.1.111 dst-port=20-21,55536-55599 out-interface=bridge1 protocol=tcp src-address=172.16.1.0/24
(тут только для dst-address принадлежащих маршрутизатору, т.е. dst-address-type=local)

Код: Выделить всё

add action=dst-nat chain=dstnat comment="DS1 FTP (+Dst. Address Type = local)" dst-address-type=local dst-port=20-21,55536-55599 protocol=tcp to-addresses=172.16.1.111

Re: Hairpin NAT со сменой порта

Добавлено: 26 авг 2020, 10:08
densne
Добрый день.
Такая же ситуация, без подмены портов работает работает и подключается.
Извне сделан проброс 8070 -> 443 на локальный сервер 192.168.1.70 всё ок.
Из этой же сети 192.168.1.0/24 по внешнему адресу на порт 8070 отказ.

Как сделать src-nat с подменой:(?

Re: Hairpin NAT со сменой порта

Добавлено: 26 авг 2020, 10:37
Erik_U
srcnat для запросов изнутри на свой внешний IP + dstnat для запросов на внешний IP на порт веб сервера с нетмапом на адрес/порт внутри.
Наверно.

Re: Hairpin NAT со сменой порта

Добавлено: 26 авг 2020, 13:39
xvo
densne писал(а): 26 авг 2020, 10:08 Добрый день.
Такая же ситуация, без подмены портов работает работает и подключается.
Извне сделан проброс 8070 -> 443 на локальный сервер 192.168.1.70 всё ок.
Из этой же сети 192.168.1.0/24 по внешнему адресу на порт 8070 отказ.

Как сделать src-nat с подменой:(?
Гуглите "hairpin nat".

Re: Hairpin NAT со сменой порта

Добавлено: 27 авг 2020, 14:26
densne
спасибо,
гуглил и до вопроса, везде академически рассматривают пример когда пробрасывается порт без подмены, вот и спрашивал о подводных камнях.

Re: Hairpin NAT со сменой порта

Добавлено: 27 авг 2020, 15:04
xvo
densne писал(а): 27 авг 2020, 14:26 спасибо,
гуглил и до вопроса, везде академически рассматривают пример когда пробрасывается порт без подмены, вот и спрашивал о подводных камнях.
Нет там никаких подводных камней.
"Без подмены" - это просто частный случай, когда dst-port и to-ports совпадают.

Re: Hairpin NAT со сменой порта

Добавлено: 27 авг 2020, 19:10
Ca6ko
Подводные камни встречаются на оборудовании.
Например, видеорегистраторы Дахуа криво работают если производится подмена порта, когда порт в порт работают стабильно :ne_vi_del: