A giudicare dal numero di domande che ci arrivano riguardo a SD-WAN, la tecnologia ha iniziato a diffondersi in modo significativo in Russia. I fornitori, naturalmente, non rimangono fermi e presentano le loro soluzioni, mentre alcuni audaci pionieri hanno già iniziato a implementarle nelle loro reti.
Lavoriamo con quasi tutti i fornitori e, negli ultimi anni, ho avuto l'opportunità di esplorare l'architettura di ogni grande sviluppatore di soluzioni software definite. Un caso a parte è rappresentato da SD-WAN di Fortinet, che ha integrato la funzionalità di bilanciamento del traffico tra i canali di comunicazione nel software dei firewall. Questa soluzione è piuttosto democratica, quindi spesso viene considerata da aziende che non sono ancora pronte a cambiamenti radicali, ma desiderano utilizzare in modo più efficiente i loro canali di comunicazione.
In questo articolo voglio spiegare come configurare e lavorare con SD-WAN di Fortinet, a chi è destinata questa soluzione e quali insidie potrebbero presentarsi.
I principali attori del mercato SD-WAN possono essere classificati in due tipologie:
1. Startup che hanno creato soluzioni SD-WAN da zero. Le più fortunate di queste ottengono un enorme impulso allo sviluppo quando vengono acquisite da grandi aziende – è la storia di Cisco/Viptela, VMWare/VeloCloud, Nuage/Nokia.
2. Grandi fornitori di rete che hanno sviluppato soluzioni SD-WAN, migliorando la programmabilità e la gestibilità dei loro router tradizionali – è la storia di Juniper, Huawei.
Fortinet è riuscita a trovare la sua strada. Nel software dei firewall è stata integrata una funzionalità che consente di unire le loro interfacce in canali virtuali e bilanciare il carico tra di essi utilizzando algoritmi complessi, rispetto alla consueta routazione. Questa funzionalità è stata chiamata SD-WAN. È corretto definire ciò che ha fatto Fortinet come SD-WAN? Il mercato sta gradualmente comprendendo che Software-Defined significa separazione del Control Plane dal Data Plane, controller dedicati e orchestratori. Fortinet non dispone di nulla di tutto ciò. La gestione centralizzata è opzionale e viene proposta tramite il tradizionale strumento Fortimanager. Tuttavia, dal mio punto di vista, non vale la pena cercare una verità astratta e perdere tempo a discutere di terminologia. Nel mondo reale, ogni approccio ha i propri vantaggi e svantaggi. La cosa migliore è comprendere questi aspetti e saper scegliere le soluzioni più adeguate agli obiettivi.
Proverò a illustrare, supportato da screenshot, come appare e cosa può fare SD-WAN di Fortinet.
Come funziona tutto
Supponiamo che tu abbia due filiali collegate tra loro tramite due canali di trasmissione dati. Questi canali di trasmissione vengono uniti in un gruppo, simile a come i normali interfacce Ethernet vengono aggregati in LACP-Port-Channel. I veterani ricorderanno PPP Multilink – anche questa è un’analogia appropriata. I canali possono essere porte fisiche, VLAN SVI e anche VPN o tunnel GRE.
VPN o GRE vengono normalmente utilizzati per connettere reti locali di filiali attraverso Internet. Le porte fisiche vengono utilizzate quando ci sono connessioni L2 tra i siti, o quando ci si connette attraverso un MPLS/VPN dedicato, se si è disposti a lavorare senza Overlay e crittografia. Un altro scenario in cui i porti fisici vengono utilizzati nel gruppo SD-WAN è il bilanciamento dell'uscita locale degli utenti verso Internet.
Nel nostro laboratorio ci sono quattro firewall e due tunnel VPN che lavorano attraverso due "operatori di rete". Lo schema appare così:

