Asymmetrisk routning med flera nätverksvägar

Den här artikeln förklarar hur nätverkstrafik kan ta olika vägar när flera vägar är tillgängliga mellan nätverkskälla och mål.

Det finns två begrepp som du behöver känna till för att förstå asymmetrisk routning. Den första är effekten av flera nätverkssökvägar. Det andra är hur enheter, till exempel en brandvägg, behåller tillståndet. Dessa typer av enheter kallas tillståndskänsliga enheter. När dessa två faktorer kombineras kan de skapa ett scenario där nätverkstrafiken tas bort av den tillståndskänsliga enheten. Trafiken ignoreras eftersom den inte identifierade att trafiken kom från sig själv.

Flera nätverksvägar

När ett företagsnätverk bara har en länk till Internet via en Internetleverantör, överförs all trafik till och från Internet på samma väg. Det är vanligt att företag köper flera kretsar för att skapa redundanta sökvägar för att förbättra nätverkets drifttid. Med den här typen av konfiguration är det möjligt att trafiken går ut en länk till Internet och returnerar via en annan länk. Det här scenariot kallas ofta för asymmetrisk routning. Vid asymmetrisk routning tar den returnerade nätverkstrafiken en annan väg än det ursprungliga utgående flödet.

Nätverk med flera sökvägar

Även om asymmetrisk routning vanligtvis sker när du går till Internet. Det händer också när en kombination av flera sökvägar introduceras. Det första exemplet är när du har en Internetsökväg och en privat sökväg som går till samma mål. Det andra exemplet är när du har flera privata sökvägar som också går till samma mål.

Varje router längs sökvägen mellan källan och målet beräknar den bästa sökvägen för att nå målet. Routern bestämmer bästa möjliga sökväg baserat på två huvudfaktorer:

  • Routning mellan externa nätverk baseras på ett routningsprotokoll, Border Gateway Protocol (BGP). BGP tar annonser från grannar och kör dem via ett antal åtgärder för att avgöra den bästa vägen till det avsedda målet. Bästa vägen lagras i dess routningstabell.
  • Längden på en nätmask som är associerad med en väg påverkar routningsvägarna. Om en router tar emot flera annonser för samma IP-adress väljer routern sökvägen med den längre nätmasken eftersom den anses vara en mer specifik väg.

Tillståndskänsliga enheter

Routrar tittar på ett pakets IP-huvud för att bestämma routningen. Vissa enheter leta djupare i paketet. Dessa enheter tittar vanligtvis på Layer 4 - Transmission Control Protocol (TCP) eller UDP(User Datagram Protocol), eller till och med Layer 7-huvuden (Application Layer). Dessa typer av enheter är antingen säkerhetsenheter eller enheter för bandbreddsoptimering.

En brandvägg är ett vanligt exempel på en tillståndskänslig enhet. En brandvägg tillåter eller avvisar paket för att passera genom dess gränssnitt baserat på olika kriterier. Dessa kriterier omfattar men är inte begränsade till protokoll, TCP/UDP-port och URL-huvuden. Den här nivån av paketinspektion kan belasta enheten hårt.

För att förbättra prestanda inspekterar brandväggen det första paketet i ett flöde. Om det tillåter att paketet passerar genom dess gränssnitt behåller det flödesinformationen i sin tillståndstabell. Eventuella efterföljande paket som är relaterade till det här flödet tillåts sedan baserat på den första bestämningen. Ett paket som ingår i ett befintligt flöde kan komma till brandväggen som det inte kom från. Eftersom den inte har någon tidigare tillståndsinformation om det första flödet släpper brandväggen paketet.

Asymmetrisk routning med ExpressRoute

När du ansluter till Microsoft via Azure ExpressRoute, ändras nätverket så här:

  • Du har flera länkar till Microsoft. Den ena länken är din befintliga Internetanslutning och den andra är via din ExpressRoute-anslutning. Viss trafik till Microsoft kan gå via Internetanslutningen men returnera över din ExpressRoute-anslutning. Samma sak kan också inträffa när trafiken går över ExpressRoute men returnerar via Internet-sökvägen.
  • Du har fått mer specifika IP-adresser från ExpressRoute-kretsen. Så när trafik från nätverket går till Microsoft för tjänster som erbjuds via ExpressRoute föredrar dina routrar alltid ExpressRoute-anslutningen.

