Vai al contenuto
Avanet

Configurare e verificare OSPF su Sophos Firewall

OSPF scambia automaticamente le rotte IPv4 tra router. È utile quando più sedi, percorsi ridondanti o reti che cambiano frequentemente diventano troppo difficili da gestire mediante rotte statiche. Per un dominio di routing piccolo o esistente con pochi router, RIPv2 può essere più semplice; OSPF offre invece una convergenza più rapida e un modello di percorsi più scalabile.

Nell’esempio seguente, due Sophos Firewall stabiliscono un’adiacenza OSPF tramite una rete di transito dedicata. Al termine, il vicino è nello stato Full, Firewall A conosce la LAN dietro Firewall B e viceversa. OSPFv3 viene configurato separatamente per IPv6.

⚠️ Le adiacenze OSPF devono essere stabilite solo su interfacce di transito o VPN dedicate e affidabili. Nell’esempio, anche la LAN viene inserita come OSPF Network affinché SFOS ne annunci il prefisso. SFOS abilita così OSPF anche sull’interfaccia LAN e può inviare OSPF Hello in uscita. Dynamic Routing rimane disabilitato per la zona LAN, così da non consentire pacchetti OSPF in ingresso; ciò non impedisce gli Hello in uscita. Non attivare Redistribute connected finché non è chiaro quali reti direttamente connesse verranno annunciate.

Panoramica del processo

Per una semplice connessione OSPFv2 sono necessari i passaggi seguenti:

  1. Assegnare gli indirizzi alle interfacce di transito e verificare la raggiungibilità IP diretta.
  2. In Administration > Device access, consentire Dynamic Routing per una zona di transito dedicata o tramite una Local Service ACL Exception strettamente limitata.
  3. In Routing > OSPF, inserire un Router ID univoco su ciascun firewall.
  4. Creare Area 0.0.0.0 come Normal.
  5. In Networks, assegnare la rete di transito locale ad Area 0.0.0.0.
  6. Registrare la LAN corrispondente come secondo network OSPF oppure utilizzare una redistribuzione verificata separatamente.
  7. In Routing > Information > OSPF, verificare lo stato Full del vicino e la rotta appresa.

Un Network OSPF non è la rete di destinazione remota. La voce attiva OSPF sulle interfacce locali il cui indirizzo IP appartiene a questa rete. La LAN remota compare solo quando il peer la annuncia tramite OSPF.

Che cosa decide OSPF sul firewall

OSPF è un protocollo di routing interno link-state. I router adiacenti scambiano informazioni sulle reti e sui percorsi raggiungibili, costruiscono una Link-State Database e calcolano il percorso con il costo minore. Un Cost più basso è preferito a uno più alto.

OSPF svolge quindi un compito diverso dalle regole firewall e da SD-WAN:

  • OSPF apprende e distribuisce le reti di destinazione all’interno del proprio dominio di routing.
  • Una regola firewall continua a decidere se il traffico dati può passare tra le zone e le reti coinvolte.
  • NAT modifica gli indirizzi quando necessario, ma non fa parte di OSPF.
  • Una SD-WAN Route può inoltre decidere in base a origine, servizio, applicazione o qualità della connessione.

Le rotte OSPF compaiono insieme alle altre rotte unicast nella tabella di routing. Nel routing classico viene selezionato innanzitutto il prefisso corrispondente più lungo. Per lo stesso prefisso, SFOS confronta l’Administrative Distance delle diverse sorgenti di routing; tra percorsi OSPF comparabili decide quindi la metrica OSPF. Separatamente, la Route Precedence globale determina se vengono valutati per primi il routing classico, le SD-WAN Policy Routes o le rotte VPN. Prima di una modifica globale, registrare l’ordine corrente con system route_precedence show.

OSPFv2 gestisce IPv4. OSPFv3 svolge lo stesso compito per IPv6, ma viene configurato separatamente su Sophos Firewall.

Pianificare la topologia di esempio

I valori dell’esempio rappresentano due sedi:

  • Firewall A: Router ID 192.0.2.10, IP di transito 198.51.100.1/30, LAN locale 10.10.10.0/24
  • Firewall B: Router ID 192.0.2.20, IP di transito 198.51.100.2/30, LAN locale 10.20.20.0/24
  • Rete di transito: 198.51.100.0/30
  • OSPF Area: 0.0.0.0

Gli indirizzi 192.0.2.0/24 e 198.51.100.0/24 sono reti riservate alla documentazione. Devono essere sostituiti con i valori reali dell’ambiente.

Il Router ID ha l’aspetto di un indirizzo IPv4, ma non deve essere assegnato a un’interfaccia. È fondamentale che sia univoco e rimanga stabilmente invariato all’interno del dominio OSPF. 0.0.0.0 non è consentito. Se non viene impostato un valore specifico, SFOS utilizza l’indirizzo di interfaccia più alto; scegliere consapevolmente un Router ID impedisce che l’identità cambi inaspettatamente dopo una modifica dell’interfaccia.