I tunnel VPN sono configurati in modalità interfaccia, in modo da apparire come connessioni Point-to-Point tra dispositivi con indirizzi IP su interfacce P2P, che possono essere pingate per confermare che la connessione attraverso un determinato tunnel funziona. Per crittografare il traffico e inviarlo dall'altra parte, basta instradarlo nel tunnel. L'alternativa è filtrare il traffico per la crittografia usando elenchi di sottoreti, complicando notevolmente la vita all'amministratore man mano che la configurazione diventa più complessa. In una rete estesa, è possibile utilizzare la tecnologia ADVPN per la creazione della VPN, che è l’analogo del DMVPN di Cisco o del DVPN di Huawei, semplificando così la configurazione.
Configurazione Site-to-Site VPN per due dispositivi con instradamento BGP su entrambi i lati.
«DC» (Data Center)
«Filiale» (BRN)
config system interface
edit "WAN1"
set vdom "Internet"
set ip 1.1.1.1 255.255.255.252
set allowaccess ping
set role wan
set interface "DC-BRD"
set vlanid 111
next
edit "WAN2"
set vdom "Internet"
set ip 3.3.3.1 255.255.255.252
set allowaccess ping
set role lan
set interface "DC-BRD"
set vlanid 112
next
edit "BRN-Ph1-1"
set vdom "Internet"
set ip 192.168.254.1 255.255.255.255
set allowaccess ping
set type tunnel
set remote-ip 192.168.254.2 255.255.255.255
set interface "WAN1"
next
edit "BRN-Ph1-2"
set vdom "Internet"
set ip 192.168.254.3 255.255.255.255
set allowaccess ping
set type tunnel
set remote-ip 192.168.254.4 255.255.255.255
set interface "WAN2"
next
end
config vpn ipsec phase1-interface
edit "BRN-Ph1-1"
set interface "WAN1"
set local-gw 1.1.1.1
set peertype any
set net-device disable
set proposal aes128-sha1
set dhgrp 2
set remote-gw 2.2.2.1
set psksecret ***
next
edit "BRN-Ph1-2"
set interface "WAN2"
set local-gw 3.3.3.1
set peertype any
set net-device disable
set proposal aes128-sha1
set dhgrp 2
set remote-gw 4.4.4.1
set psksecret ***
next
end
config vpn ipsec phase2-interface
edit "BRN-Ph2-1"
set phase1name "BRN-Ph1-1"
set proposal aes256-sha256
set dhgrp 2
next
edit "BRN-Ph2-2"
set phase1name "BRN-Ph1-2"
set proposal aes256-sha256
set dhgrp 2
next
end
config router static
edit 1
set gateway 1.1.1.2
set device "WAN1"
next
edit 3
imposta gateway 3.3.3.2
imposta dispositivo "WAN2"
next
end
config router bgp
imposta as 65002
imposta router-id 10.1.7.1
imposta ebgp-multipath enable
config neighbor
modifica "192.168.254.2"
imposta remote-as 65003
next
modifica "192.168.254.4"
imposta remote-as 65003
next
fine
config network
modifica 1
imposta prefix 10.1.0.0 255.255.0.0
next
end
config system interface
edit "WAN1"
set vdom "Internet"
imposta ip 2.2.2.1 255.255.255.252
set allowaccess ping
set role wan
imposta interfaccia "BRN-BRD"
set vlanid 111
next
edit "WAN2"
set vdom "Internet"
imposta ip 4.4.4.1 255.255.255.252
set allowaccess ping
set role wan
imposta interfaccia "BRN-BRD"
imposta vlanid 114
next
modifica "DC-Ph1-1"
set vdom "Internet"
imposta ip 192.168.254.2 255.255.255.255
set allowaccess ping
set type tunnel
imposta remote-ip 192.168.254.1 255.255.255.255
set interface "WAN1"
next
modifica "DC-Ph1-2"
set vdom "Internet"
imposta ip 192.168.254.4 255.255.255.255
set allowaccess ping
set type tunnel
imposta remote-ip 192.168.254.3 255.255.255.255
set interface "WAN2"
next
end
config vpn ipsec phase1-interface
modifica "DC-Ph1-1"
impara interfaccia "WAN1"
imposta local-gw 2.2.2.1
imposta peertype any
imposta net-device disable
imposta proposal aes128-sha1
imposta dhgrp 2
impara remote-gw 1.1.1.1
imposta psksecret ***
next
modifica "DC-Ph1-2"
impara interfaccia "WAN2"
impara local-gw 4.4.4.1
imposta peertype any
imposta net-device disable
imposta proposal aes128-sha1
imposta dhgrp 2
impara remote-gw 3.3.3.1
imposta psksecret ***
next
end
config vpn ipsec phase2-interface
modifica "DC-Ph2-1"
impara phase1name "DC-Ph1-1"
imposta proposal aes128-sha1
imposta dhgrp 2
next
modifica "DC2-Ph2-2"
impara phase1name "DC-Ph1-2"
imposta proposal aes128-sha1
imposta dhgrp 2
next
end
config router static
edit 1
imposta gateway 2.2.2.2
impara dispositivo "WAN1"
next
edit 3
imposta gateway 4.4.4.2
imposta dispositivo "WAN2"
next
end
config router bgp
impara as 65003
impara router-id 10.200.7.1
impara ebgp-multipath enable
config neighbor
modifica "192.168.254.1"
impara remote-as 65002
next
modifica "192.168.254.3"
impara remote-as 65002
next
fine
config network
modifica 1
impara prefix 10.200.0.0 255.255.0.0
next
end
Condivido la configurazione in formato testuale perché, secondo me, è più comodo configurare il VPN in questo modo. Quasi tutte le impostazioni sono identiche da entrambe le parti e in formato testuale è possibile copiare e incollare. Se si fa lo stesso nell'interfaccia web, è facile commettere errori — dimenticare di spuntare un'opzione o inserire un valore errato.
Dopo aver aggiunto le interfacce nel bundle

tutte le rotte e le politiche di sicurezza possono fare riferimento a esso, anziché alle interfacce in esso contenute. È essenziale consentire il traffico dalle reti interne allo SD-WAN. Quando si creano regole per esse, è possibile applicare misure di sicurezza come IPS, antivirus e decrittazione HTTPS.

Per il bundle si configurano le Regole SD-WAN. Queste sono regole che definiscono l'algoritmo di bilanciamento per il traffico specifico. Sono simili alle politiche di routing nel Policy-Based Routing, eccetto che come risultato dell'incontro del traffico con la politica non viene impostato il next-hop o la normale interfaccia di uscita, ma le interfacce aggiunte al bundle SD-WAN insieme all'algoritmo di bilanciamento del traffico tra queste interfacce.
Il traffico può essere distinto dal flusso generale in base alle informazioni L3-L4, dalle applicazioni riconosciute, dai servizi Internet (URL e IP), nonché dagli utenti riconosciuti delle stazioni di lavoro e dei laptop. Dopo di ciò, per il traffico distinto è possibile assegnare uno dei seguenti algoritmi di bilanciamento:

Nell'elenco delle Preferenze di Interfaccia si selezionano le interfacce già aggiunte al bundle che gestiranno questo tipo di traffico. Non aggiungendo tutte le interfacce, si può limitare il modo in cui, ad esempio, l'email viene gestita, evitando di utilizzare canali costosi con un alto SLA. In FortiOS 6.4.1 è stata introdotta la possibilità di raggruppare le interfacce aggiunte al bundle SD-WAN in zone, creando ad esempio una zona per la comunicazione con siti remoti e un'altra per l'accesso locale a Internet utilizzando NAT. Sì, anche il traffico diretto a Internet può essere bilanciato.
Sugli algoritmi di bilanciamento
Per quanto riguarda le modalità con cui Fortigate (il firewall di Fortinet) è in grado di suddividere il traffico tra i canali, ci sono due opzioni interessanti, non molto diffuse sul mercato:
Lowest Cost (SLA) – tra tutte le interfacce che soddisfano l'SLA in quel momento, viene scelta quella con il peso (cost) più basso, impostato manualmente dall'amministratore; questa modalità è adatta per il traffico 'a volume' come il backup e il trasferimento di file.
Best Quality (SLA) – questo algoritmo, oltre ai consueti parametri di latenza, jitter e perdita di pacchetti, può utilizzare Fortigate anche il carico attuale del canale per valutare la qualità; questa modalità è adatta per il traffico 'sensibile', come la telefonia IP (VoIP) e la videoconferenza.
Per questi algoritmi è necessaria la configurazione di un misuratore delle prestazioni del canale – Performance SLA. Questo misuratore controlla periodicamente (check interval) le informazioni relative al rispetto dell'SLA: perdite (packet loss), latenza (latency) e jitter (jitter) nel canale, e può 'scartare' quei canali che attualmente non soddisfano i valori soglia di qualità – perdendo troppi pacchetti o mostrando una latenza eccessiva. Inoltre, il misuratore tiene traccia dello stato del canale e può temporaneamente rimuoverlo dal bundle in caso di perdite di risposte ripetute (failures before inactive). Al ripristino, dopo aver ricevuto alcune risposte di seguito (restore link after), il misuratore riporterà automaticamente il canale nel bundle, e i dati ricominceranno a essere trasmessi attraverso di esso.
Ecco come appare la configurazione del 'misuratore':

Nell'interfaccia web, come protocollo per i test sono disponibili ICMP-Echo-request, HTTP-GET e richiesta DNS. Nella riga di comando ci sono opzioni leggermente più ampie: sono disponibili le opzioni TCP-echo e UDP-echo, nonché un protocollo specializzato per la misurazione della qualità: TWAMP.

I risultati delle misurazioni possono essere visualizzati anche nell'interfaccia web:

E nella riga di comando:

Troubleshooting
Se hai creato una regola e non funziona come previsto, vale la pena controllare il valore Hit Count nell'elenco delle Regole SD-WAN. Questo mostrerà se il traffico sta effettivamente colpendo questa regola:

Nella pagina di configurazione del misuratore stesso, è possibile vedere la variazione dei parametri della connessione nel tempo. Il valore soglia del parametro è indicato con una linea tratteggiata

Nell'interfaccia web, puoi osservare come si distribuisce il traffico in base al volume di dati trasmessi/ricevuti e al numero di sessioni:

Oltre a tutto ciò, c'è una fantastica opportunità di tracciare il passaggio dei pacchetti con la massima dettaglio. Lavorando in una rete reale, si accumula un gran numero di politiche di routing, firewall e distribuzione del traffico attraverso le porte SD-WAN. Tutto ciò interagisce in modo complesso tra loro e, sebbene il fornitore fornisca diagrammi dettagliati degli algoritmi di elaborazione dei pacchetti, è fondamentale avere la possibilità di non costruire e verificare teorie, ma di osservare dove il traffico si dirige realmente.
Ad esempio, il seguente insieme di comandi
diagnostica debug flusso filtro saddr 10.200.64.15
diagnostica debug flusso filtro daddr 10.1.7.2
diagnostica debug mostra funzione-nome
diagnostica debug attiva
diagnostica debug traccia 2
Permetterà di tracciare due pacchetti con l'indirizzo sorgente 10.200.64.15 e l'indirizzo destinatario 10.1.7.2.
Pinghiamo 10.7.1.2 da 10.200.64.15 due volte e osserviamo l'output sulla console.
Primo pacchetto:

Secondo pacchetto:

Ecco che il primo pacchetto è stato ricevuto dal firewall:
id=20085 trace_id=475 func=print_pkt_detail line=5605 msg="vd-Internet:0 ricevuto un pacchetto(proto=1, 10.200.64.15:42->10.1.7.2:2048) da DMZ-Office. tipo=8, codice=0, id=42, seq=0."
VDOM – Internet, Proto=1 (ICMP), DMZ-Office – nome dell'interfaccia L3. Tipo=8 – Echo.
Per lui è stata creata una nuova sessione:
msg="allocate a new session-0006a627"
E si è scoperto un abbinamento nelle impostazioni delle politiche di routing
msg="Match policy routing id=2136539137: to 10.1.7.2 via ifindex-110"
Si scopre che il pacchetto deve essere inviato in uno dei tunnel VPN:
"find a route: flag=04000000 gw-192.168.254.1 via DC-Ph1-1"
Nelle politiche del firewall viene trovata una regola di autorizzazione:
msg="Allowed by Policy-3:"
Il pacchetto viene crittografato e inviato nel tunnel VPN:
func=ipsecdev_hard_start_xmit line=789 msg="ingresso interfaccia IPsec-DC-Ph1-1"
func=_ipsecdev_hard_start_xmit line=666 msg="tunnel IPsec-DC-Ph1-1"
func=esp_output4 line=905 msg="IPsec crittografia/auth"
Il pacchetto crittografato viene inviato all'indirizzo del gateway per questa interfaccia WAN:
msg="send to 2.2.2.2 via intf-WAN1"
Per il secondo pacchetto, tutto avviene in modo simile, ma viene inviato in un altro tunnel VPN e esce attraverso un'altra porta del firewall:
func=ipsecdev_hard_start_xmit line=789 msg="entra nell'interfaccia IPsec-DC-Ph1-2"
func=_ipsecdev_hard_start_xmit line=666 msg="tunnel IPsec-DC-Ph1-2"
func=esp_output4 line=905 msg="IPsec crittografia/auth"
func=ipsec_output_finish line=622 msg="invia a 4.4.4.2 tramite intf-WAN2"
Vantaggi della soluzione
Funzionalità affidabile e interfaccia intuitiva. Il set di funzionalità disponibili in FortiOS prima dell'introduzione di SD-WAN è rimasto completamente inalterato. Ciò significa che non stiamo parlando di un software completamente nuovo, ma di un sistema maturo fornito da un venditore di firewall affermato. Con un insieme tradizionale di funzionalità di rete e un'interfaccia web facile e semplice da utilizzare. Quanti fornitori di SD-WAN hanno funzionalità di Remote-Access VPN sui loro dispositivi finali?
Sicurezza di livello 80. FortiGate è tra le migliori soluzioni di firewall. Ci sono molte risorse su Internet riguardanti la configurazione e la gestione dei firewall, e nel mercato del lavoro ci sono molti specialisti di sicurezza già formati sulle soluzioni di questo fornitore.
Nessun costo per le funzionalità SD-WAN. Costruire una rete SD-WAN con FortiGate costa tanto quanto costruirne una convenzionale WAN, poiché non sono necessarie ulteriori licenze per implementare le funzionalità SD-WAN.
Basso costo d'ingresso. FortiGate ha una buona gamma di dispositivi per diverse prestazioni. I modelli più piccoli ed economici possono andare benissimo per allestire un ufficio o un punto vendita, ad esempio, per 3-5 persone. Molti fornitori non hanno modelli a bassa potenza e accessibili.
Alta prestazione. Ridurre le funzionalità SD-WAN al bilanciamento del traffico ha permesso all'azienda di rilasciare un ASIC SD-WAN specializzato, attraverso il quale il funzionamento di SD-WAN non riduce le prestazioni complessive del firewall.
Possibilità di realizzare interamente un ufficio con l'attrezzatura Fortinet. Questo include alcuni firewall, switch, e punti di accesso Wi-Fi. Un tale ufficio è facile e conveniente da gestire: gli switch e i punti di accesso si registrano nei firewall e vengono gestiti da lì. Ecco come potrebbe apparire una porta di uno switch dall'interfaccia del firewall che gestisce questo switch:

