如何使用 BGP 社区影响从 AWS 到我的网络的 Direct Connect 链接上的首选路由路径?

2 分钟阅读
0

我想使用边界网关协议(BGP)社区来影响从 AWS 到我的网络的 AWS Direct Connect 链接上的首选路由路径。

简短描述

要配置专用和传输虚拟接口,以确定 AWS 将流量路由到您网络采用的接口优先级,请使用 AS_PATH 属性。Direct Connect 还支持本地优先级 BGP 社区标签,以控制专用和传输虚拟接口上流量的路由优先级。

**注意:**在使用 AS_PATH 属性之前评估本地优先级 BGP 社区标签。

解决方法

社区标签

Direct Connect 支持以下本地优先级 BGP 社区:

  • 7224:7100 低优先级
  • 7224:7200 中等优先级
  • 7224:7300 高优先级

Direct Connect 按优先级从低到高的顺序评估本地优先级 BGP 社区标签。您可以为您通过 BGP 会话播发的每个前缀,添加一个社区标签,以指明返回流量所使用的关联路径的优先级。同样,当您从本地向 AWS 播发时,可以给前缀预置其他 AS_PATH 属性。Direct Connect 会为返回流量优先选择 AS_PATH 属性中 AS 号最少的路径。

以下场景是一个示例用例:

  • 您有两个虚拟接口 A 和 B,并向 AWS 播发前缀 10.10.10.0/24 和 10.20.20.0/24。
  • 您希望将虚拟接口 A 作为网络 10.10.10.0/24 流量的首选接口。
  • 您希望将虚拟接口 B 作为网络 10.20.20.0/24 流量的首选接口。

在这种情况下,您可以使用本地优先级社区标签:

  • 在虚拟接口 A 的 BGP 会话的前缀 10.10.10.0/24 上添加更高优先级标签 7224:7300。
  • 在虚拟接口 B 的 BGP 会话的前缀 10.20.20.0/24 上添加更高优先级标签 7224:7300。

注意:

  • 对于私有虚拟接口,如果您不使用 BGP 社区标签来指定本地优先级,则出站路由行为默认为基于 AWS 区域。在这种情况下,行为基于 Direct Connect 位置与起始区域的相对距离。如果花费的相对距离不相等,则自治系统 (AS) 预置无法影响路由行为。Direct Connect 会评估在 AS_PATH 预置之前花费的相对距离最短的路径。
  • 要对多个 AWS Direct Connect 连接之间的流量进行负载均衡,请为各个连接的前缀添加相同的社区标签。

配置 AS_PATH 和 BGP 社区属性

您必须在本地路由器上配置 AS_PATH 预置和 BGP 社区标签。从此路由器向 Direct Connect 路由器播发这些前缀。由于您可以使用任何路由设备来执行此任务,因此必须参考您的供应商的路由器的配置。以下是常用的本地路由器供应商的外部文档:

以下配置示例为在 Cisco 路由器上为前缀 10.0.0.0/8 预置 AS_PATH,然后向 AWS 播发:

Router(config)#access-list 10 permit 10.0.0.0 0.255.255.255
Router(config)#route-map cisco permit 10
Router(config-route-map)#match ip address 10
Router(config-route-map)#set as-path prepend 650014 650014
Router(config-route-map)#exit
Router(config)#route-map cisco permit 20
Router(config-route-map)#exit
Router(config)#router bgp LOCAL\_AS
Router(config-router)#neighbor NEIGHBOR\_IP route-map cisco out
Router(config-router)#end

以下配置示例为从 Cisco 路由器向 AWS 播发添加 BGP 社区标签 7224:7300 的前缀 10.0.0.0/8:

Router(config)#access-list 10 permit 10.0.0.0 0.255.255.255  
Router(config)#route-map cisco permit 10  
Router(config-route-map)#match ip address 10  
Router(config-route-map)#set community 7224:7300  
Router(config-route-map)#exit  
Router(config)#route-map cisco permit 20  
Router(config-route-map)#exit  
Router(config)#router bgp LOCAL\_AS  
Router(config-router)#neighbor NEIGHBOR\_IP send-community  
Router(config-router)#neighbor NEIGHBOR\_IP route-map cisco out  
Router(config-router)#end

**注意:**在这些示例中,将 LOCAL_AS 和 NEIGHBOR_IP 替换为您的值。

相关信息

公共虚拟接口 BGP 社区

路由策略和 BGP 社区

如何使用 BGP 社区控制通过 Direct Connect 经 AWS 公共虚拟接口播发和接收的路由?

AWS 官方
AWS 官方已更新 1 年前