你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

虚拟中心路由首选项

虚拟 WAN 虚拟中心使用站点到站点 (S2S) VPN 网关、ExpressRoute (ER) 网关、点到站点 (P2S) 网关以及 SD-WAN 网络虚拟设备 (NVA) 等连接网关连接到虚拟网络 (VNet) 和本地。 虚拟中心路由器提供中央路由管理,并使用路由传播、路由关联和自定义路由表支持高级路由场景。

虚拟中心路由器使用内置路由选择算法做出路由决策。 为了影响虚拟中心路由器到本地的路由决策,我们现在提供一项新的虚拟 WAN 中心功能,称为中心路由首选项 (HRP)。 当虚拟中心路由器针对本地的目标路由前缀通过 S2S VPN、ER 和 SD-WAN NVA 连接获知多条路由时,虚拟中心路由器的路由选择算法会根据中心路由首选项配置进行调整,并选择最佳路由。 有关步骤,请参阅如何配置虚拟中心路由首选项

虚拟中心的路由选择算法

本部分介绍虚拟中心的路由选择算法以及由 HRP 提供的控件。 如果虚拟中心有多个到本地目标前缀的路由,则按以下首选项顺序选择最佳一个或多个路由:

  1. 选择具有最长前缀匹配 (LPM) 的路由。
  2. 首选从虚拟中心路由表获知的静态路由,而不是 BGP 路由。
  3. 根据虚拟中心路由首选项配置选择最佳路径。

你可以选择三种可能的虚拟中心路由首选项配置之一:ExpressRoute、VPN 或 AS 路径。 各种配置略有不同。 路由规则在所选配置中按顺序处理,直到匹配为止。

  • ExpressRoute(这是默认设置)

    1. 首选来自本地虚拟中心连接的路由,而不是从远程虚拟中心获知的路由。

    2. 如果同时存在来自 ExpressRoute 的路由和来自站点到站点 VPN 连接的路由:

      • 如果所有路由都是虚拟中心本地路由,则会选择从 ExpressRoute 连接中获知的路由,因为虚拟中心路由首选项设置为 ExpressRoute。
      • 如果所有路由都经过远程中心,则站点到站点 VPN 将优先于 ExpressRoute。
    3. 首选 BGP AS-Path 长度最短的路由。

  • VPN

    1. 首选来自本地虚拟中心连接的路由,而不是从远程虚拟中心获知的路由。
    2. 如果同时存在来自 ExpressRoute 的路由和来自站点到站点 VPN 连接的路由,则选择站点到站点 VPN 路由。
    3. 首选 BGP AS-Path 长度最短的路由。
  • AS 路径

    1. 首选 BGP AS-Path 长度最短的路由,不用考虑路由播发的来源。 注意:在具有多个远程虚拟中心的 vWAN 中,如果远程 ExpressRoute 路由与远程站点到站点 VPN 路由之间存在关联,则首选使用远程站点到站点 VPN 路由。

    2. 首选来自本地虚拟中心连接的路由,而不是从远程虚拟中心获知的路由。

    3. 如果同时存在来自 ExpressRoute 的路由和来自站点到站点 VPN 连接的路由:

      • 如果所有路由都是虚拟中心本地路由,则选择来自 ExpressRoute 连接的路由。
      • 如果所有路由都经过远程虚拟中心,则选择来自站点到站点 VPN 连接的路由。

注意事项:

  • 当虚拟 WAN 方案中有多个虚拟中心时,虚拟中心会使用上述路由选择算法选择最佳路由,然后将这些路由播发到虚拟 WAN 中的其他虚拟中心。
  • 对于一组给定的目标路由前缀,如果首选 ExpressRoute 路由,并且 ExpressRoute 连接随后断开,则对于发往相同路由前缀的流量,则首选来自 S2S VPN 或 SD-WAN NVA 连接的路由。 恢复 ExpressRoute 连接后,发往这些路由前缀的流量可能继续首选 S2S VPN 或 SD-WAN NVA 连接。 要防止发生这种情况,需要配置本地设备,以对播发到 S2S VPN 网关和 SD-WAN NVA 的路由使用 AS-Path 前置,因为你需要确保 VPN/NVA 路由的 AS-Path 长度超过 ExpressRoute 路由。
  • 处理来自远程中心的路由时,从具有路由意向专用路由策略的中心学习到的路由总是优先于没有路由意向的中心的路由。 这是为了确保客户流量在安全路径可用时采用安全路径。 为了避免非对称路由,请对虚拟 WAN 中的所有中心启用路由意向。
  • 当虚拟 WAN 中心将路由播发到另一个虚拟 WAN 中心时,此路由会将 ASN 65520-65520 预置到其 AS-Path。 有关虚拟 WAN 中的路由的更多详细信息,请参阅虚拟 WAN 路由深入探讨以及查看虚拟中心有效路由

路由方案

