VRF in RouterOS v7: routing virtuale isolato per multi-tenant e MPLS VPN
Configura VRF (Virtual Routing and Forwarding) in RouterOS v7 per isolare tabelle di routing per clienti o servizi diversi, con uso in contesto MPLS BGP VPN e assegnazione interfacce.
Cos'è VRF e quando usarlo
VRF (Virtual Routing and Forwarding) crea istanze di routing completamente isolate sullo stesso router fisico. Ogni VRF ha la propria tabella di routing, indipendente dalle altre e dalla tabella main. È essenziale per: separare traffico di clienti diversi su un PE router MPLS, isolare servizi interni (es. gestione out-of-band), implementare L3VPN BGP. RouterOS v7 supporta fino a 1024 VRF.
# 1. Creare il VRF e assegnargli un'interfaccia /ip/vrf/add name=cliente-A interfaces=ether3 # 2. Assegnare un IP all'interfaccia nel contesto VRF # (la rotta connected va automaticamente nella tabella VRF) /ip/address/add address=10.100.1.1/24 interface=ether3 # 3. Aggiungere una rotta statica specifica per il VRF /ip/route/add \ dst-address=0.0.0.0/0 \ gateway=10.100.1.254@cliente-A \ routing-table=cliente-A \ comment="Default GW per cliente A" # 4. Verificare le rotte nel VRF specifico /ip/route/print where routing-table=cliente-A # 5. Ordine VRF importante: se main ha interfaces=all, i VRF figli non ricevono interfacce # Riordinare se necessario: /ip/vrf/print /ip/vrf/move 1 0 # sposta VRF cliente-A sopra il main
VRF con BGP per L3VPN (MPLS)
Nel contesto MPLS L3VPN, ogni VRF cliente è associato a un Route Distinguisher (RD) che rende univoci i prefissi anche quando diversi clienti usano lo stesso spazio di indirizzi. I Route Target (RT) controllano quali prefissi vengono importati/esportati tra VRF tramite BGP VPNv4.
# Configurare RD e RT per il VRF cliente /routing/bgp/vpn/add \ label-allocation-policy=per-vrf \ vrf=cliente-A \ export.route-targets=65001:100 \ import.route-targets=65001:100 \ rd=65001:100 # Creare connessione BGP per il PE (template VRF) /routing/bgp/template/add \ name=pe-template \ vrf=cliente-A \ as=65001 # Verificare le rotte VPNv4 /routing/route/print where afi=vpnv4
Nota sul routing tra VRF (route leaking)
Per permettere la comunicazione controllata tra VRF diversi (es. un VRF cliente accede a un VRF shared-services) si può usare il route leaking: aggiungere rotte statiche che puntano al gateway usando la notazione gateway@altro-vrf. Questa tecnica permette traffico selettivo senza unire completamente i VRF.
# Permettere al VRF cliente-A di raggiungere il server DNS nel VRF shared /ip/route/add \ dst-address=172.16.0.0/24 \ gateway=172.16.0.1@shared-services \ routing-table=cliente-A \ comment="DNS/NTP nel VRF shared accessibili da cliente-A"
Continua con
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