Per questa struttura semplice è sufficiente Backbone Area 0.0.0.0. Più Areas diventano utili solo quando si desidera suddividere e aggregare consapevolmente un dominio di routing più esteso. Ogni Area aggiuntiva richiede una connessione a Backbone Area.

Preparare OSPF in sicurezza

Prima di configurare OSPF devono essere soddisfatti i requisiti seguenti:

  • Il firewall funziona in Gateway Mode. OSPF non è disponibile in Transparent Mode.
  • I due IP di transito appartengono alla stessa rete e sono direttamente raggiungibili, ad esempio tramite Ping.
  • Interfaccia, subnet mask, MTU e zona sono documentati.
  • Router ID, Area, autenticazione, Hello interval e Dead interval sono coordinati su entrambi i lati.
  • Sono disponibili un backup della configurazione e un accesso di gestione indipendente.
  • Per le due LAN sono state pianificate regole firewall e rotte di ritorno adeguate.

Una VLAN di transito e una zona di transito dedicate facilitano la protezione. Configurare zone e interfacce su Sophos Firewall ne illustra le basi.

Abilitare Dynamic Routing in modo selettivo

In Administration > Device access, Dynamic Routing è disabilitato per impostazione predefinita per tutte le zone. Nell’esempio, il servizio viene attivato solo nella zona di transito dedicata alla quale è associata la rete 198.51.100.0/30.

La casella nella matrice Device Access si applica all’intera zona e non soltanto a una singola interfaccia. Una zona di transito dedicata è quindi la soluzione più chiara. Se l’interfaccia di transito condivide la zona con altre reti, una Local service ACL exception rule può limitare l’accesso in base a IP version, Source zone, Source networks and hosts, Destination host, servizio Dynamic Routing, Action e posizione della regola. OSPFv2 utilizza tuttavia le destinazioni multicast 224.0.0.5 e 224.0.0.6; l’indirizzo di transito locale non è quindi necessariamente un Destination host funzionante. Prima di usare tale eccezione, verificare il matching multicast sulla build SFOS installata. Senza questa verifica, la zona di transito dedicata rimane la scelta sicura.

Questa autorizzazione riguarda i pacchetti OSPF destinati al firewall stesso. Non è necessaria una normale regola firewall. Il traffico effettivo tra 10.10.10.0/24 e 10.20.20.0/24 richiede comunque regole firewall IPv4 adeguate. Proteggere Device Access su Sophos Firewall spiega la distinzione tra servizi locali e traffico inoltrato.

Configurare OSPFv2 in WebAdmin

I passaggi seguenti vengono eseguiti su entrambi i firewall. Cambiano solo Router ID, IP di transito e LAN locale.

1. Impostare i valori globali

⚠️ I valori d’esempio riguardano la prima configurazione. Non sostituire senza preparazione il Router ID di un router esistente: la guida SFOS 23 avverte che la modifica reimposta tutte le sessioni OSPF. Ciò non significa che le versioni precedenti ne siano esenti. Prima della modifica, garantire backup e accesso di gestione indipendente, registrare neighbor e route e pianificare una finestra di manutenzione. Dopo, le adiacenze previste devono tornare a Full, i prefissi desiderati essere presenti, quelli indesiderati assenti e le connessioni reali con i relativi percorsi di ritorno funzionare.

In Routing > OSPF si definiscono i valori globali:

  • Router ID: 192.0.2.10 su Firewall A, 192.0.2.20 su Firewall B
  • Default metric: mantenere 20, a meno che non sia previsto un valore specifico per le rotte redistribuite
  • ABR type: Standard per una nuova struttura standard
  • Auto-cost reference-bandwidth: mantenere il valore predefinito 100000 Mbps finché la pianificazione dei costi non richiede un altro valore di riferimento comune
  • Default-information originate: Never, finché il firewall non deve distribuire espressamente una Default Route a tutti i vicini OSPF
  • Redistribute connected, static, RIP e BGP: lasciare inizialmente disabilitati

Applicare quindi la configurazione globale con Apply.

Default metric è il valore di ripiego per le rotte redistribuite quando non è impostata una metrica specifica per il relativo tipo di rotta. Un Area Border Router (ABR) collega le altre aree al backbone e mantiene un database di topologia e informazioni di routing separati per ogni area collegata. OSPFv2 offre Standard, Cisco, IBM e Shortcut in ABR type per la compatibilità con il dominio esistente; la scelta deve rispettare il progetto concordato.

Migrando da una versione precedente a SFOS 19.5 o successivo, il vecchio valore predefinito di Reference Bandwidth, 100, passa a 100000 Mbps. Un valore personalizzato viene conservato senza modifiche. Dopo un aggiornamento, confrontare il valore effettivo e i costi risultanti con la pianificazione dei costi.

Un Autonomous System Boundary Router (ASBR) introduce in OSPF rotte provenienti da altre sorgenti di routing. Le metriche esterne seguenti si riferiscono a questo router.

La metrica predefinita riguarda le rotte importate in OSPF da altre sorgenti. Per le rotte redistribuite e la Default Route annunciata è inoltre possibile scegliere Metric type. External type 1 somma il costo interno fino all’ASBR e il costo esterno. Con External type 2 viene confrontata prima la metrica esterna; in caso di parità, anche il percorso interno fino all’ASBR viene usato come criterio di spareggio. Il costo dell’interfaccia determina invece la scelta del percorso nella topologia OSPF. Un costo inferiore vince.

Default-information originate: Always non deve essere utilizzato come rapido interruttore per il failover Internet. In questo modo il firewall annuncerebbe una Default Route anche quando non ne possiede una. Regular la annuncia solo quando nella tabella di routing è presente una Default Route.

2. Creare Backbone Area

Nella sezione Areas, fare clic su Add e impostare i valori seguenti:

  • Area: 0.0.0.0
  • Type: Normal

Area cost è configurabile solo per tipi di area diversi da Normal; il campo non è disponibile per l’area backbone dell’esempio. Per un’area Normal, Virtual links > Add permette di aggiungere un collegamento virtuale per connettere al backbone un’area priva di connessione fisica a esso. È una modifica multi-area pianificata, non un’alternativa alla verifica della topologia fisica.

Per Area si seleziona Authentication Type Text o MD5. Se il peer supporta MD5, è preferibile alla variante in chiaro. La Key ID associata e la chiave vengono inserite successivamente sull’interfaccia di transito. MD5 autentica i pacchetti OSPF, ma non cifra le informazioni di routing scambiate.

Salvare quindi Area con Save.

Per questo design semplice, Area 0.0.0.0 rimane di tipo Normal. Una Stub Area non riceve route esterne all’AS, mentre Stub no-summary elimina anche le normali route di riepilogo, ad eccezione della route predefinita. Una NSSA può introdurre nel dominio OSPF le proprie route esterne come LSA di tipo 7; NSSA no-summary combina questa funzione con una restrizione più severa dei riepiloghi. Un Virtual Link è disponibile solo per una Normal Area. Non modificare il tipo di Area come rapido tentativo di troubleshooting, perché entrambe le estremità e l’intero design dell’Area devono essere coerenti.

3. Aggiungere la rete di transito

Nella sezione Networks, fare clic su Add:

  • IPv4/Netmask: 198.51.100.0/30
  • Area: 0.0.0.0

Su Firewall A, l’indirizzo 198.51.100.1 corrisponde a questo Network; su Firewall B corrisponde 198.51.100.2. OSPF viene così eseguito sulle rispettive interfacce di transito e i due firewall possono stabilire un’adiacenza.

Salvare la voce Network con Save.

Una rete OSPF indica sempre una rete locale: SFOS attiva OSPF su ogni interfaccia il cui indirizzo corrisponde alla voce e annuncia il suo prefisso. Per la LAN, al passaggio 5 questo esempio utilizza anche una voce Network, perché in questo modo nel WebAdmin è possibile selezionare e rimuovere esattamente il prefisso desiderato. Lo svantaggio è che l’interfaccia LAN diventa anch’essa parte di OSPF. Una redistribuzione filtrata evita questo, ma con SFOS 22 richiede una configurazione CLI verificata separatamente insieme a una procedura di rollback verificata separatamente.

4. Sovrascrivere i valori dell’interfaccia solo consapevolmente

In Override interface configuration è possibile selezionare l’interfaccia di transito. I valori predefiniti sono adatti a molte connessioni Ethernet:

  • Hello interval: 10 secondi
  • Dead interval: 40 secondi
  • Retransmit interval: 5 secondi
  • Transmit delay: 1 secondo
  • Interface cost: Auto
  • Router priority: 1

Hello interval controlla l’intervallo tra i pacchetti Hello usati per rilevare i vicini. Dead interval determina quanto attendere senza un Hello prima di dichiarare un vicino non disponibile. SFOS imposta automaticamente Dead a quattro volte Hello; dopo una modifica di Hello, verificare che il valore calcolato rientri nell’intervallo consentito e coincida con quello dei vicini. Dead può anche essere modificato manualmente. Retransmit interval controlla la ritrasmissione dei Link-State Advertisements (LSA); Transmit delay tiene conto dei ritardi di trasmissione e propagazione di un aggiornamento link-state.

DR significa Designated Router, BDR Backup Designated Router. Nell’elezione viene preferita la Router Priority più alta; a parità di priorità, vince il Router ID più alto.

Hello e Dead devono essere identici su tutti i router del segmento. Retransmit Interval e Transmit Delay vengono impostati localmente. Cost e Router Priority possono differire intenzionalmente: Cost determina il percorso dati preferito, mentre Priority influisce sull’elezione di DR e BDR nelle reti broadcast. Una Priority pari a 0 esclude l’interfaccia da questa elezione.

A parità di Priority decide il Router ID, ma un nuovo router con priorità superiore non sostituisce automaticamente il DR già eletto. Un Cost impostato manualmente è utile quando si vuole preferire uno dei diversi percorsi. Con Auto, SFOS calcola il Cost dalla Reference Bandwidth globale e dalla velocità dell’interfaccia configurata. Se la velocità del collegamento viene modificata in Network > Interfaces, OSPF applica il nuovo Auto Cost solo dopo il riavvio del firewall.

