Dela via


Konfigurera routningsfilter för Microsoft-peering med hjälp av PowerShell

Flödesfilter är ett sätt att använda en delmängd av tjänster som stöds via Microsoft-peering. Stegen i den här artikeln hjälper dig att konfigurera och hantera routningsfilter för ExpressRoute-kretsar.

Microsoft 365-tjänster som Exchange Online, SharePoint Online och Skype za posao och offentliga Azure-tjänster, till exempel lagring och SQL DB, är tillgängliga via Microsoft-peering. Offentliga Azure-tjänster kan väljas per region och kan inte definieras per offentlig tjänst.

När Microsoft-peering ställs in i en ExpressRoute-krets annonseras alla prefix relaterade till de här tjänsterna via de BGP-sessioner som upprättas. Ett community-värde för BGP är kopplat till varje prefix för att identifiera vilken tjänst som erbjuds genom prefixet. En lista över BGP-communityvärden och de tjänster som de mappar till finns i BGP-communities.

Anslutning till alla Azure- och Microsoft 365-tjänster gör att ett stort antal prefix annonseras via BGP. Det stora antalet prefix ökar avsevärt storleken på routningstabellerna som underhålls av routrar i nätverket. Om du planerar att endast använda en delmängd av tjänster som erbjuds via Microsoft-peering kan du minska storleken på dina routningstabeller på två sätt. Du kan:

  • Filtrera bort oönskade prefix genom att tillämpa vägfilter på BGP-communities. Routningsfiltrering är en vanlig nätverkspraxis och används ofta i många nätverk.

  • Definiera routningsfilter och tillämpa dem på din ExpressRoute-krets. Ett vägfilter är en ny resurs som låter dig välja listan över tjänster som du planerar att använda via Microsoft-peering. ExpressRoute-routrar skickar bara listan över prefix som tillhör de tjänster som identifieras i routningsfiltret.

Diagram över ett vägfilter som tillämpas på ExpressRoute-kretsen så att endast vissa prefix kan sändas till det lokala nätverket.

Om vägfilter

När Microsoft-peering konfigureras på din ExpressRoute-krets etablerar Microsoft Edge-routrarna ett par BGP-sessioner med dina Edge-routrar via anslutningsleverantören. Inga vägar annonseras till ditt nätverk. Om du vill aktivera vägannonseringar till ditt nätverk måste du associera ett flödesfilter.

Med ett flödesfilter kan du identifiera tjänster som du vill använda via Microsoft-peering för din ExpressRoute-krets. Det är en lista över alla tillåtna community-värden för BGP. När en routningsfilterresurs har definierats och kopplats till en ExpressRoute-krets, annonseras alla prefix som mappar till BGP-communityvärden till ditt nätverk.

Om du vill koppla routningsfilter till Microsoft 365-tjänster måste du ha behörighet att använda Microsoft 365-tjänster via ExpressRoute. Om du inte har behörighet att använda Microsoft 365-tjänster via ExpressRoute går det inte att koppla routningsfilter. Mer information om auktoriseringsprocessen finns i Azure ExpressRoute för Microsoft 365.

Viktigt!

Microsoft-peering av ExpressRoute-kretsar som konfigurerades före den 1 augusti 2017 kommer att ha alla Microsoft kancelarija tjänstprefix som annonseras via Microsoft-peering, även om routningsfilter inte har definierats. Microsoft-peering av ExpressRoute-kretsar som har konfigurerats den 1 augusti 2017 eller senare kommer inte att ha några prefix annonserade förrän ett routningsfilter är kopplat till kretsen.

Förutsättningar

  • Granska förutsättningarna och arbetsflödena innan du påbörjar konfigurationen.

  • Du måste ha en aktiv ExpressRoute-krets som har Microsoft-peering etablerat. Du kan använda följande instruktioner för att utföra dessa uppgifter:

    • Skapa en ExpressRoute-krets och aktivera kretsen av anslutningsleverantören innan du fortsätter. ExpressRoute-kretsen måste vara i ett etablerat och aktiverat tillstånd.
    • Skapa Microsoft-peering om du hanterar BGP-sessionen direkt. Du kan också låta anslutningsleverantören etablera Microsoft-peering för din krets.

Azure Cloud Shell

Azure är värd för Azure Cloud Shell, en interaktiv gränssnittsmiljö som du kan använda via webbläsaren. Du kan använda antingen Bash eller PowerShell med Cloud Shell för att arbeta med Azure-tjänster. Du kan använda förinstallerade Cloud Shell-kommandon för att köra koden i den här artikeln, utan att behöva installera något i din lokala miljö.

Så här startar du Azure Cloud Shell:

Alternativ Exempel/länk
Välj Prova i det övre högra hörnet i en kod eller ett kommandoblock. Om du väljer Prova kopieras inte koden eller kommandot automatiskt till Cloud Shell. Skärmbild som visar ett exempel på Try It for Azure Cloud Shell.
Gå till https://shell.azure.com eller Välj knappen Starta Cloud Shell för att öppna Cloud Shell i webbläsaren. Knapp för att starta Azure Cloud Shell.
Välj knappen Cloud Shell på menyn längst upp till höger i Azure-portalen. Skärmbild som visar Cloud Shell-knappen i Azure-portalen

