Guida MikroTik
VPN e tunnelAvanzato

EoIP cifrato con IPsec manuale: VLAN clienti tra POP

Trasporta L2 (VLAN clienti, management) tra due POP con EoIP, cifrando il trasporto con IPsec configurato a mano per controllare cifrari, PFS e lifetime — più robusto della scorciatoia ipsec-secret.

Il caso classico di un WISP: due POP collegati via radio o fibra di terzi, e si vuole far transitare un trunk di VLAN clienti o la VLAN di management come se i due siti fossero sullo stesso switch. EoIP è il tunnel L2 giusto; per la sicurezza lo si cifra con IPsec. La scorciatoia ipsec-secret funziona, ma per la produzione conviene configurare IPsec manualmente così controlli cifrari, PFS e durata delle SA.

Passo 1 — EoIP senza ipsec-secret (lo cifriamo a parte)

Router A — EoIP "nudo" + bridge VLAN
# EoIP puro (la cifratura la fa IPsec sotto)
/interface/eoip/add name=eoip-popB tunnel-id=10 \
  local-address=10.0.0.1 remote-address=10.0.0.2 \
  allow-fast-path=no

# Bridge con VLAN-aware: trasporta più VLAN nel tunnel
/interface/bridge/add name=br-trunk vlan-filtering=yes
/interface/bridge/port/add bridge=br-trunk interface=eoip-popB
/interface/bridge/port/add bridge=br-trunk interface=ether2

Passo 2 — IPsec in transport mode sul traffico EoIP

Router A — profilo, proposta, peer, identità
/ip/ipsec/profile/add name=eoip-prof dh-group=ecp256 \
  enc-algorithm=aes-256 hash-algorithm=sha256 nat-traversal=no
/ip/ipsec/proposal/add name=eoip-prop \
  enc-algorithms=aes-256-gcm auth-algorithms=null pfs-group=ecp256 lifetime=8h

/ip/ipsec/peer/add name=peer-popB address=10.0.0.2/32 \
  exchange-mode=ike2 profile=eoip-prof
/ip/ipsec/identity/add peer=peer-popB auth-method=pre-shared-key \
  secret="EoIP-PSK-MoltoForte!2024"
Router A — policy che cifra SOLO il traffico EoIP
# EoIP gira su GRE proto 47; cifriamo il trasporto tra gli endpoint
# transport mode (tunnel=no): cifra il payload tra i due IP WAN
/ip/ipsec/policy/add peer=peer-popB \
  src-address=10.0.0.1/32 dst-address=10.0.0.2/32 \
  protocol=gre tunnel=no action=encrypt proposal=eoip-prop
Configura il Router B in modo perfettamente speculare (scambia local/remote address, src/dst nella policy; tunnel-id e secret identici). In transport mode src/dst della policy sono gli IP WAN dei due router, non le reti interne.
MTU: EoIP (42 byte) + IPsec/ESP (decine di byte) riducono molto la MTU utile. Su un trunk L2 a 1500 byte rischi frammentazione. Imposta una MTU coerente sull'interfaccia EoIP e, dove passi traffico IP, applica MSS clamping (vedi articolo dedicato). Su link radio valuta jumbo frame se la catena li supporta tutta.
Verifica che la SA usi AES-GCM hardware (su CCR) con /ip/ipsec/installed-sa/print; controlla i contatori rx/tx bilanciati. Per il bridge VLAN-aware ricorda di dichiarare le VLAN con /interface/bridge/vlan/add su entrambi i lati.
eoipipseclayer2bridgevlanpopbtstrasporto l2transport modeaes-gcmpolicywispeoip su ipsecvlan trunk tunnel

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