Per l’autenticazione MD5, selezionare Authentication Type MD5 in Area. Inserire quindi la stessa Key ID, compresa tra 0 e 255, e la stessa chiave sull’interfaccia di transito di entrambi i lati.

Se per OSPFv2 si sceglie invece Text, inserire sull’interfaccia una password di autenticazione e concordarla con il peer. Questo non vale per OSPFv3, che non supporta l’autenticazione.

Applicare i valori dell’interfaccia modificati con Save.

5. Annunciare solo le LAN necessarie

Nell’esempio, Firewall A deve annunciare 10.10.10.0/24 e Firewall B 10.20.20.0/24. Esistono due metodi sostanzialmente diversi:

  • Un OSPF Network include in OSPF l’interfaccia locale corrispondente e ne annuncia il prefisso.
  • Redistribution importa in OSPF rotte provenienti da un’altra sorgente di routing.

Fare clic su Routing > OSPF > Networks su Add e assegnare la LAN corrispondente all’area 0.0.0.0: su Firewall A 10.10.10.0/24, su Firewall B 10.20.20.0/24. Salvare la voce con Save. Dynamic Routing rimane disattivato per la zona LAN; il servizio è consentito solo per la zona di transito o per l’eccezione stretta Local Service ACL. Successivamente, la controparte deve apprendere esattamente questa LAN. Una rete locale indesiderata serve come controllo negativo e non deve comparire nella sua tabella di routing OSPF.

Questa variante funziona fintanto che le interfacce LAN possono volontariamente far parte di OSPF. Se OSPF non deve essere attivato in linea di principio o se i prefissi da distribuire provengono da Static, RIP o BGP, la redistribuzione è il metodo più adatto. Tuttavia, l’opzione Redistribute connected nel WebAdmin include tutte le reti direttamente collegate. Su un firewall in produzione, ciò può includere anche reti WAN, di gestione, DMZ, VPN e altre VLAN. Pertanto, la casella non deve essere attivata senza rifletterci.

Per Remote Access SSL VPN, Redistribute connected importa solo la subnet dinamica dei client. Una subnet SSL VPN assegnata staticamente non viene iniettata automaticamente e, se realmente necessaria, deve essere configurata come OSPF Network separata e verificata in modo indipendente.

WebAdmin non consente di filtrare le Connected Routes per singolo prefisso. La guida alla riga di comando di SFOS 22 mostra una ACL con Route Map, ma documenta soltanto un esempio di esclusione e non la procedura completa di rollback di una allowlist in produzione. Senza un rollback verificato sulla versione SFOS in uso, non è possibile ricavarne una procedura sicura da copiare e incollare. Chi necessita di una redistribution selettiva deve quindi pianificare ACL e Route Map come modifica di routing separata, far confermare sintassi e rollback per la build installata e verificare sul peer sia il prefisso desiderato sia almeno una rete che espressamente non deve essere annunciata.

L’opzione globale WebAdmin Redistribute connected rimane disattivata in una variante filtrata da CLI. Dopo modifiche successive alla configurazione globale OSPF, show running-config deve essere verificata di nuovo, perché WebAdmin può rimuovere impostazioni CLI avanzate contrastanti e modifiche a log-adjacency-changes. Anche Redistribute static viene attivata solo dopo un inventario completo delle rotte statiche esistenti.

Configurare e annullare OSPF nella CLI

Da SFOS 23.0: i nomi di Access List, Prefix List e Route Map devono essere univoci tra tutti i protocolli di routing dinamico, perché condividono una configurazione integrata. Durante un upgrade da una versione precedente verso SFOS 23.0 o successivo, Sophos Firewall aggiunge automaticamente prefissi di protocollo ai nomi di Route Map, Prefix List e Access List in caso di conflitto di nomi e aggiorna tutti i riferimenti alle configurazioni rinominate. Prima di una redistribution selettiva o del rollback, confrontare i nomi degli oggetti e i riferimenti salvati prima dell’upgrade con la configurazione attuale; non presumere che un vecchio nome identifichi ancora l’associazione attuale. Dopo la modifica o il rollback, verificare sul peer che i prefissi desiderati siano presenti e quelli espressamente vietati siano assenti. Inventariare nomi e riferimenti in tutti i protocolli prima di scegliere i nomi o pianificare il rollback. Rimuovere solo i riferimenti relativi alla modifica, non eliminare indiscriminatamente oggetti condivisi. Gli altri protocolli devono conservare neighbor e route previsti. Senza sintassi e rollback confermati, non viene proposta una procedura di filtraggio eseguibile.

SFOS 22, solo OSPFv2/IPv4: l’interfaccia OSPF si trova sotto 3. Route Configuration > 1. Configure Unicast Routing > 2. Configure OSPF. La seguente configurazione minima per Firewall A riproduce la rete di transito e l’annuncio LAN dell’esempio WebAdmin. Viene mantenuta la sequenza SFOS 22 documentata con exit e write nel contesto globale ospf(config)#.