För att förstå effekten av hur dessa två ändringar har på ett nätverk ska vi överväga några scenarier. Till exempel har du en krets till Internet och du använder alla Microsoft-tjänster via Internet. Trafiken från ditt nätverk till och från Microsoft passerar samma Internetlänk och passerar genom en brandvägg. Brandväggen registrerar flödet när det första paketet visas. Alla efterföljande paket i konversationen tillåts eftersom flödet finns i tillståndstabellen.

Asymmetrisk routning med ExpressRoute

Sedan skapar du en ExpressRoute-krets för att använda tjänster som erbjuds av Microsoft via ExpressRoute. Alla andra tjänster från Microsoft används via Internet. Du distribuerar en separat brandvägg vid gränsen som är ansluten till ExpressRoute-anslutningen. Microsoft annonserar mer specifika prefix till ditt nätverk via ExpressRoute för vissa tjänster. Din routningsinfrastruktur väljer ExpressRoute som primär väg för dessa prefix.

Om du inte annonserar dina offentliga IP-adresser till Microsoft via ExpressRoute. Microsoft kommunicerar med dina offentliga IP-adresser via Internet. Trafik som skickas från nätverket till Microsoft använder ExpressRoute-anslutningen, men returtrafiken från Microsoft använder Internetsökvägen. När brandväggen på din kant ser ett svarspaket för ett flöde som den inte känner till, släpper den dessa paket.

Om du väljer att annonsera samma NAT-pool (Network Address Translation) för ExpressRoute och för Internet. Du ser liknande problem med klienterna i nätverket på privata IP-adresser. Begäranden om tjänster som Windows Update går via Internet eftersom IP-adresser för dessa tjänster inte annonseras via ExpressRoute. Returtrafiken kommer dock tillbaka via ExpressRoute. Eftersom Microsoft tog emot en IP-adress med samma nätmask från Internet och ExpressRoute är den önskade sökvägen alltid ExpressRoute. Om en brandvägg eller en annan tillståndskänslig enhet på nätverksgränsen som är riktad mot ExpressRoute-anslutningen inte har någon tidigare information om ett flöde, tar den bort dessa paket.

Lösningar för asymmetrisk routning

Du har två tillgängliga alternativ för att lösa problemet med asymmetrisk routning. Den första är via routning, och den andra är genom att använda en källbaserad NAT (SNAT).

Routning

Kontrollera att dina offentliga IP-adresser annonseras till lämpliga WAN-länkar (Wide Area Network). Om du till exempel vill använda Internet för autentiseringstrafik och ExpressRoute för din e-posttrafik. Annonsera inte dina offentliga IP-adresser för Active Directory Federation Services (AD FS) (AD FS) via ExpressRoute. Se också till att inte exponera din lokala AD FS-server för IP-adresser som routern tar emot via ExpressRoute. Routning som tas emot via ExpressRoute är mer specifik och gör ExpressRoute till förstahandsvalet för autentiseringstrafik till Microsoft. Om du inte är uppmärksam på hur routning utförs i ditt nätverks asymmetriska routningsproblem kan uppstå.

Om du vill använda ExpressRoute för autentisering kontrollerar du att du annonserar offentliga IP-adresser för AD FS via ExpressRoute utan NAT. När den konfigureras på det här sättet går trafiken som kommer från Microsoft till din lokala AD FS-server via ExpressRoute. Returtrafiken från nätverket som går till Microsoft använder ExpressRoute eftersom det är den föredragna vägen via Internet.

Källbaserad NAT

Ett annat sätt att lösa problemet med asymmetrisk routning är att använda SNAT. Du väljer till exempel att inte annonsera den offentliga IP-adressen för en lokal SMTP-server (Simple Mail Transfer Protocol) via ExpressRoute. I stället tänker du använda Internet för den här typen av kommunikation. En begäran från Microsoft som går till din lokala SMTP-server passerar internet. Du använder SNAT för att skicka den inkommande begäran till en intern IP-adress. Returtrafiken från SMTP-servern går till gränsbrandväggen (som du använder för NAT) i stället för via ExpressRoute. Därför tar returtrafiken Internet-sökvägen.

Nätverkskonfiguration för källbaserad NAT

Identifiering av asymmetrisk routning

Traceroute är det bästa sättet att kontrollera att nätverkstrafik skickas via rätt väg. Om du förväntar dig att trafik från din lokala SMTP-server till Microsoft ska ta Internetsökvägen är den förväntade traceroute från SMTP-servern till Microsoft 365. Resultatet verifierar att trafiken verkligen lämnar nätverket mot Internet och inte mot ExpressRoute.