当多个本地将路由播发到同一目标前缀时(在使用以下任何设置的客户虚拟 WAN 方案中可能发生),虚拟 WAN 中心路由首选项是有益的。

  • 将 ER 连接作为主要连接并将 VPN 连接用作备份连接的虚拟 WAN 中心。
  • 虚拟 WAN 具有通向多个本地的连接,客户对一项服务使用两个本地站点(分别用作主动站点和备用站点),该服务在这两个站点中使用相同的 IP 地址范围进行部署。
  • 虚拟 WAN 同时具有 VPN 和 ER 连接,客户通过控制本地的路由播发跨各个连接分发服务。

下面的示例是一个假设的虚拟 WAN 部署,其中包含上述多个方案。 我们将使用它来演示虚拟中心的路由选择。

设置的简要概述:

  • 每个本地站点都使用 S2S VPN、ER 线路或 SD-WAN NVA 连接到一个或多个虚拟中心 Hub_1 或 Hub_2。

  • 每个本地站点使用的 ASN 及其播发的路由前缀都列在关系图中。 请注意,多个路由前缀对应多条路由。

    中心路由首选项方案的示例图。

假设有流量从连接到 Hub_1 的虚拟网络 VNET1 流向由本地播发的各种目标路由前缀。 下面的表描述了这些流为 Hub_1 和 Hub_2 上的虚拟 WAN 中心路由首选项的不同配置采用的路径。 为了便于理解,已在示意图中标记出并在表中引用了这些路径。

仅本地路由可用时:

流目标路由前缀 Hub_1 的 HRP Hub_2 的 HRP 流使用的路径 所有可能的路径 说明
10.61.1.5 AS 路径 任何设置 4 1、2、3、4 路径 1 和 4 的 AS 路径最短,但由于本地路由中 ER 优先于 VPN,因此选择路径 4。
10.61.1.5 VPN 任何设置 1 1、2、3、4 由于 HRP 设置,VPN 路由优先于 ER,因此首选路径 1 和 2,但路径 1 的 AS 路径更短。
10.61.1.5 ER 任何设置 4 1、2、3、4 首选 ER 路由 3 和 4,但路径 4 的 AS 路径更短。

仅远程路由可用时:

流目标路由前缀 Hub_1 的 HRP Hub_2 的 HRP 流使用的路径 所有可能的路径 说明
10.62.1.5 任何设置 AS 路径或 ER 跨 9 和 10 的 ECMP 7、8、9、10、11 所有可用路径都是远程路径,并且 AS 路径相同,因此 Hub_2 选择和播发 ER 路径 9 和 10。 Hub_1 的 HRP 设置没有影响。
10.62.1.5 任何设置 VPN 跨 7 和 8 的 ECMP 7、8、9、10、11 Hub_2 只会播发最佳路由 7 和 8,并且它们是 Hub_1 仅有的选择,因此 Hub_1 的 HRP 设置没有影响。

本地路由和远程路由都可用时:

流目标路由前缀 Hub_1 的 HRP Hub_2 的 HRP 流使用的路径 所有可能的路径 说明
10.50.2.5 任何设置 任何设置 1 1、2、3、4、7、8、9、10、11 由于 LPM,Hub_2 仅播发 7。 由于 LPM 以及 1 是本地路由,因此 Hub_1 选择 1。
10.50.1.5 AS 路径或 ER 任何设置 4 1、2、3、4、7、8、9、10、11 Hub_2 将根据其 HRP 设置播发不同的路由,但 Hub_1会选择 4,因为它是本地的 ER 路由,其 AS 路径最短。
10.50.1.5 VPN 任何设置 1 1、2、3、4、7、8、9、10、11 Hub_2 会根据其 HRP 设置播发不同的路由,但因为 1 是本地 VPN 路由,其 AS 路径最短,所以 Hub_1 将选择 1。
10.55.2.5 AS 路径 AS 路径或 ER 9 2、3、8、9 Hub_2 将只播发 9,虽然 8 和 9 的 AS 路径相同,但 9 是 ER 路由。 Hub_1 在 2、3 和 9 路由中选择 9,因为其 AS 路径最短。
10.55.2.5 AS 路径 VPN 8 2、3、8、9 Hub_2 将只播发 8,虽然 8 和 9 的 AS 路径相同,但 8 是 VPN 路由。 Hub_1 在 2、3 和 8 路由中选择 8,因为其 AS 路径最短。
10.55.2.5 ER 任何设置 3 2、3、8、9 Hub_2 会根据其 HRP 设置播发不同的路由,但因为 3 是本地和 ER 路由,所以 Hub_1 将选择 3。
10.55.2.5 VPN 任何设置 2 2、3、8、9 Hub_2 会根据其 HRP 设置播发不同的路由,但因为 2 是本地和 VPN 路由,所以 Hub_1 将选择 2。

要点:

  • 若要在虚拟中心首选远程路由而不是本地路由,请将其中心路由首选项设置为 AS 路径,并增加本地路由的 AS 路径长度。

后续步骤