⚠️ Prima di ospf router-id su un router esistente valgono gli stessi controlli preliminari di WebAdmin: secondo la guida SFOS 23, modificare il Router ID esistente reimposta tutte le sessioni OSPF. Non sostituirlo con il valore d’esempio. Garantire backup e accesso di gestione indipendente, registrare neighbor e route e operare in una finestra di manutenzione; verificare poi adiacenze Full, prefissi desiderati/indesiderati e traffico reale.

enable
configure terminal
router ospf
ospf router-id 192.0.2.10
network 198.51.100.0/30 area 0
network 10.10.10.0/24 area 0
log-adjacency-changes
exit
write
show running-config
end

SFOS 23, solo OSPFv2/IPv4: 3. Route Configuration > 1. Configure Unicast Routing apre la console di routing comune al prompt router# (EXEC). configure terminal porta a router(config)# (configurazione globale), router ospf a router(config-ospf)#. Da router#, inserire questi comandi senza digitare i prompt mostrati:

router# configure terminal
router(config)# router ospf
router(config-ospf)# ospf router-id 192.0.2.10
router(config-ospf)# network 198.51.100.0/30 area 0
router(config-ospf)# network 10.10.10.0/24 area 0
router(config-ospf)# log-adjacency-changes
router(config-ospf)# end
router# show running-config
router# write

end torna direttamente a EXEC. La guida di configurazione SFOS 23 mostra qui show running-config e write, mentre la nota richiede genericamente do write. L’esempio di filtraggio mostra precisamente router(config)# do write dopo exit da OSPF. Questa tensione documentale non dimostra che EXEC write non salvi: qui si segue l’esempio di configurazione con modalità esplicite, non un semplice write in modalità di configurazione SFOS 23.

show running-config mostra lo stato in esecuzione, non una prova del salvataggio. Dopo write in SFOS 23, controllare la conferma per il file integrato /conf/routing/frr.conf; l’esempio di filtraggio SFOS 22 indica ancora /conf/routing/ospfd.conf. Non modificare il file manualmente. Secondo Sophos, le modifiche CLI devono essere salvate per comparire in WebAdmin e persistere dopo un riavvio del firewall o del daemon. Controllare conferma e valori WebAdmin attesi; qui non è richiesto un riavvio e non ne è stato effettuato uno per questo articolo. Se manca la conferma, chiarire con Sophos prima di altre modifiche. Verificare poi neighbor, route e traffico.

Sul firewall B vengono invece utilizzati l’ID del router 192.0.2.20 e la rete LAN 10.20.20.0/24.

L’ID del router deve essere univoco, non può essere 0.0.0.0 e non è necessario che corrisponda a un indirizzo IP effettivamente assegnato. Senza impostazione manuale, SFOS utilizza l’indirizzo IP più alto tra quelli delle interfacce. L’ID dell’area può essere inserito come numero da 0 a 4294967295 oppure in notazione IPv4. SFOS memorizza la rete normalizzata secondo la maschera; perciò da 198.51.100.1/30 diventa 198.51.100.0/30. Esattamente questo valore memorizzato è poi determinante per il controllo e la rimozione. log-adjacency-changes registra i cambi dei neighbor senza modalità debug e viene impostato di default in una configurazione WebAdmin.

Distinguere Network, processo OSPF e Default Route

SFOS 22, OSPFv2/IPv4: per rimuovere solo un Network, anteporre no alla sua riga normalizzata in show running-config, sotto router ospf. Prima di rimuovere la rete di transito, garantire percorsi alternativi, backup e accesso di gestione indipendente e pianificare una finestra di manutenzione: l’adiacenza su questo segmento verrà persa.

enable
configure terminal
router ospf
no network 198.51.100.0/30 area 0
exit
write
show running-config
end

Di conseguenza OSPF termina sulle interfacce corrispondenti e gli annunci interessati scompaiono. no router ospf rimuove invece la configurazione di routing OSPFv2. Prima di questo passaggio distruttivo vengono salvate la configurazione completa in esecuzione, un backup e percorsi alternativi; il comando deve essere eseguito in una finestra di manutenzione e non è un interruttore temporaneo on/off.

SFOS 23, OSPFv2/IPv4: iniziare la stessa rimozione del Network da router# nella console comune. La panoramica SFOS 23 documenta no network a router(config-ospf)#; seguono gli stessi controlli e salvataggio in EXEC descritti sopra:

router# configure terminal
router(config)# router ospf
router(config-ospf)# no network 198.51.100.0/30 area 0
router(config-ospf)# end
router# show running-config
router# write

Dopo la rimozione devono mancare esattamente il Network previsto e il suo annuncio; neighbor rimanenti, percorsi alternativi, accesso di gestione e traffico devono funzionare come pianificato. Controllare anche la conferma di salvataggio. Per annullare questa specifica modifica, ripristinare la voce network … area … registrata prima nel contesto OSPF appropriato alla versione, salvare e verificare nuovamente.

Per rimuovere l’intero processo, SFOS 22 indica ospf(config)# no router ospf, mentre la panoramica SFOS 23 riporta router(config-ospf)# no router ospf. È un cambiamento di prompt documentato, non un errore del comando dimostrato. Questo contesto SFOS 23 non è stato verificato qui su un dispositivo. Non viene quindi proposta una procedura eseguibile di rimozione del processo SFOS 23 finché Sophos non conferma contesto e ripristino per la build installata; non dedurre un’altra modalità. Non eliminare indiscriminatamente ACL, Prefix List o Route Map condivise.

ospf push-default-route-to-kernel risolve un terzo compito separato: una route predefinita appresa tramite OSPF viene trasferita nella tabella di routing del kernel. Il comando non annuncia alcuna route predefinita ai vicini e quindi non è lo stesso di Default-information originate. In precedenza vengono salvate le route predefinite esistenti, le precedenze delle route, il percorso di gestione inverso e il lookup delle route. La rimozione ufficialmente documentata avviene al prompt OSPF con no ospf push-default-route-to-kernel; successivamente vengono riesaminate la tabella di routing, il lookup delle route, l’accesso alla gestione e il traffico reale.

Le modifiche globali in WebAdmin possono rimuovere impostazioni CLI in conflitto. Dopo ogni modifica, verificare nuovamente show running-config, Neighbor, route apprese e configurazione salvata.

Verificare e collaudare OSPF

La sola adiacenza non dimostra che la LAN desiderata sia raggiungibile. Il collaudo procede quindi dal livello OSPF fino al flusso effettivo dei pacchetti.

  1. In Routing > Information > OSPF > Neighbors, il peer deve comparire con il relativo Router ID. Full indica che le informazioni link-state rilevanti sono state scambiate completamente.
  2. Sotto Routes il firewall A deve vedere 10.20.20.0/24 tramite 198.51.100.2. Il firewall B si aspetta 10.10.10.0/24 tramite 198.51.100.1. Un prefisso di test non autorizzato, invece, non deve apparire.
  3. Sotto Interface vengono controllati Area, Router ID, Cost, Timer, Network Type e MTU. Database mostra il database Link-State; Border routers aiuta a controllare le voci ABR e ASBR nei progetti multi-area.
  4. In Diagnostics > Tools > Route lookup, verificare una destinazione specifica, ad esempio 10.20.20.10 su Firewall A.
  5. Testare quindi una connessione reale tra un host di ciascuna LAN. Log Viewer e Packet Capture devono mostrare la regola firewall prevista, l’interfaccia di transito e il traffico di ritorno.

Per gli ultimi due passaggi è utile Testare una regola Sophos Firewall con Log Viewer e Packet Capture.

Per un controllo SSH supplementare, SFOS 22 usa 3. Route Configuration > 1. Configure Unicast Routing > 2. Configure OSPF; SFOS 23 usa 3. Route Configuration > 1. Configure Unicast Routing per la console comune. In SFOS 23, tornare a router# con end ed eseguire lì show running-config. Il comando mostra la configurazione in esecuzione, non la prova del salvataggio; la conferma separata è spiegata sopra. Neighbor, Database, Interfaces e rotte calcolate vengono verificati in SFOS 22 in modo affidabile tramite Routing > Information > OSPF; questo articolo non cita quindi comandi show di routing daemon non documentati.

Nell’Advanced Shell, i log OSPF e del kernel forniscono un contesto aggiuntivo. L’accesso avviene tramite 5. Device Management > 3. Advanced Shell:

cd /log
tail -f ospfd.log

Interrompere l’output continuo con Ctrl+C. Quindi verificare il secondo log:

tail -f zebra.log

ospfd.log mostra gli eventi OSPF. zebra.log aiuta a verificare se una rotta appresa dinamicamente è stata inserita nel kernel. Per non seguire il log in tempo reale, utilizzare ad esempio less /log/ospfd.log. File di servizio e di log di Sophos Firewall associa gli altri file ai servizi responsabili.

Individuare gli errori in modo sistematico

Non compare alcun vicino

Verificare innanzitutto la raggiungibilità diretta degli IP di transito. L’interfaccia di transito deve quindi essere attiva, OSPF Network deve corrispondere all’IP dell’interfaccia locale e Dynamic Routing deve essere abilitato nella zona corretta. Area, subnet mask, Authentication Type, Key ID, chiave, Hello e Dead devono coincidere su entrambi i lati. Anche Router ID duplicati impediscono di stabilire correttamente un’adiacenza.

Il vicino rimane in Init o 2-Way

Init indica che i pacchetti Hello vengono ricevuti, ma la comunicazione non è ancora stata confermata in entrambe le direzioni. Device Access, filtri asimmetrici, assegnazione delle interfacce e percorso di ritorno sono i primi elementi da verificare.

2-Way è normale tra due router in una rete broadcast quando nessuno dei due è DR o BDR. Nell’esempio, con esattamente due router OSPF e Priority 1, i due partecipanti diventano DR e BDR; la loro adiacenza dovrebbe quindi raggiungere lo stato Full. Se rimane in 2-Way, verificare Router Priority, Network Type e il peer.

Il vicino rimane in ExStart, Exchange o Loading

In questi stati, la sincronizzazione della Link-State Database è iniziata ma non si completa. Le cause più comuni sono valori MTU differenti, Network Types non compatibili, Router ID duplicati o connessioni instabili. In Routing > Information > OSPF > Interface sono disponibili MTU, MTU Mismatch Detection, Network Type e timer per il confronto.

Il vicino è Full, ma manca la LAN remota

L’adiacenza funziona, ma la LAN non viene annunciata. Con il metodo Network utilizzato in questo esempio, sul firewall mittente deve essere presente la Connected Route e sotto router ospf deve apparire la voce network … area … corrispondente. show running-config mostra il valore normalizzato nella configurazione in esecuzione, non il suo stato di salvataggio.

Se viene invece utilizzata la redistribuzione, la sorgente di routing scelta e, se presenti, ACL, Route Map e redistribute … route-map devono corrispondere al prefisso desiderato. Con Redistribute connected, inoltre, deve essere controllato l’elenco completo di tutte le Connected Routes annunciate.

Se dopo un upgrade a SFOS 22 manca proprio una rete dietro un tunnel IPsec policy-based, la causa può essere la dipendenza da redistribute kernel. Il tunnel e il Neighbor OSPF possono continuare a sembrare operativi; SFOS 22: route IPsec e redistribute kernel spiega le verifiche e il design di destinazione XFRM route-based.

La rotta è presente, ma il traffico non funziona

OSPF ha svolto il proprio compito quando è presente la rotta con il Next Hop corretto. In seguito, gli errori riguardano in genere la regola firewall, NAT, Route Precedence, il percorso di ritorno o il sistema di destinazione. Nelle normali reti instradate tra sedi, generalmente non è necessario SNAT, poiché entrambi i firewall devono conoscere le LAN tramite OSPF.

OSPF tramite IPsec route-based

OSPF può funzionare anche tramite un’interfaccia XFRM di un tunnel IPsec site-to-site basato su route. Per permettere a SFOS di creare le interfacce XFRM, sia la subnet locale che quella remota devono essere Any su entrambi i lati. L’impostazione IPv4, IPv6 o Dual determina quindi le versioni IP utilizzate; in modalità Dual vengono create manualmente regole firewall separate per IPv4 e IPv6. Con selettori di traffico specifici non si ottiene un’interfaccia XFRM indirizzabile a cui si possano assegnare indirizzi IP o rotte.

Per questa variante si applicano inoltre i requisiti seguenti:

  • Dynamic Routing viene consentito per la zona VPN in Administration > Device access.
  • La rete di transito XFRM viene inserita come OSPF Network.
  • Il traffico dati richiede regole firewall IPv4 o IPv6 adeguate per la zona VPN.
  • Hello, Dead, autenticazione e MTU devono coincidere con il peer.
  • Il tipo di rete OSPF mostrato viene confrontato su entrambi i lati. Una discrepanza può impedire la creazione del vicinato e deve essere chiarita nella progettazione dei due endpoint.

Un tunnel IPsec verde e un vicino OSPF nello stato Full sono due punti di verifica distinti. Solo la rotta appresa e un flusso di pacchetti reale confermano l’intera configurazione.

La documentazione HA ufficiale non garantisce la conservazione dello stato dell’adiacenza OSPF. In un cluster HA, perciò, un failover pianificato fa parte del test di accettazione della topologia concreta. Successivamente, sul nodo attivo viene verificato se i neighbor, le rotte nonché ospfd.log e zebra.log mostrano nuovamente lo stato previsto.

OSPFv3 per IPv6

Limite della guida CLI SFOS 23: la guida di configurazione aggiunge router ospf6 e dichiara che gli stessi passaggi valgono per OSPFv3, ma prosegue con comandi Router ID e Network di OSPF IPv4. La guida di filtraggio aggiunge ACL IPv6, mantenendo poi match ip address e router ospf. Non è quindi documentata una procedura IPv6 completa e affidabile per matching, redistribution e rollback. Gli esempi CLI sopra valgono solo per OSPFv2/IPv4. Per IPv6 resta il percorso WebAdmin basato sulle interfacce descritto sotto; usare una procedura CLI IPv6 solo dopo conferma di Sophos per la build installata. Non sostituire token nei comandi IPv4 e non considerare i comandi upstream FRR una prova del supporto Sophos.

Sotto Routing > OSPFv3 il routing IPv6 viene configurato indipendentemente da OSPFv2. L’ID del router rimane sempre un valore unico in formato IPv4. SFOS mostra per Default metric effettivamente 0, ma utilizza il valore non modificabile 20; ABR type è fissato su Standard. L’Auto-cost reference-bandwidth è impostato di default su 100000 Mbps. Per Default-information originate ci sono, come in OSPFv2, Never, Regular e Always; nel WebAdmin è possibile ridistribuire le rotte IPv6 connesse e BGP.

A differenza di OSPFv2, non si inserisce prima una rete. Sotto Interfaces si seleziona l’interfaccia compatibile con IPv6 e la si assegna a un’Area. Per una configurazione semplice viene utilizzata anche qui l’Area 0.0.0.0. Hello e Dead devono corrispondere sul segmento; Cost, Retransmit, Transmit Delay e Router Priority vengono impostati in base alla propria topologia. SFOS supporta solo un’istanza OSPFv3 per interfaccia. L’Instance ID è configurabile; il suo valore predefinito è 0.

