配置用于 Microsoft 对等互连的路由筛选器:Azure CLI

路由筛选器是通过 Microsoft 对等互连使用部分受支持服务的一种方法。 本文中的步骤可帮助配置和管理 ExpressRoute 线路的路由筛选器。

与所有 Azure 服务的连接会导致大量前缀通过 BGP 进行播发。 大量前缀会显著增加网络中路由器所维护的路由表的大小。 如果打算仅使用通过 Microsoft 对等互连提供的一部分服务,可通过两种方式减少路由表大小。 方法:

  • 通过在 BGP 团体上应用路由筛选器,筛选出不需要的前缀。 路由筛选是标准的网络做法,通常在多个网络中使用。

  • 定义路由筛选器,并将其应用于 ExpressRoute 线路。 路由筛选器是一种新资源,可让你选择计划通过 Microsoft 对等互连使用的服务列表。 ExpressRoute 路由器仅发送属于路由筛选器中所标识服务的前缀列表。

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

关于路由筛选器

在 ExpressRoute 线路上配置 Microsoft 对等互连时,Microsoft 边缘路由器会通过连接提供商的边缘路由器建立一对 BGP 会话。 不会将任何路由播发到网络。 若要能够将路由播发到网络,必须关联路由筛选器。

使用路由筛选器可标识要通过 ExpressRoute 线路的 Microsoft 对等互连使用的服务。 它实质上是所有 BGP 社区值的允许列表。 定义路由筛选器资源并将其附加到 ExpressRoute 线路后,映射到 BGP 社区值的所有前缀均会播发到网络。

重要

在 2017 年 8 月 1 日之前配置的 ExpressRoute 线路的 Microsoft 对等互连会通过 Microsoft 对等互连播发所有 Microsoft Office 服务前缀,即使未定义路由筛选器。 在 2017 年 8 月 1 日或之后配置的 ExpressRoute 线路的 Microsoft 对等互连的任何前缀只有在路由筛选器附加到线路之后才会播发。

先决条件

若要通过 Microsoft 对等互连成功连接服务,必须完成以下配置步骤:

  • 必须具备预配了 Microsoft 对等互连的活动 ExpressRoute 线路。 可使用以下说明完成这些任务:
    • 继续之前,请创建 ExpressRoute 线路,并让连接服务提供商启用该线路。 ExpressRoute 线路必须处于已预配且已启用状态。
    • 如果直接管理 BGP 会话,请创建 Microsoft 对等互连。 或者,让连接提供商为线路预配 Microsoft 对等互连。

如果选择在本地安装并使用 CLI,本教程要求使用 Azure CLI 2.0.28 或更高版本。 若要查找版本,请运行 az --version。 如需进行安装或升级,请参阅安装 Azure CLI

登录到 Azure 帐户,然后选择订阅

要开始配置,请登录到 Azure 帐户。 使用下面的示例来帮助你连接:

注意

在可以在由世纪互联运营的 Microsoft Azure 中使用 Azure CLI 之前,请先运行 az cloud set -n AzureChinaCloud 来更改云环境。 若要切换回 Azure 公有云,请再次运行 az cloud set -n AzureCloud

az cloud set -n AzureChinaCloud
az login
# az cloud set -n AzureCloud   //means return to Public Azure.

检查该帐户的订阅。

az account list

选择要为其创建 ExpressRoute 线路的订阅。

az account set --subscription "<subscription ID>"

获取前缀和 BGP 团体值的列表

  1. 使用以下 cmdlet 获取与通过 Microsoft 对等互连可访问的服务相关联的 BGP 社区值和前缀列表:

    az network route-filter rule list-service-communities
    
  2. 列出要在路由筛选器中使用的 BGP 团体值列表。

创建路由筛选器和筛选器规则

1 个路由筛选器只能有 1 个规则,并且规则类型必须是“允许”。 此规则可以有与之关联的 BGP 团体值列表。 命令 az network route-filter create 只创建路由筛选器资源。 创建资源后,必须创建规则并将其附加到路由筛选器对象。

  1. 若要创建路由筛选器资源,请运行以下命令:

    az network route-filter create -n MyRouteFilter -g MyResourceGroup
    
  2. 若要创建路由筛选器规则,请运行以下命令:

    az network route-filter rule create --filter-name MyRouteFilter -n CRM --communities 12076:51035 --access Allow -g MyResourceGroup
    

将路由筛选器附加到 ExpressRoute 线路

运行以下命令将路由筛选器附加到 ExpressRoute 线路:

az network express-route peering update --circuit-name MyCircuit -g ExpressRouteResourceGroupName --name MicrosoftPeering --route-filter MyRouteFilter

常见任务

获取路由筛选器的属性

若要获取路由筛选器的属性,请使用以下命令:

az network route-filter show -g ExpressRouteResourceGroupName --name MyRouteFilter 

更新路由筛选器的属性

如果路由筛选器已附加到线路,则 BGP 社区列表的更新会通过建立的 BGP 会话自动传播前缀播发更改。 可使用以下命令更新路由筛选器的 BGP 团体列表:

az network route-filter rule update --filter-name MyRouteFilter -n CRM -g ExpressRouteResourceGroupName --add communities '12076:51035' --add communities '12076:51034'

从 ExpressRoute 线路分离路由筛选器

从 ExpressRoute 线路分离路由筛选器后,BGP 会话不会播发任何前缀。 可使用以下命令从 ExpressRoute 线路分离路由筛选器:

az network express-route peering update --circuit-name MyCircuit -g ExpressRouteResourceGroupName --name MicrosoftPeering --remove routeFilter

清理资源

只有在路由筛选器未附加到任何线路时,才能将其删除。 尝试删除路由筛选器之前,请确保其未附加到任何线路。 可使用以下命令删除路由筛选器:

az network route-filter delete -n MyRouteFilter -g MyResourceGroup

后续步骤

若要了解路由器配置示例,请参阅: