Configurar filtros de rota para emparelhamento da Microsoft usando o PowerShell

Os filtros de rota são uma forma de consumir um subconjunto de serviços suportados através do peering da Microsoft. As etapas neste artigo ajudam a configurar e gerenciar filtros de rota para circuitos de Rota Expressa.

Os serviços do Microsoft 365, como o Exchange Online, o SharePoint Online e o Skype for Business, e os serviços públicos do Azure, como armazenamento e Banco de Dados SQL, podem ser acessados por meio do emparelhamento da Microsoft. Os serviços públicos do Azure podem ser selecionados por região e não podem ser definidos por serviço público.

Quando o peering da Microsoft é configurado num circuito do ExpressRoute, todos os prefixos relacionados com estes serviços são anunciados através das sessões BGP estabelecidas. Está anexado um valor da comunidade BGP a cada prefixo para identificar o serviço oferecido através do prefixo. Para obter uma lista dos valores da comunidade BGP e dos serviços que mapeiam, veja Comunidades BGP.

A conectividade com todos os serviços do Azure e do Microsoft 365 faz com que um grande número de prefixos seja anunciado por meio do BGP. O grande número de prefixos aumenta significativamente o tamanho das tabelas de rotas mantidas pelos roteadores dentro da sua rede. Se você planeja consumir apenas um subconjunto de serviços oferecidos por meio do emparelhamento da Microsoft, poderá reduzir o tamanho de suas tabelas de rotas de duas maneiras. Pode:

  • Filtre prefixos indesejados aplicando filtros de rota em comunidades BGP. A filtragem de rotas é uma prática de rede padrão e é comumente usada em muitas redes.

  • Defina filtros de rota e aplique-os ao seu circuito de Rota Expressa. Um filtro de rota é um novo recurso que permite selecionar a lista de serviços que você planeja consumir por meio do emparelhamento da Microsoft. Os roteadores de Rota Expressa enviam apenas a lista de prefixos que pertencem aos serviços identificados no filtro de rota.

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

Sobre filtros de rota

Quando o emparelhamento da Microsoft é configurado em seu circuito de Rota Expressa, os roteadores do Microsoft Edge estabelecem um par de sessões BGP com seus roteadores de Borda por meio de seu provedor de conectividade. Não são anunciadas rotas à sua rede. Para ativar anúncios de rota para a sua rede, tem de associar um filtro de rota.

Um filtro de rota permite-lhe identificar os serviços que deseja consumir através do peering da Microsoft do circuito do ExpressRoute. É essencialmente uma lista permitida de todos os valores da comunidade BGP. Assim que um recurso de filtro de rota é definido e anexado a um circuito ExpressRoute, todos os prefixos que mapeiam para os valores da comunidade BGP são anunciados à sua rede.

Para anexar filtros de rota com os serviços do Microsoft 365, tem de ter autorização para consumir serviços do Microsoft 365 através do ExpressRoute. Se não estiver autorizado a consumir serviços do Microsoft 365 através do ExpressRoute, a operação para anexar filtros de rota falha. Para obter mais informações sobre o processo de autorização, veja Azure ExpressRoute para Microsoft 365.

Importante

O emparelhamento da Microsoft de circuitos de Rota Expressa configurados antes de 1º de agosto de 2017 terá todos os prefixos de serviço do Microsoft Office anunciados por meio do emparelhamento da Microsoft, mesmo que os filtros de rota não estejam definidos. Relativamente ao peering da Microsoft dos circuitos do ExpressRoute configurados a 1 de agosto de 2017 ou depois, não será anunciado nenhum prefixo enquanto não for anexado um filtro de rota ao circuito.

Pré-requisitos

  • Revise os pré-requisitos e fluxos de trabalho antes de iniciar a configuração.

  • Você deve ter um circuito de Rota Expressa ativo que tenha o emparelhamento da Microsoft provisionado. Você pode usar as seguintes instruções para realizar essas tarefas:

    • Crie um circuito de Rota Expressa e tenha o circuito ativado pelo seu provedor de conectividade antes de continuar. O circuito de Rota Expressa deve estar em um estado provisionado e habilitado.
    • Crie emparelhamento da Microsoft se você gerenciar a sessão BGP diretamente. Ou peça ao seu provedor de conectividade que provisione o emparelhamento da Microsoft para seu circuito.

Azure Cloud Shell

O Azure aloja o Azure Cloud Shell, um ambiente de shell interativo que pode utilizar através do seu browser. Pode utilizar o Bash ou o PowerShell com o Cloud Shell para trabalhar com os serviços do Azure. Você pode usar os comandos pré-instalados do Cloud Shell para executar o código neste artigo, sem precisar instalar nada em seu ambiente local.