Prima, in Routing > OSPFv3 > Interfaces and areas > Areas, fare clic su Add, inserire Area in notazione IPv4, scegliere Type in base al progetto e salvare con Save. Per l’esempio semplice, l’area è 0.0.0.0. Poi, in Routing > OSPFv3 > Interfaces and areas > Interfaces, fare clic su Add, selezionare Interface e inserire la stessa Area, sempre in notazione IPv4.

I valori predefiniti di OSPFv3 sono Hello 10, Dead 40, Retransmit 5 e Transmit delay 1 secondo, con Router priority 1. Le funzioni dei campi, il calcolo automatico di Dead e la verifica dell’intervallo consentito valgono come spiegato nel passaggio relativo all’interfaccia OSPFv2. Anche l’elezione DR/BDR preferisce la priorità più alta e, in caso di parità, il Router ID più alto; 0 esclude l’interfaccia dall’elezione. Interface cost può restare su Auto oppure essere impostato manualmente deselezionando la casella; vengono preferiti valori inferiori. Auto usa Reference Bandwidth e la velocità configurata dell’interfaccia. Dopo aver modificato la velocità configurata del collegamento, anche qui il nuovo Auto Cost viene applicato solo dopo un riavvio del firewall. Salvare infine la configurazione dell’interfaccia con Save.

Le Areas OSPFv3 aggiuntive possono essere create come Stub, Stub no-summary, NSSA o NSSA no-summary. Le varianti differiscono per le LSA esterne e di riepilogo che trasportano; una NSSA può inoltre inoltrare all’ABR LSA di tipo 7 provenienti dalla propria ridistribuzione. Questi tipi di Area appartengono a un design multi-area coordinato, non a un tentativo di ripristino improvvisato.

Stub non trasporta LSA di tipo 4 o 5 e non permette collegamenti virtuali. Stub no-summary sopprime anche gli LSA di tipo 3, tranne la rotta di riepilogo predefinita, e non permette collegamenti virtuali. NSSA non riceve LSA esterni di tipo 5 da altre aree; i propri LSA di tipo 7 circolano nella NSSA e vengono convertiti dall’ABR in LSA di tipo 5 per il backbone. NSSA no-summary sopprime i tipi 4 e 5 e il tipo 3 tranne la rotta di riepilogo predefinita, ma mantiene il tipo 7 e la sua conversione sull’ABR. Queste proprietà non significano che SFOS offra redistribuzione RIP o statica nel WebAdmin OSPFv3.

Per la configurazione globale OSPFv3, scegliere solo gli annunci necessari e impostare la metrica e il Metric type corrispondenti. Il significato di E1/E2 e gli effetti di Never, Regular e Always sono spiegati nel passaggio globale OSPFv2; l’avvertenza su Always vale anche qui. Applicare con Apply. Questo può rimuovere modifiche personalizzate a log-adjacency-changes; verificare poi nuovamente la configurazione in esecuzione e salvata, i vicini, i prefissi IPv6 desiderati e indesiderati in Routing > Information > OSPFv3 e il traffico IPv6 reale.

Attualmente Sophos Firewall non supporta l’autenticazione per OSPFv3. Lo scambio deve quindi avvenire solo tramite collegamenti attendibili o già protetti. Una configurazione OSPFv2 esistente non annuncia reti IPv6 e per il traffico dati IPv6 sono necessarie regole firewall IPv6 dedicate.

Redistribute connected rileva anche con OSPFv3 tutte le reti IPv6 direttamente collegate e pertanto non dovrebbe essere attivato a titolo generale. Secondo Sophos, nel Remote Access SSL VPN viene iniettata solo la subnet dinamica, non quella statica. L’aiuto di SFOS-22 indica per la subnet statica una “rete OSPF”, anche se OSPFv3 nel WebAdmin viene configurato tramite interfacce anziché tramite una lista di reti. Da questa contraddizione non si può dedurre un procedimento sicuro; l’annuncio di un prefisso IPv6-SSL-VPN statico deve essere chiarito per la build installata con Sophos.

Il collaudo viene eseguito in Routing > Information > OSPFv3; in caso di errori, ospf6d.log fornisce il contesto specifico del protocollo.

Annullare la modifica in sicurezza

Prima di rimuovere OSPF, deve esserci per ogni rete di destinazione appresa un percorso alternativo o una finestra di manutenzione programmata. Nell’esempio, prima viene rimosso l’inserimento della rete LAN, poi la rete di transito e infine Dynamic Routing per la zona di transito viene disattivato. Se invece la LAN viene ridistribuita, prima viene annullata questa redistribuzione. Successivamente vengono controllati nuovamente Route Lookup, tabella di routing e accesso alla gestione.

Se si annulla solo un Cost, un timer o un filtro errato, modificare sempre una sola impostazione alla volta. In questo modo rimane possibile determinare se è stata interessata l’adiacenza OSPF, l’annuncio delle rotte o soltanto il traffico dati.