Assenza di controller come punto unico di guasto. Il fornitore stesso sottolinea questo aspetto, ma può essere considerato un vantaggio solo in parte, poiché per quei fornitori che hanno dei controller, garantirne l'affidabilità non costa molto, di solito il prezzo è limitato a poche risorse di calcolo in un ambiente virtuale.
Cosa considerare
Mancanza di separazione tra Control Plane e Data Plane. Questo significa che la rete deve essere configurata manualmente o utilizzando strumenti di gestione tradizionali già esistenti — FortiManager. Nei casi in cui i fornitori hanno implementato tale divisione, la rete si compone da sola. Il compito dell'amministratore può essere solo quello di correggere la topologia, vietando qualcosa, e nulla più. Tuttavia, il punto di forza di FortiManager è che sa gestire non solo i firewall, ma anche gli switch e i punti di accesso Wi-Fi, quindi praticamente tutta la rete.
Crescita condizionata della gestibilità. Poiché per automatizzare la configurazione della rete vengono utilizzati strumenti tradizionali, la gestibilità della rete con l'implementazione di SD-WAN aumenta solo leggermente. D'altra parte, le nuove funzionalità diventano disponibili più rapidamente, poiché il fornitore prima le rilascia solo per il sistema operativo dei firewall (offrendo subito la possibilità di utilizzarle), e solo successivamente completa il sistema di gestione con le interfacce necessarie.
Parte delle funzionalità può essere accessibile dalla linea di comando, ma non dalla interfaccia web. Non è così inquietante entrare ogni tanto nella linea di comando per configurare qualcosa, quanto è preoccupante non vedere nell'interfaccia web che qualcosa è già stato configurato da qualcuno nella linea di comando. Tuttavia, questo di solito riguarda le funzionalità più recenti e, gradualmente, con gli aggiornamenti di FortiOS, le capacità dell'interfaccia web vengono migliorate.
A chi si adatta
A chi ha non molti filiali. Implementare una soluzione SD-WAN con componenti centrali complessi su una rete di 8-10 filiali potrebbe non valere la pena: bisognerà spendere soldi per le licenze per i dispositivi SD-WAN e le risorse del sistema di virtualizzazione per ospitare i componenti centrali. Le risorse computazionali libere in una piccola azienda tendono a essere limitate. Nel caso di Fortinet, è sufficiente acquistare semplicemente i firewall.
A chi ha un gran numero di piccole filiali. Per molti fornitori, il prezzo minimo della soluzione per filiale è piuttosto alto e potrebbe risultare poco interessante dal punto di vista commerciale per il cliente finale. Fortinet offre dispositivi piccoli a un prezzo molto allettante.
A chi non è pronto a fare un grande salto. Implementare SD-WAN con controller, routing proprietario, un nuovo approccio alla pianificazione e gestione della rete potrebbe rappresentare un passo troppo significativo per alcuni clienti. Sì, tale implementazione alla fine contribuisce a ottimizzare l'uso dei canali di comunicazione e il lavoro degli amministratori, ma in primo luogo bisogna apprendere molte cose nuove. A chi non è ancora pronto per un cambiamento di paradigma, ma vuole ottenere il massimo dai propri canali di comunicazione, si adatta perfettamente la soluzione di Fortinet.
Fonte: habr.com
