Guida MikroTik
Firewall e QoSBase

NAT in RouterOS — Masquerade, Port Forwarding e Hairpin

Network Address Translation permette a una rete privata di condividere un singolo IP pubblico (srcnat/masquerade) e di esporre servizi interni su Internet (dstnat/port-forward), con la variante hairpin per i client LAN.

Il NAT in RouterOS opera nella chain nat con due sotto-chain: srcnat (modifica l'indirizzo sorgente, tipicamente in postrouting) e dstnat (modifica l'indirizzo destinazione, tipicamente in prerouting, prima della decisione di routing). La scelta tra le due dipende da cosa si vuole modificare nel pacchetto.

srcnat — Masquerade vs src-nat

Masquerade usa dinamicamente l'IP corrente dell'interfaccia WAN: ideale per connessioni DHCP o PPPoE dove l'IP pubblico cambia. src-nat usa un IP statico: più efficiente (meno lookup) ma richiede un IP pubblico fisso.

srcnat — configurazioni comuni
# MASQUERADE — IP WAN dinamico (DHCP/PPPoE)
# Tutta la rete 192.168.88.0/24 esce con l'IP corrente di ether1
/ip firewall nat add   chain=srcnat   src-address=192.168.88.0/24   out-interface=ether1   action=masquerade   comment="Masquerade LAN -> WAN (IP dinamico)"

# SRC-NAT — IP WAN statico (più performante di masquerade)
/ip firewall nat add   chain=srcnat   src-address=192.168.88.0/24   out-interface=ether1   action=src-nat to-addresses=203.0.113.1   comment="SRC-NAT LAN -> WAN con IP fisso"

# NETMAP — mappatura 1:1 tra range di indirizzi
# (es. 10.0.0.0/24 privato -> 203.0.113.0/24 pubblico, stesso offset)
/ip firewall nat add   chain=srcnat   src-address=10.0.0.0/24   out-interface=ether1   action=netmap to-addresses=203.0.113.0/24   comment="1:1 NAT tra subnet privata e pubblica"

dstnat — Port Forwarding

dstnat — port forwarding e redirect
# PORT FORWARDING — espone un server interno su Internet
# Traffico verso IP-pubblico:80 → viene inoltrato a 192.168.88.100:80
/ip firewall nat add   chain=dstnat   protocol=tcp   dst-address=203.0.113.1   dst-port=80   action=dst-nat   to-addresses=192.168.88.100   to-ports=80   comment="Port-forward HTTP -> web server interno"

# PORT FORWARDING SSH esterno su porta non standard 2222 -> porta 22 interna
/ip firewall nat add   chain=dstnat   protocol=tcp   in-interface=ether1   dst-port=2222   action=dst-nat   to-addresses=192.168.88.50   to-ports=22   comment="Port-forward SSH su porta alternativa"

# REDIRECT locale — reindirizza tutto il traffico DNS dei client
# verso il resolver locale del router (utile per DNS filtering)
/ip firewall nat add   chain=dstnat   protocol=udp   in-interface-list=LAN   dst-port=53   action=redirect   to-ports=53   comment="Redirect DNS: forza tutti i client a usare il DNS del router"

Hairpin NAT (NAT loopback)

Senza Hairpin NAT, un client LAN che tenta di raggiungere un server interno usando l'IP pubblico del router riceve una risposta con sorgente privata, causando un timeout. Con l'Hairpin, il router masquera anche il traffico in uscita dalla LAN verso il server interno.

Hairpin NAT — configurazione completa
# PASSO 1: regola dstnat (già presente per il port-forward)
/ip firewall nat add   chain=dstnat   protocol=tcp   dst-address=203.0.113.1   dst-port=443   action=dst-nat   to-addresses=192.168.88.100   to-ports=443   comment="dstnat HTTPS -> web server interno"

# PASSO 2: regola srcnat hairpin
# Quando un client LAN raggiunge il server interno via IP pubblico,
# masquera la sorgente con l'IP LAN del router.
# Così il server risponde al router, che poi rigira la risposta al client.
/ip firewall nat add   chain=srcnat   protocol=tcp   src-address=192.168.88.0/24   dst-address=192.168.88.100   dst-port=443   out-interface=LAN   action=masquerade   comment="Hairpin NAT: LAN -> server interno via IP pubblico"

# IMPORTANTE: dopo aver aggiunto/modificato regole NAT, svuota il conntrack
/ip firewall connection remove [find]
Sicurezza: il port forwarding espone servizi interni su Internet. Limitare sempre il traffico in entrata con regole firewall filter aggiuntive (es. src-address-list per IP autorizzati). Non esporre mai RDP (3389), Winbox (8291) o SSH (22) direttamente su Internet senza restrizioni di IP sorgente o VPN.
NATsrcnatdstnatmasqueradeport forwardinghairpin NATnetmap1:1 NATredirectnat loopback

Configura senza fatica con l'AI

In WispOS l'agente AI genera la configurazione RouterOS dalle tue parole e un tutor ti guida passo passo.

Prova WispOS