Routefilters voor Microsoft-peering configureren met behulp van PowerShell

Met routefilters kunt u een subset van ondersteunde services gebruiken via Microsoft-peering. De stappen in dit artikel helpen u de routefilters voor ExpressRoute-circuits te configureren en te beheren.

Microsoft 365-services zoals Exchange Online, SharePoint online en Skype voor Bedrijven en openbare Azure-services, zoals Storage en SQL DB, zijn toegankelijk via Microsoft-peering. Openbare Azure-services kunnen per regio worden geselecteerd en kunnen niet per openbare service worden gedefinieerd.

Wanneer Microsoft-peering wordt geconfigureerd in een ExpressRoute-circuit, worden alle voorvoegsels die betrekking hebben op deze services, geadverteerd via de BGP-sessies die tot stand zijn gebracht. Er wordt aan elk voorvoegsel een BGP-communitywaarde gekoppeld om de service te identificeren die via het voorvoegsel wordt aangeboden. Zie BGP-community's voor een lijst met de BGP-communitywaarden en de services waaraan ze zijn gekoppeld.

Dankzij de connectiviteit met alle Azure- en Microsoft 365-services wordt een groot aantal voorvoegsels geadverteerd via BGP. Door het grote aantal voorvoegsels neemt de grootte van de routeringstabellen die worden beheerd via routers in uw netwerk, aanzienlijk toe. Als u slechts een subset van services die worden aangeboden via Microsoft-peering wilt gebruiken, kunt u de grootte van de routeringstabellen op twee manieren verkleinen. U kunt:

  • Ongewenste voorvoegsels uitfilteren door routefilters toe te passen op BGP-community's. Het toepassen van routefilters is een gangbare werkwijze en wordt gebruikt in veel netwerken.

  • Definieer routefilters en pas deze toe op uw ExpressRoute-circuit. Een routefilter is een nieuwe resource waarmee u de lijst met services kunt selecteren die u wilt gebruiken via Microsoft-peering. ExpressRoute-routers verzenden alleen de lijst met voorvoegsels die horen bij de services die zijn gedefinieerd in het routefilter.

Diagram of a route filter applied to the ExpressRoute circuit to allow only certain prefixes to be broadcast to the on-premises network.

Over routefilters

Wanneer Microsoft-peering wordt geconfigureerd voor uw ExpressRoute-circuit, zetten de Microsoft Edge-routers twee BGP-sessies op met de Edge-routers via uw connectiviteitsprovider. Er worden geen routes geadverteerd naar uw netwerk. Als u dit wel wilt doen, moet u een routefilter koppelen.

Via een routefilter kunt u services identificeren die u wilt gebruiken via Microsoft-peering op uw ExpressRoute-circuit. Het is in feite een lijst met alle toegestane BGP-communitywaarden. Zodra een routefilter is gedefinieerd en gekoppeld aan een ExpressRoute-circuit, worden alle voorvoegsels die overeenkomen met de BGP-communitywaarden, geadverteerd naar uw netwerk.

Als u routefilters aan Microsoft 365-services wilt koppelen, moet u zijn gemachtigd om Microsoft 365-services te gebruiken via ExpressRoute. Als u niet bent gemachtigd om Microsoft 365-services te gebruiken via ExpressRoute, mislukt de bewerking voor het koppelen van routefilters. Zie Azure ExpressRoute voor Microsoft 365 voor meer informatie over het autorisatieproces.

Belangrijk

Microsoft-peering van ExpressRoute-circuits die vóór 1 augustus 2017 zijn geconfigureerd, hebben alle Microsoft Office-servicevoorvoegsels die worden geadverteerd via Microsoft-peering, zelfs als er geen routefilters zijn gedefinieerd. Microsoft-peering voor ExpressRoute-circuits die zijn geconfigureerd op of na 1 augustus 2017, heeft geen voorvoegsels die worden geadverteerd totdat een routefilter aan het circuit is gekoppeld.

Vereisten

  • Bekijk de vereisten en werkstromen voordat u begint met de configuratie.

  • U moet een actief ExpressRoute-circuit hebben waarvoor Microsoft-peering is ingericht. U kunt de volgende instructies gebruiken om deze taken uit te voeren:

    • Maak een ExpressRoute-circuit en laat het circuit inschakelen door de connectiviteitsprovider voordat u verdergaat. Het ExpressRoute-circuit moet zijn ingericht en ingeschakeld.
    • Maak Microsoft-peering als u de BGP-sessie rechtstreeks beheert. Of zorg ervoor dat de connectiviteitsprovider Microsoft-peering inricht voor het circuit.

Azure Cloud Shell

Azure host Azure Cloud Shell, een interactieve shell-omgeving die u via uw browser kunt gebruiken. U kunt Bash of PowerShell gebruiken met Cloud Shell om met Azure-services te werken. U kunt de vooraf geïnstalleerde Cloud Shell-opdrachten gebruiken om de code in dit artikel uit te voeren zonder dat u iets hoeft te installeren in uw lokale omgeving.

Om Azure Cloud Shell op te starten:

Optie Voorbeeld/koppeling
Selecteer Uitproberen in de rechterbovenhoek van een code- of opdrachtblok. Als u Try It selecteert, wordt de code of opdracht niet automatisch gekopieerd naar Cloud Shell. Screenshot that shows an example of Try It for Azure Cloud Shell.
Ga naar https://shell.azure.com, of selecteer de knop Cloud Shell starten om Cloud Shell in uw browser te openen. Button to launch Azure Cloud Shell.
Klik op de knop Cloud Shell in het menu in de balk rechtsboven in de Azure-portal. Screenshot that shows the Cloud Shell button in the Azure portal

Azure Cloud Shell gebruiken:

  1. Start Cloud Shell.

  2. Selecteer de knop Kopiëren op een codeblok (of opdrachtblok) om de code of opdracht te kopiëren.

  3. Plak de code of opdracht in de Cloud Shell-sessie door Ctrl+Shift+V in Windows en Linux te selecteren of door Cmd+Shift+V te selecteren in macOS.

  4. Selecteer Enter om de code of opdracht uit te voeren.

Aanmelden bij uw Azure-account en uw abonnement selecteren

Als u Azure Cloud Shell gebruikt, wordt u automatisch aangemeld bij uw Azure-account nadat u op Probeer het nu hebt geklikt. Als u zich lokaal wil aanmelden, opent u de PowerShell-console met verhoogde rechten en voert u de cmdlet uit om verbinding te maken.

Connect-AzAccount

Als u meer dan één abonnement hebt, haalt u een lijst met uw abonnementen op.

Get-AzSubscription

Geef het abonnement op dat u wilt gebruiken.

Select-AzSubscription -SubscriptionName "Name of subscription"

Een lijst met voorvoegsels en BGP-communitywaarden ophalen

  1. Gebruik de volgende cmdlet om de lijst met BGP-communitywaarden en voorvoegsels op te halen die zijn gekoppeld aan services die toegankelijk zijn via Microsoft-peering:

    Get-AzBgpServiceCommunity
    
  2. Maak een lijst met de BGP-communitywaarden die u wilt gebruiken in het routefilter.

Een routefilter en een filterregel maken

Een routefilter kan slechts één regel bevatten en de regel moet van het type Allowzijn. Aan deze regel kan een lijst met BGP-communitywaarden zijn gekoppeld. Met de opdracht az network route-filter create wordt alleen een resource voor een routefilter gemaakt. Nadat u de resource hebt gemaakt, moet u een regel maken en deze koppelen aan het routefilterobject.

  1. Voer de volgende opdracht uit om een resource voor een routefilter te maken:

    New-AzRouteFilter -Name "MyRouteFilter" -ResourceGroupName "MyResourceGroup" -Location "West US"
    
  2. Voer de volgende opdracht uit om een routefilterregel te maken:

    $rule = New-AzRouteFilterRuleConfig -Name "Allow-EXO-D365" -Access Allow -RouteFilterRuleType Community -CommunityList 12076:5010,12076:5040
    
  3. Voer de volgende opdracht uit om de filterregel toe te voegen aan het routefilter:

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

Het routefilter koppelen aan een ExpressRoute-circuit

Voer de volgende opdracht uit om het routefilter te koppelen aan het ExpressRoute-circuit, ervan uitgaande dat u alleen Microsoft-peering hebt:

$ckt = Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "MyResourceGroup"
$ckt.Peerings[0].RouteFilter = $routefilter 
Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt

Algemene taken

De eigenschappen van een routefilter ophalen

Gebruik de volgende stappen om de eigenschappen van een routefilter op te halen:

  1. Voer de volgende opdracht uit om de resource voor het routefilter op te halen:

    $routefilter = Get-AzRouteFilter -Name "MyRouteFilter" -ResourceGroupName "MyResourceGroup"
    
  2. Haal de routefilterregels voor de resource op door de volgende opdracht uit te voeren:

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

De eigenschappen van een routefilter bijwerken

Als het routefilter al is gekoppeld aan een circuit, worden wijzigingen in de BGP-communitylijst automatisch doorgegeven via de BGP-sessie die tot stand is gebracht. U kunt de BGP-communitylijst van uw routefilter bijwerken met behulp van de volgende opdracht:

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

Een routefilter loskoppelen van een ExpressRoute-circuit

Zodra een routefilter is losgekoppeld van het ExpressRoute-circuit, worden er geen voorvoegsels geadverteerd via de BGP-sessie. U kunt een routefilter loskoppelen van een ExpressRoute-circuit met behulp van de volgende opdracht:

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

Resources opschonen

U kunt een routefilter alleen verwijderen als het niet aan een circuit is gekoppeld. Zorg ervoor dat het routefilter niet is gekoppeld aan een circuit voordat u het probeert te verwijderen. U kunt een routefilter verwijderen met de volgende opdracht:

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

Volgende stappen

Zie voor informatie over voorbeelden van routerconfiguratie: