我想要使用邊界閘道協定 (BGP) 社群來影響從 AWS 到我的網路的 AWS Direct Connect 連結偏好路由路徑。
簡短說明
若要設定私有和傳輸虛擬介面,以排定 AWS 用於將流量路由至您的網路的介面的優先順序,請使用 AS\ _PATH 屬性。Direct Connect 同樣支援本機優先順序 BGP 社群標籤,以管控私有和傳輸虛擬介面上的流量路由優先順序。
**注意:**AWS 路由器會在評估 AS_PATH 屬性之前,先評估本機優先順序 BGP 社群標籤。
解決方法
套用社群標籤與前置 AS_PATH 屬性
Direct Connect 支援以下本機優先順序 BGP 社群標籤:
- 7224:7100 低優先順序
- 7224:7200 中優先順序
- 7224:7300 高優先順序
Direct Connect 會由低到高依序評估本機優先順序 BGP 社群標籤。
若要使用社群標籤與 AS_PATH 屬性,請採取以下動作:
- 對於您在 BGP 工作階段中所通告的每個首碼,套用社群標籤以顯示相關路徑在傳回流量中的優先順序。
- 當您從內部部署路由器通告到 AWS 時,請在首碼中附加額外的 AS_PATH 屬性。Direct Connect 會優先選擇 AS_PATH 屬性數量最少的路徑作為傳回流量的傳輸路徑。
例如,您有虛擬介面 A 與 B,並且向 AWS 通告首碼 10.10.10.0/24 與 10.20.20.0/24。若要讓虛擬介面 A 成為傳送至網路 10.10.10.0/24 的首選路由路徑,請在 BGP 工作階段中對首碼 10.10.10.0/24 套用較高優先順序標籤 7224:7300。若要讓虛擬介面 B 成為傳送至網路 10.20.20.0/24 的首選路由路徑,請在 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 路由器通告首碼。由於您可以使用任何路由裝置,因此請使用符合您供應商路由器的特定設定。
如需常見供應商內部部署路由器 AS_PATH 前置的詳細資訊,請參閱以下文件:
如需更多常見供應商內部部署路由器 BGP 社群設定的資訊,請參閱以下文件:
以下範例設定會在 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 通告首碼 10.0.0.0/8,並附加 BGP 社群標籤 7224:7300:
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 替換為您的 AS 編號,並將 NEIGHBOR_IP 替換為您的 BGP 對等端 IP 位址。
相關資訊
公有虛擬介面 BGP 社群
AWS Direct Connect 路由政策與 BGP 社群
如何使用 BGP 社群控制透過 AWS 公有虛擬介面與 Direct Connect 所通告與接收的路由?