Hairpin nat - это когда требуется попасть из локальной сети на локальный же ресурс, но на маршрутизаторе трафик обрубается.
В данном примере пробрасываем порты 80 и 443
192.168.88.0/24 - наша подсеть
XXX.XXX.XXX.XXX - внешний IP-адрес
192.168.88.5 - сервер, куда делать проброс
Для прошивок старше 7.0:
/ip firewall nat add action=masquerade chain=srcnat comment=HairpinNat dst-address=192.168.88.0/24 src-address=192.168.88.0/24 add action=masquerade chain=srcnat out-interface-list=WAN add action=dst-nat chain=dstnat comment="Hairpin NAT for HTTP" dst-address=!192.168.88.1 dst-address-type=local dst-port=80 protocol=tcp to-addresses=192.168.88.5 to-ports=80 add action=dst-nat chain=dstnat comment="Hairpin NAT for HTTPS" dst-address=!192.168.88.1 dst-address-type=local dst-port=443 protocol=tcp to-addresses=192.168.88.5 to-ports=443
Для прошивок до 7.0:
/ip firewall nat add chain=dstnat action=dst-nat to-addresses=192.168.88.5 protocol=tcp dst-address=XXX.XXX.XXX.XXX in-interface-list=WAN dst-port=80 comment="Allow for HTTP" add chain=dstnat action=dst-nat to-addresses=192.168.88.5 protocol=tcp dst-address=XXX.XXX.XXX.XXX in-interface-list=WAN dst-port=443 comment="Allow for HTTPS" add chain=srcnat action=masquerade to-addresses=192.168.88.5 protocol=tcp src-address=192.168.88.0/24 dst-address=XXX.XXX.XXX.XXX dst-port=80 comment="Hairpin NAT for HTTP" add chain=srcnat action=masquerade to-addresses=192.168.88.5 protocol=tcp src-address=192.168.88.0/24 dst-address=XXX.XXX.XXX.XXX dst-port=443 comment="Hairpin NAT for HTTPS"