Para iniciar o Azure Cloud Shell:

Opção Exemplo/Ligação
Selecione Experimentar no canto superior direito de um código ou bloco de comandos. Selecionar Experimentar não copia automaticamente o código ou comando para o Cloud Shell. Screenshot that shows an example of Try It for Azure Cloud Shell.
Aceda a https://shell.azure.com ou selecione o botão Iniciar Cloud Shell para abrir o Cloud Shell no browser. Button to launch Azure Cloud Shell.
Selecione o botão Cloud Shell na barra de menus, na parte direita do portal do Azure. Screenshot that shows the Cloud Shell button in the Azure portal

Para usar o Azure Cloud Shell:

  1. Inicie o Cloud Shell.

  2. Selecione o botão Copiar em um bloco de código (ou bloco de comando) para copiar o código ou comando.

  3. Cole o código ou comando na sessão do Cloud Shell selecionando Ctrl+Shift+V no Windows e Linux ou selecionando Cmd+Shift+V no macOS.

  4. Selecione Enter para executar o código ou comando.

Inicie sessão na sua conta do Azure e selecione a sua subscrição

Se estiver a utilizar o Azure Cloud Shell, inicie sessão na sua conta do Azure automaticamente depois de clicar em 'Experimentar'. Para entrar localmente, abra o console do PowerShell com privilégios elevados e execute o cmdlet para se conectar.

Connect-AzAccount

Se tiver mais do que uma subscrição, obtenha uma lista das suas subscrições do Azure.

Get-AzSubscription

Especifique a subscrição que pretende utilizar.

Select-AzSubscription -SubscriptionName "Name of subscription"

Obter uma lista de prefixos e valores da comunidade BGP

  1. Use o cmdlet a seguir para obter a lista de valores e prefixos da comunidade BGP associados a serviços acessíveis por meio do emparelhamento da Microsoft:

    Get-AzBgpServiceCommunity
    
  2. Faça uma lista dos valores da comunidade BGP que você deseja usar no filtro de rota.

Criar um filtro de rota e uma regra de filtro

Um filtro de rota pode ter apenas uma regra, e a regra deve ser do tipo Allow. Esta regra pode ter uma lista de valores da comunidade BGP associados a ela. O comando az network route-filter create cria apenas um recurso de filtro de rota. Depois de criar o recurso, você deve criar uma regra e anexá-la ao objeto de filtro de rota.

  1. Para criar um recurso de filtro de rota, execute o seguinte comando:

    New-AzRouteFilter -Name "MyRouteFilter" -ResourceGroupName "MyResourceGroup" -Location "West US"
    
  2. Para criar uma regra de filtro de rota, execute o seguinte comando:

    $rule = New-AzRouteFilterRuleConfig -Name "Allow-EXO-D365" -Access Allow -RouteFilterRuleType Community -CommunityList 12076:5010,12076:5040
    
  3. Execute o seguinte comando para adicionar a regra de filtro ao filtro de rota:

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

Anexar o filtro de rota a um circuito de Rota Expressa

Execute o seguinte comando para anexar o filtro de rota ao circuito ExpressRoute, supondo que você tenha apenas emparelhamento da Microsoft:

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

Tarefas comuns

Para obter as propriedades de um filtro de rota

Para obter as propriedades de um filtro de rota, use as seguintes etapas:

  1. Execute o seguinte comando para obter o recurso de filtro de rota:

    $routefilter = Get-AzRouteFilter -Name "MyRouteFilter" -ResourceGroupName "MyResourceGroup"
    
  2. Obtenha as regras de filtro de rota para o recurso de filtro de rota executando o seguinte comando:

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

Para atualizar as propriedades de um filtro de rota

Se o filtro de rota já estiver conectado a um circuito, as atualizações da lista da comunidade BGP propagarão automaticamente as alterações de anúncio de prefixo através da sessão BGP estabelecida. Você pode atualizar a lista da comunidade BGP do seu filtro de rota usando o seguinte comando:

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

Para desanexar um filtro de rota de um circuito de Rota Expressa

Depois que um filtro de rota é separado do circuito ExpressRoute, nenhum prefixo é anunciado através da sessão BGP. Você pode desanexar um filtro de rota de um circuito de Rota Expressa usando o seguinte comando:

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

Clean up resources (Limpar recursos)

Você só pode excluir um filtro de rota se ele não estiver conectado a nenhum circuito. Certifique-se de que o filtro de rota não está ligado a nenhum circuito antes de tentar eliminá-lo. Você pode excluir um filtro de rota usando o seguinte comando:

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

Passos Seguintes

Para obter informações sobre exemplos de configuração de roteador, consulte: