你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
当 Azure 路由服务器从不同源接收到同一目标的多个路由时,它使用路由首选项设置来确定首选的路径。 使用此功能可以控制混合网络方案中的流量流,在这些方案中,有多个连接选项,例如 ExpressRoute、VPN 网关和网络虚拟设备(NVA)。
本文介绍路由首选项的工作原理、可用的配置选项以及实现路由选择策略的最佳做法。
什么是路由首选项?
路由首选项是一项功能,可用于影响当同一目标前缀存在多个路由时,Azure 路由服务器如何选择最佳路径。 这在混合网络体系结构中非常重要,你可能拥有:
- ExpressRoute 线路提供与本地网络的专用连接
- 提供备份或额外连接的站点到站点 VPN 连接
- 网络虚拟设备(如 SD-WAN 设备)提供专用路由功能
通过配置路由首选项,可以确保流量根据性能、成本或冗余的特定要求流经首选连接方法。
路由首选项的工作原理
Azure 路由服务器使用分层路由选择过程来确定每个目标的最佳路径:
路由选择层次结构
当 Azure 路由服务器收到到同一目标的多个路由时,会按以下顺序评估这些路由:
- 最长前缀匹配 (LPM):始终首选具有更具体的前缀(较长子网掩码)的路由
- 路由首选项设置:在前缀长度相等时应用
- BGP 路径属性:当其他条件相等时用作决胜条件
路由偏好选项
可以配置三个路由首选项设置之一:
| 首选项类型 | Description | 用例 | 行为 |
|---|---|---|---|
| ExpressRoute 首选项 (默认值) | 确定通过 ExpressRoute 网关学习的路由的优先级 | 如果希望专用 ExpressRoute 线路成为主路径 | 来自 ExpressRoute 的路由优先于 VPN 和 NVA 路由 |
| VPN 首选项 | 确定通过 VPN 网关和 NVA 学习的路由的优先级 | 如果希望 VPN 或 NVA 连接成为主路径 | 来自 VPN 网关和 NVA 的路由优先于 ExpressRoute 路由 |
| AS 路径首选项 | 根据边界网关协议 (BGP) AS 路径长度确定路由的优先级,而不考虑源 | 想要使用标准 BGP 最佳路径选择时 | 遵循标准 BGP 原则,优先选择AS路径较短的路由。 |
重要说明
VPN 首选项设置不区分 VPN 网关路由和 NVA 路由。 如果从这两个源中学习了相同的路由,Azure 路由服务器会选择具有最短 BGP AS 路径的路由。
配置注意事项
故障转移行为
了解路由首选项如何影响故障转移方案对于网络设计至关重要。
在 ExpressRoute 首选项方案中,主路径使用 ExpressRoute 线路,而备份路径依赖于 VPN 或 NVA 连接。 ExpressRoute 发生故障时,流量会自动切换到备份路径。 但是,当 ExpressRoute 恢复时,流量可能不会自动切换回首选路径。
一个重要的故障转移注意事项是,在发生故障后恢复 ExpressRoute 连接时,流量可能会继续使用 VPN 或 NVA 路径,而不是切换回 ExpressRoute。 为确保故障转移行为恰当,你应该:
- 配置 AS 路径前置,通过人为延长 AS 路径来降低 VPN 和 NVA 路由的优先级
- 监控路由公告,以确保 VPN/NVA 路由的 AS 路径长度比 ExpressRoute 路由更长。
- 定期测试故障转移方案,以验证流量在故障和恢复期间是否流经预期路径
路由选择示例
下表说明了不同的路由首选项设置如何影响路由选择:
| Scenario | 路线 1 | 路线 2 | 首选项设置 | 所选路由 | 原因 |
|---|---|---|---|---|---|
| 具有 ExpressRoute 首选项的多个路由 |
10.0.0.0/16,通过 ExpressRoute(AS 路径:65001) |
10.0.0.0/16 通过 VPN (AS 路径:65002) |
ExpressRoute 首选项 | ExpressRoute 路由 | ExpressRoute 首选项优先 |
| 不同的前缀长度 |
10.0.0.0/16 通过 ExpressRoute |
10.0.1.0/24 通过 VPN |
任何首选项 | 用于 10.0.1.0/24 流量的 VPN 路由 |
最长前缀匹配替代首选项 |
| AS 路径首选项 |
10.0.0.0/16 通过 ExpressRoute (AS 路径:65001 65002) |
10.0.0.0/16 通过 VPN (AS 路径:65003) |
AS 路径优先级 | VPN 路由 | 首选较短的 AS 路径长度 |
最佳做法
设计建议
规划路由首选项策略时,请选择符合网络设计目标和业务需求的首选项设置。 通过操控 AS 路径实现 AS 路径前置,确保网络转换期间故障转移行为正常并维护流量流。 定期监视路由通告,以检查 Azure 路由服务器正在学习和选择哪些路由。 持续测试故障转移方案,以验证流量在各种故障条件和恢复情况下是否流经预期路径。
配置指南
维护路由选择清晰文档,以确保网络操作和故障排除的一致性。 与本地团队协调,确保本地 BGP 配置支持路由首选项策略,并与 Azure 路由服务器设置保持一致。 在做出路由决策时,请考虑每个连接选项的性能影响,因为不同的路径可以具有不同的延迟和吞吐量特征。 通过确保路由首选项策略可以适应网络增长和其他连接要求来规划可伸缩性。
故障排除提示
使用 Azure 路由服务器监视功能验证路由学习并确认从不同源接收哪些路由。 检查 BGP 属性,包括 AS 路径长度和其他影响路由选择决策的参数。 定期测试连接,以验证流量是否流经不同目标前缀的预期路径。 监测性能指标以跟踪不同连接选项的延迟(latency)和吞吐量(throughput),帮助在潜在问题影响用户之前进行识别。