Att döma av antalet frågor som började komma till oss via SD-WAN har tekniken börjat slå rot ordentligt i Ryssland. Leverantörer sover naturligtvis inte och erbjuder sina koncept, och några modiga pionjärer implementerar dem redan i sina nätverk.
Vi arbetar med nästan alla leverantörer och under flera år i vårt laboratorium lyckades jag fördjupa mig i arkitekturen hos alla större utvecklare av mjukvarudefinierade lösningar. SD-WAN från Fortinet skiljer sig lite här, vilket helt enkelt byggde in funktionaliteten att balansera trafik mellan kommunikationskanaler i brandväggsmjukvaran. Lösningen är ganska demokratisk, så den övervägs vanligtvis av företag som ännu inte är redo för globala förändringar, men som vill använda sina kommunikationskanaler mer effektivt.
I den här artikeln vill jag berätta hur du konfigurerar och arbetar med SD-WAN från Fortinet, vem denna lösning är lämplig för och vilka fallgropar du kan stöta på här.
De mest framträdande aktörerna på SD-WAN-marknaden kan klassificeras i en av två typer:
1. Startups som har skapat SD-WAN-lösningar från grunden. De mest framgångsrika av dessa får en enorm drivkraft för utveckling efter att ha köpts av stora företag - det här är historien om Cisco/Viptela, VMWare/VeloCloud, Nuage/Nokia
2. Stora nätverksleverantörer som har skapat SD-WAN-lösningar och utvecklat programmerbarheten och hanterbarheten för sina traditionella routrar - det här är historien om Juniper, Huawei
Fortinet lyckades hitta rätt. Brandväggsmjukvaran hade inbyggd funktionalitet som gjorde det möjligt att kombinera sina gränssnitt till virtuella kanaler och balansera belastningen mellan dem med hjälp av komplexa algoritmer jämfört med konventionell routing. Denna funktion kallades SD-WAN. Kan det Fortinet kallas SD-WAN? Marknaden förstår gradvis att Software-Defined innebär separationen av kontrollplanet från dataplanet, dedikerade kontrollanter och orkestratorer. Fortinet har inget sådant. Centraliserad hantering är valfri och erbjuds genom det traditionella Fortimanager-verktyget. Men enligt min åsikt bör du inte leta efter abstrakt sanning och slösa tid på att argumentera om termer. I den verkliga världen har varje tillvägagångssätt sina fördelar och nackdelar. Den bästa vägen ut är att förstå dem och kunna välja lösningar som motsvarar uppgifterna.
Jag ska försöka berätta för dig med skärmdumpar i handen hur SD-WAN från Fortinet ser ut och vad det kan göra.
Hur allt fungerar
Låt oss anta att du har två grenar sammankopplade med två datakanaler. Dessa datalänkar kombineras till en grupp, liknande hur vanliga Ethernet-gränssnitt kombineras till en LACP-Port-Channel. Oldtimers kommer ihåg PPP Multilink - också en lämplig analogi. Kanaler kan vara fysiska portar, VLAN SVI, såväl som VPN- eller GRE-tunnlar.
VPN eller GRE används vanligtvis när du ansluter lokala filialnätverk över Internet. Och fysiska portar - om det finns L2-anslutningar mellan sajter, eller vid anslutning över en dedikerad MPLS/VPN, om vi är nöjda med anslutningen utan Overlay och kryptering. Ett annat scenario där fysiska portar används i en SD-WAN-grupp är att balansera användarnas lokala åtkomst till Internet.
I vår monter finns fyra brandväggar och två VPN-tunnlar som fungerar genom två "kommunikationsoperatörer". Diagrammet ser ut så här:
VPN-tunnlar är konfigurerade i gränssnittsläge så att de liknar punkt-till-punkt-anslutningar mellan enheter med IP-adresser på P2P-gränssnitt, som kan pingas för att säkerställa att kommunikationen genom en viss tunnel fungerar. För att trafiken ska krypteras och gå till motsatt sida räcker det med att dirigera den in i tunneln. Alternativet är att välja trafik för kryptering med hjälp av listor med subnät, vilket förvirrar administratören mycket då konfigurationen blir mer komplex. I ett stort nätverk kan du använda ADVPN-teknik för att bygga ett VPN; detta är en analog av DMVPN från Cisco eller DVPN från Huawei, vilket möjliggör enklare installation.
Site-to-Site VPN-konfiguration för två enheter med BGP-routing på båda sidor
«ЦОД» (DC)
«Филиал» (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
set gateway 3.3.3.2
set device "WAN2"
next
end
config router bgp
set as 65002
set router-id 10.1.7.1
set ebgp-multipath enable
config neighbor
edit "192.168.254.2"
set remote-as 65003
next
edit "192.168.254.4"
set remote-as 65003
next
end
config network
edit 1
set prefix 10.1.0.0 255.255.0.0
next
end
config system interface
edit "WAN1"
set vdom "Internet"
set ip 2.2.2.1 255.255.255.252
set allowaccess ping
set role wan
set interface "BRN-BRD"
set vlanid 111
next
edit "WAN2"
set vdom "Internet"
set ip 4.4.4.1 255.255.255.252
set allowaccess ping
set role wan
set interface "BRN-BRD"
set vlanid 114
next
edit "DC-Ph1-1"
set vdom "Internet"
set ip 192.168.254.2 255.255.255.255
set allowaccess ping
set type tunnel
set remote-ip 192.168.254.1 255.255.255.255
set interface "WAN1"
next
edit "DC-Ph1-2"
set vdom "Internet"
set ip 192.168.254.4 255.255.255.255
set allowaccess ping
set type tunnel
set remote-ip 192.168.254.3 255.255.255.255
set interface "WAN2"
next
end
config vpn ipsec phase1-interface
edit "DC-Ph1-1"
set interface "WAN1"
set local-gw 2.2.2.1
set peertype any
set net-device disable
set proposal aes128-sha1
set dhgrp 2
set remote-gw 1.1.1.1
set psksecret ***
next
edit "DC-Ph1-2"
set interface "WAN2"
set local-gw 4.4.4.1
set peertype any
set net-device disable
set proposal aes128-sha1
set dhgrp 2
set remote-gw 3.3.3.1
set psksecret ***
next
end
config vpn ipsec phase2-interface
edit "DC-Ph2-1"
set phase1name "DC-Ph1-1"
set proposal aes128-sha1
set dhgrp 2
next
edit "DC2-Ph2-2"
set phase1name "DC-Ph1-2"
set proposal aes128-sha1
set dhgrp 2
next
end
config router static
edit 1
set gateway 2.2.2.2
et device "WAN1"
next
edit 3
set gateway 4.4.4.2
set device "WAN2"
next
end
config router bgp
set as 65003
set router-id 10.200.7.1
set ebgp-multipath enable
config neighbor
edit "192.168.254.1"
set remote-as 65002
next
edit "192.168.254.3"
set remote-as 65002
next
end
config network
edit 1
set prefix 10.200.0.0 255.255.0.0
next
end
Jag tillhandahåller konfigurationen i textform, eftersom det enligt min mening är bekvämare att konfigurera VPN på detta sätt. Nästan alla inställningar är desamma på båda sidor, i textform kan de göras som en copy-paste. Om du gör samma sak i webbgränssnittet är det lätt att göra ett misstag - glöm en bock någonstans, ange fel värde.
Efter att vi lagt till gränssnitten i paketet
alla rutter och säkerhetspolicyer kan referera till den, och inte till gränssnitten som ingår i den. Som ett minimum måste du tillåta trafik från interna nätverk till SD-WAN. När du skapar regler för dem kan du tillämpa skyddsåtgärder som IPS, antivirus och HTTPS-avslöjande.
SD-WAN-regler är konfigurerade för paketet. Dessa är regler som definierar balanseringsalgoritmen för specifik trafik. De liknar routingpolicyer i policybaserad routing, bara som ett resultat av trafik som faller under policyn är det inte nästa hopp eller det vanliga utgående gränssnittet som installeras, utan gränssnitten som läggs till SD-WAN-paketet plus en trafikbalanseringsalgoritm mellan dessa gränssnitt.
Trafiken kan separeras från det allmänna flödet genom L3-L4-information, av erkända applikationer, internettjänster (URL och IP), samt av erkända användare av arbetsstationer och bärbara datorer. Efter detta kan en av följande balanseringsalgoritmer tilldelas den allokerade trafiken:
I listan Gränssnittspreferenser väljs de gränssnitt från de som redan lagts till i paketet som kommer att betjäna den här typen av trafik. Genom att inte lägga till alla gränssnitt kan du begränsa exakt vilka kanaler du använder, till exempel e-post, om du inte vill belasta dyra kanaler med en hög SLA med det. I FortiOS 6.4.1 blev det möjligt att gruppera gränssnitt som lagts till SD-WAN-paketet i zoner, vilket till exempel skapade en zon för kommunikation med fjärrplatser och en annan för lokal Internetåtkomst med hjälp av NAT. Ja, ja, trafik som går till det vanliga Internet kan också balanseras.
Om balanseringsalgoritmer
När det gäller hur Fortigate (en brandvägg från Fortinet) kan dela trafik mellan kanaler finns det två intressanta alternativ som inte är särskilt vanliga på marknaden:
Lägsta kostnad (SLA) – från alla gränssnitt som uppfyller SLA för tillfället, väljs den med den lägre vikten (kostnaden), manuellt inställd av administratören; detta läge är lämpligt för "bulk" trafik såsom säkerhetskopiering och filöverföringar.
Bästa kvalitet (SLA) – den här algoritmen, förutom den vanliga fördröjningen, jitter och förlust av Fortigate-paket, kan också använda den aktuella kanalbelastningen för att bedöma kanalernas kvalitet; Detta läge är lämpligt för känslig trafik som VoIP och videokonferenser.
Dessa algoritmer kräver inställning av en kommunikationskanals prestandamätare - Performance SLA. Denna mätare övervakar regelbundet (kontrollintervall) information om överensstämmelse med SLA: paketförlust, latens och jitter i kommunikationskanalen, och kan "avvisa" de kanaler som för närvarande inte uppfyller kvalitetströsklarna - de förlorar för många paket eller upplever alltför mycket latens. Dessutom övervakar mätaren kanalens status och kan tillfälligt ta bort den från paketet i händelse av upprepade förluster av svar (fel innan inaktiv). När den återställs, efter flera på varandra följande svar (återställ länk efter), kommer mätaren automatiskt att returnera kanalen till paketet och data kommer att börja överföras genom den igen.
Så här ser "meter"-inställningen ut:
I webbgränssnittet finns ICMP-Echo-request, HTTP-GET och DNS-begäran tillgängliga som testprotokoll. Det finns lite fler alternativ på kommandoraden: TCP-eko- och UDP-eko-alternativ är tillgängliga, såväl som ett specialiserat kvalitetsmätprotokoll - TWAMP.
Mätresultaten kan också ses i webbgränssnittet:
Och på kommandoraden:
Felsökning
Om du skapade en regel, men allt inte fungerar som förväntat, bör du titta på Hit Count-värdet i SD-WAN Rules-listan. Det kommer att visa om trafiken överhuvudtaget faller under denna regel:
På inställningssidan för själva mätaren kan du se förändringen i kanalparametrar över tiden. Den streckade linjen indikerar tröskelvärdet för parametern
I webbgränssnittet kan du se hur trafiken fördelas efter mängden överförd/mottagen data och antal sessioner:
Utöver allt detta finns det ett utmärkt tillfälle att spåra passagen av paket med maximal detalj. När du arbetar i ett riktigt nätverk samlar enhetskonfigurationen många routingpolicyer, brandväggar och trafikdistribution över SD-WAN-portar. Allt detta interagerar med varandra på ett komplext sätt, och även om leverantören tillhandahåller detaljerade blockdiagram över paketbearbetningsalgoritmer är det väldigt viktigt att inte kunna bygga och testa teorier, utan att se vart trafiken faktiskt tar vägen.
Till exempel följande uppsättning kommandon
diagnose debug flow filter saddr 10.200.64.15
diagnose debug flow filter daddr 10.1.7.2
diagnose debug flow show function-name
diagnose debug enable
diagnose debug trace 2
Låter dig spåra två paket med en källadress 10.200.64.15 och en destinationsadress 10.1.7.2.
Vi pingar 10.7.1.2 från 10.200.64.15 två gånger och tittar på utgången på konsolen.
Första paketet:
Andra paketet:
Här är det första paketet som tas emot av brandväggen:
id=20085 trace_id=475 func=print_pkt_detail line=5605 msg="vd-Internet:0 received a packet(proto=1, 10.200.64.15:42->10.1.7.2:2048) from DMZ-Office. type=8, code=0, id=42, seq=0."
VDOM – Internet, Proto=1 (ICMP), DMZ-Office – название L3-интерфейса. Type=8 – Echo.
En ny session har skapats för honom:
msg="allocate a new session-0006a627"
Och en matchning hittades i routingpolicyinställningarna
msg="Match policy routing id=2136539137: to 10.1.7.2 via ifindex-110"
Det visar sig att paketet måste skickas till en av VPN-tunnlarna:
"find a route: flag=04000000 gw-192.168.254.1 via DC-Ph1-1"
Följande tillåtande regel upptäcks i brandväggspolicyer:
msg="Allowed by Policy-3:"
Paketet krypteras och skickas till VPN-tunneln:
func=ipsecdev_hard_start_xmit line=789 msg="enter IPsec interface-DC-Ph1-1"
func=_ipsecdev_hard_start_xmit line=666 msg="IPsec tunnel-DC-Ph1-1"
func=esp_output4 line=905 msg="IPsec encrypt/auth"
Det krypterade paketet skickas till gatewayadressen för detta WAN-gränssnitt:
msg="send to 2.2.2.2 via intf-WAN1"
För det andra paketet händer allt på liknande sätt, men det skickas till en annan VPN-tunnel och går genom en annan brandväggsport:
func=ipsecdev_hard_start_xmit line=789 msg="enter IPsec interface-DC-Ph1-2"
func=_ipsecdev_hard_start_xmit line=666 msg="IPsec tunnel-DC-Ph1-2"
func=esp_output4 line=905 msg="IPsec encrypt/auth"
func=ipsec_output_finish line=622 msg="send to 4.4.4.2 via intf-WAN2"
Fördelar med lösningen
Pålitlig funktionalitet och användarvänligt gränssnitt. Funktionsuppsättningen som var tillgänglig i FortiOS innan SD-WAN kom har bevarats helt. Det vill säga vi har ingen nyutvecklad mjukvara utan ett moget system från en beprövad brandväggsleverantör. Med en traditionell uppsättning nätverksfunktioner, ett bekvämt och lättläst webbgränssnitt. Hur många SD-WAN-leverantörer har till exempel fjärråtkomst VPN-funktionalitet på slutenheter?
Säkerhetsnivå 80. FortiGate är en av de bästa brandväggslösningarna. Det finns mycket material på Internet om att sätta upp och administrera brandväggar, och på arbetsmarknaden finns det många säkerhetsspecialister som redan behärskar säljarens lösningar.
Noll pris för SD-WAN-funktionalitet. Att bygga ett SD-WAN-nätverk på FortiGate kostar detsamma som att bygga ett vanligt WAN-nätverk på det, eftersom inga ytterligare licenser behövs för att implementera SD-WAN-funktionalitet.
Lågt inträdesbarriärpris. Fortigate har en bra gradering av enheter för olika prestandanivåer. De yngsta och billigaste modellerna är ganska lämpliga för att utöka ett kontor eller försäljningsställe med säg 3-5 anställda. Många leverantörer har helt enkelt inte så lågpresterande och prisvärda modeller.
Hög prestanda. Genom att reducera SD-WAN-funktionaliteten till trafikbalansering kunde företaget släppa en specialiserad SD-WAN ASIC, tack vare vilken SD-WAN-drift inte minskar brandväggens prestanda som helhet.
Möjligheten att implementera ett helt kontor på Fortinet-utrustning. Dessa är ett par brandväggar, switchar, Wi-Fi-åtkomstpunkter. Ett sådant kontor är enkelt och bekvämt att hantera - switchar och åtkomstpunkter registreras på brandväggar och hanteras från dem. Så här kan till exempel en switchport se ut från brandväggsgränssnittet som styr denna switch:
Brist på kontroller som en enda punkt av fel. Säljaren själv fokuserar på detta, men detta kan bara kallas en fördel delvis, eftersom det för de leverantörer som har kontroller är billigt att säkerställa deras feltolerans, oftast till priset av en liten mängd datorresurser i en virtualiseringsmiljö.
Vad ska man leta efter
Ingen separation mellan kontrollplan och dataplan. Detta innebär att nätverket måste konfigureras antingen manuellt eller med de traditionella hanteringsverktygen som redan finns tillgängliga - FortiManager. För leverantörer som har implementerat en sådan separation monteras nätverket självt. Administratören behöver kanske bara justera sin topologi, förbjuda något någonstans, inget mer. FortiManagers trumfkort är dock att den kan hantera inte bara brandväggar, utan även switchar och Wi-Fi-accesspunkter, det vill säga nästan hela nätverket.
Villkorlig ökning av kontrollerbarheten. På grund av att traditionella verktyg används för att automatisera nätverkskonfiguration, ökar nätverkshanteringen något med införandet av SD-WAN. Å andra sidan blir ny funktionalitet tillgänglig snabbare, eftersom leverantören först släpper den endast för brandväggsoperativsystemet (vilket omedelbart gör det möjligt att använda det), och först därefter kompletterar ledningssystemet med nödvändiga gränssnitt.
Vissa funktioner kan vara tillgängliga från kommandoraden, men är inte tillgängliga från webbgränssnittet. Ibland är det inte så läskigt att gå in på kommandoraden för att konfigurera något, men det är läskigt att inte se i webbgränssnittet att någon redan har konfigurerat något från kommandoraden. Men detta gäller vanligtvis de senaste funktionerna och gradvis, med FortiOS-uppdateringar, förbättras webbgränssnittets möjligheter.
Att passa
För den som inte har många grenar. Att implementera en SD-WAN-lösning med komplexa centrala komponenter i ett nätverk med 8-10 filialer kanske inte kostar ljuset - du kommer att behöva spendera pengar på licenser för SD-WAN-enheter och virtualiseringssystemresurser för att vara värd för de centrala komponenterna. Ett litet företag har vanligtvis begränsade kostnadsfria datorresurser. När det gäller Fortinet räcker det med att helt enkelt köpa brandväggar.
För dig som har många små grenar. För många leverantörer är det lägsta lösningspriset per filial ganska högt och kanske inte intressant ur slutkundens verksamhetssynpunkt. Fortinet erbjuder små enheter till mycket attraktiva priser.
För dem som inte är redo att gå för långt ännu. Att implementera SD-WAN med kontroller, proprietär routing och ett nytt tillvägagångssätt för nätverksplanering och hantering kan vara ett för stort steg för vissa kunder. Ja, en sådan implementering kommer i slutändan att hjälpa till att optimera användningen av kommunikationskanaler och administratörernas arbete, men först måste du lära dig många nya saker. För den som ännu inte är redo för ett paradigmskifte, men vill klämma ut mer ur sina kommunikationskanaler, är lösningen från Fortinet helt rätt.
Källa: will.com