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

NAT + InterfaceList

Добавлено: 02 окт 2017, 15:30
Dragon_Knight
Всем привет.

Наконец мне восстановили основной инет, стал возвращать все настройки маршрутизатора и столкнулся с проблемой.
Ситуация такая: Теперь у меня два провайдера (оптика + 4G). Я создал InterfaceList с двумя этими WAN портами и прописал правила маршрутизации:

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

/ip firewall nat
add action=masquerade chain=srcnat out-interface-list=WANs
add action=dst-nat chain=dstnat comment="To HTTP Server" dst-port=80 in-interface-list=WANs protocol=tcp to-addresses=10.0.0.10 to-ports=80
add action=dst-nat chain=dstnat comment="To HTTPS Server" dst-port=443 in-interface-list=WANs protocol=tcp to-addresses=10.0.0.10 to-ports=443

В итоге теперь из вне всё работает хорошо, а изнутри сети я попадаю на веб-интерфейс микротика.
Сети у серверов (10.0.0.0/24) и компом (10.0.1.0/24) разные, поэтому использовать Hairpin NAT смысла нету.

В чём собственно дело?

Re: NAT + InterfaceList

Добавлено: 02 окт 2017, 17:44
Dragon_Knight
Вопрос закрыт. vqd помог разобраться в ситуации.

Проблема была в том, что когда запрос идёт из сети, то маршрутизатор ждёт входящий трафик с внешнего интерфейса, а он приходит в внутреннего. Соответственно правило NAT не срабатывает.
Решение: Создать адрес-лист со списком внешних IP, и в настройках NAT правила указывать именно его в качестве адреса назначения.
Пример:

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

/ip firewall nat
add action=masquerade chain=srcnat out-interface-list=WANs
add action=dst-nat chain=dstnat comment="To HTTP Server" dst-address-list=WANs dst-port=80 protocol=tcp to-addresses=10.0.0.10 to-ports=80
add action=dst-nat chain=dstnat comment="To HTTPS Server" dst-address-list=WANs dst-port=443 protocol=tcp to-addresses=10.0.0.10 to-ports=443