Guida MikroTik
VPN e tunnelAvanzato

Routing dinamico su VPN: OSPF sopra i tunnel

Far girare OSPF dentro i tunnel (WireGuard/GRE) elimina le rotte statiche manuali: i POP si scoprono da soli, il failover è automatico. Configurazione OSPFv2 su RouterOS v7, costi e ridondanza.

Con due POP basta una rotta statica. Con dieci POP collegati a maglia, gestire le rotte statiche a mano diventa ingestibile e fragile: ogni nuova rete va aggiunta ovunque, e in caso di guasto il failover non è automatico. La soluzione è far girare OSPF dentro i tunnel: i router si annunciano le reti da soli e ricalcolano i percorsi quando un link cade.

Prerequisito: il tunnel deve trasportare OSPF

  • GRE/IPIP/EoIP: trasportano nativamente multicast/OSPF, perfetti.
  • WireGuard: è L3 unicast; OSPF su WireGuard funziona se imposti correttamente gli allowed-address e usi reti punto-punto. RouterOS v7 lo gestisce; assicurati che gli IP del link tunnel siano negli allowed-address di entrambi i peer.
  • Assegna sempre un /30 (o /31) sul link del tunnel: OSPF stabilisce l'adiacenza su quegli IP.
OSPFv2 — istanza, area e interfaccia tunnel
# Istanza OSPF con router-id stabile (usa un loopback!)
/routing/ospf/instance/add name=core router-id=10.255.255.101

# Area backbone
/routing/ospf/area/add name=backbone area-id=0.0.0.0 instance=core

# Abilita OSPF sull'interfaccia tunnel come punto-a-punto
/routing/ospf/interface-template/add \
  area=backbone \
  interfaces=wg-siteB \
  type=ptp \
  cost=100 \
  comment="OSPF su tunnel verso sede B"
Annunciare i loopback e le reti locali
# Loopback come router-id e indirizzo sempre raggiungibile
/interface/bridge/add name=lo0
/ip/address/add address=10.255.255.101/32 interface=lo0

# Includi il loopback e la LAN nell'area (via interface-template o network)
/routing/ospf/interface-template/add area=backbone \
  interfaces=lo0 passive=yes
/routing/ospf/interface-template/add area=backbone \
  interfaces=bridge-lan passive=yes \
  comment="Annuncia LAN senza formare adiacenze sugli host"
Usa passive=yes sulle interfacce verso gli host (LAN, loopback): la rete viene annunciata ma OSPF non cerca vicini lì (evita adiacenze inutili e rischi di sicurezza). Forma adiacenze SOLO sulle interfacce tunnel.

Failover automatico con i costi

Se un POP ha due tunnel verso il core (es. uno via radio principale, uno via 4G/SSTP di backup), assegna un costo OSPF più basso al percorso preferito e più alto al backup. Quando il primario cade, OSPF ricalcola e instrada dal backup; quando torna, rientra automaticamente.

Costi per preferire il radio e usare il backup solo al bisogno
# Percorso primario (radio): costo basso
/routing/ospf/interface-template/set \
  [find interfaces=wg-bts] cost=50

# Percorso di backup (es. tunnel su 4G/SSTP): costo alto
/routing/ospf/interface-template/set \
  [find interfaces=sstp-backup] cost=500

Verifica adiacenze e rotte apprese

Comandi di controllo OSPF
# Vicini OSPF (devono essere in stato Full)
/routing/ospf/neighbor/print

# Interfacce OSPF attive
/routing/ospf/interface/print

# Rotte apprese via OSPF (flag 'Do' = dynamic ospf)
/ip/route/print where ospf
Sicurezza: abilita l'autenticazione OSPF (chiave per area/interfaccia) per impedire che un router non autorizzato inietti rotte. E poiché OSPF gira *dentro* tunnel già cifrati (WireGuard/IPsec), gli annunci non transitano mai in chiaro su Internet.
Per reti molto grandi valuta BGP tra le sedi invece di OSPF (più scalabile, policy di routing fini). Per la maggior parte dei WISP, OSPF sopra i tunnel è il giusto equilibrio tra semplicità e automatismo. Vedi la categoria Routing per OSPF/BGP in dettaglio.
ospfrouting dinamicoospf over vpnospf su tunnelwireguard ospfgre ospffailoverridondanzaareapoint-to-pointospf costwispmulti-popconvergenza

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