Så här använder du Azure Cloud Shell:

  1. Starta Cloud Shell.

  2. Välj knappen Kopiera i ett kodblock (eller kommandoblock) för att kopiera koden eller kommandot.

  3. Klistra in koden eller kommandot i Cloud Shell-sessionen genom att välja Ctrl+Skift+V i Windows och Linux, eller genom att välja Cmd+Shift+V på macOS.

  4. Välj Retur för att köra koden eller kommandot.

Logga in på ditt Azure-konto och välj din prenumeration

Om du använder Azure Cloud Shell loggar du in på ditt Azure-konto automatiskt efter att ha klickat på Prova. Om du vill logga in lokalt öppnar du PowerShell-konsolen med utökade privilegier och kör cmdleten för att ansluta.

Connect-AzAccount

Om du har fler än en prenumeration hämtar du en lista över dina Azure-prenumerationer.

Get-AzSubscription

Ange den prenumeration som du vill använda.

Select-AzSubscription -SubscriptionName "Name of subscription"

Hämta en lista över prefix och BGP-communityvärden

  1. Använd följande cmdlet för att hämta listan över BGP-communityvärden och prefix som är associerade med tjänster som är tillgängliga via Microsoft-peering:

    Get-AzBgpServiceCommunity
    
  2. Skapa en lista över BGP-communityvärden som du vill använda i vägfiltret.

Skapa ett vägfilter och en filterregel

Ett vägfilter kan bara ha en regel och regeln måste vara av typen Allow. Den här regeln kan ha en lista över associerade BGP-communityvärden. Kommandot az network route-filter create skapar bara en vägfilterresurs. När du har skapat resursen måste du sedan skapa en regel och koppla den till vägfilterobjektet.

  1. Kör följande kommando för att skapa en vägfilterresurs:

    New-AzRouteFilter -Name "MyRouteFilter" -ResourceGroupName "MyResourceGroup" -Location "West US"
    
  2. Kör följande kommando för att skapa en vägfilterregel:

    $rule = New-AzRouteFilterRuleConfig -Name "Allow-EXO-D365" -Access Allow -RouteFilterRuleType Community -CommunityList 12076:5010,12076:5040
    
  3. Kör följande kommando för att lägga till filterregeln i vägfiltret:

    $routefilter = Get-AzRouteFilter -Name "MyRouteFilter" -ResourceGroupName "MyResourceGroup"
    $routefilter.Rules.Add($rule)
    Set-AzRouteFilter -RouteFilter $routefilter
    

Koppla routningsfiltret till en ExpressRoute-krets

Kör följande kommando för att koppla routningsfiltret till ExpressRoute-kretsen, förutsatt att du bara har Microsoft-peering:

$ckt = Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "MyResourceGroup"
$index = [array]::IndexOf(@($ckt.Peerings.PeeringType), "MicrosoftPeering")
$ckt.Peerings[$index].RouteFilter = $routefilter
Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt

Vanliga åtgärder

Så här hämtar du egenskaperna för ett vägfilter

Använd följande steg för att hämta egenskaperna för ett vägfilter:

  1. Kör följande kommando för att hämta routningsfilterresursen:

    $routefilter = Get-AzRouteFilter -Name "MyRouteFilter" -ResourceGroupName "MyResourceGroup"
    
  2. Hämta routningsfilterreglerna för routningsfilterresursen genom att köra följande kommando:

    $routefilter = Get-AzRouteFilter -Name "MyRouteFilter" -ResourceGroupName "MyResourceGroup"
    $rule = $routefilter.Rules[0]
    

Uppdatera egenskaperna för ett vägfilter

Om routningsfiltret redan är kopplat till en krets sprids automatiskt prefixannonseringsändringar i BGP-communitylistan via den upprättade BGP-sessionen. Du kan uppdatera BGP-communitylistan för ditt vägfilter med hjälp av följande kommando:

$routefilter = Get-AzRouteFilter -Name "MyRouteFilter" -ResourceGroupName "MyResourceGroup"
$routefilter.rules[0].Communities = "12076:5030", "12076:5040"
Set-AzRouteFilter -RouteFilter $routefilter

Koppla bort ett routningsfilter från en ExpressRoute-krets

När ett vägfilter har kopplats från ExpressRoute-kretsen annonseras inga prefix via BGP-sessionen. Du kan koppla från ett routningsfilter från en ExpressRoute-krets med hjälp av följande kommando:

$ckt.Peerings[0].RouteFilter = $null
Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt

Rensa resurser

Du kan bara ta bort ett vägfilter om det inte är kopplat till någon krets. Kontrollera att routningsfiltret inte är kopplat till någon krets innan du försöker ta bort det. Du kan ta bort ett vägfilter med hjälp av följande kommando:

Remove-AzRouteFilter -Name "MyRouteFilter" -ResourceGroupName "MyResourceGroup"

Nästa steg

Information om routerkonfigurationsexempel finns i: