BGP 路由政策總覽

本指南將概略說明 Cloud Router 邊界閘道通訊協定 (BGP) 路由政策。

您可以透過 BGP 路由政策設定規則,篩選 BGP 路由或修改 BGP 路由屬性。傳入和傳出的 BGP 路由都能套用這類政策。只要使用一般運算語言 (CEL),定義要套用至 BGP 路由的 BGP 路由政策即可。

您可以為 BGP 工作階段在 Cloud Router 上,將 BGP 路由政策套用至已學習的路徑或已通告的路徑。BGP 路由政策與政策型路徑不同,後者會將下一個中繼路由指派給以個別範例來源位址為依據的路由,而這類路由不一定會以目的地位址為依據。詳情請參閱「以政策為準的路徑」。

建議您在測試環境中使用 BGP 路由政策,在將設定導入實際工作環境前先驗證設定。

什麼是 BGP 路由政策?

BGP 路由政策定義為有順序的字詞清單。系統會依您指定的順序評估每個字詞,並在路徑符合該字詞時,加入條件和相應的動作。特定 BGP 路由政策只能套用於單一方向,也就是傳入的學習路徑或傳出的廣告路徑,但不能同時套用。不過,BGP 路由政策可套用至 Cloud Router 上的多個 BGP 對等端。

BGP 路由政策用途

您可以使用 BGP 路由政策,在 BGP 路由通告至其他 BGP 對等點或匯入 VPC 路由表之前,控制要接受、拒絕或修改哪些 BGP 路由。

以下是 BGP 路由政策的用途範例:

  • 修改最佳偏好 BGP 路徑:您可以使用 BGP 路由政策修改最佳偏好 BGP 路徑,這有助於影響流量透過網路傳輸的路徑。舉例來說,您可以使用 BGP 路由政策,藉由變更 BGP MED 屬性的值,確保系統優先採用特定對等點的 BGP 路由,而非其他 BGP 路由。

  • 篩除不必要的 BGP 路由:您可以使用 BGP 路由政策篩除不必要的學習路徑,或避免向 BGP 對等端通告特定路徑。這有助於避免轉送迴圈或傳送流量至不當路徑的路徑。舉例來說,您可以使用 BGP 路由政策篩選子網路中的前置字串。

  • 達成流量工程目標:您可以使用 BGP 路由政策達成特定流量工程目標。如要影響流量分配,請在路由的 AS-PATH 前面加上一或多個值。舉例來說,對於前置字串 192.168.2.0/24,Cloud Router 會從兩個對等端學習前置字串,但從每個對等端學習不同的 AS-PATH 值。因此,peer1 可能會提供 [1010] 的 AS-PATH 值,而 peer2 可能會提供 [2020] 的 AS-PATH 值。透過 BGP 路由政策,您可以選擇在 AS-PATH 值前方加入一或多個值。

BGP 路由政策的套用方式

您可以將 BGP 路由政策套用至 Cloud Router 上的 BGP 設定。每個 BGP 對等端都會套用零或多個路由匯入和匯出政策。匯入路由政策適用於傳入路由,匯出路由政策則適用於傳出路由。

下圖顯示路徑匯入政策 (針對內部路徑) 和路徑匯出政策 (針對外部路徑):

BGP 匯入政策和匯出政策方向。
BGP 匯入政策和匯出政策方向 (按一下可放大)。

以下說明 Cloud Router 套用 BGP 路由政策時遵循的一般規則:

  • BGP 路由政策會依照列出的順序進行評估。

  • 系統會依指定的優先順序評估各 BGP 路由政策中的條件。

  • 條款可修改 BGP 路由。後續條件可以修改前一個條件建立的 BGP 路由。

  • 當 BGP 路徑遭到接受或捨棄時,評估作業就會結束。如果所有政策和條款都已評估,且路由未遭到捨棄,BGP 路由就會接受。

  • 在單一 BGP 路由政策的執行作業中,系統不會對路徑評估條件兩次。

BGP 路由政策評估作業預設為失敗時開放。換句話說,BGP 路由政策評估期間會接受未明確捨棄的路由。您無法直接變更這項行為,但可以建立「捨棄所有」政策,套用至最後一個對等連線,實際上就是建立失敗關閉 BGP 路由政策。

下圖說明如何評估路徑的套用政策組合:

BGP 路由政策處理作業。
BGP 路由政策處理作業 (按一下可放大)。

BGP 社群和 Cloud Router

社群值是 32 位元欄位,可分為兩個 16 位元區段。依慣例,值的前 16 位元會編碼社群來源網路的自治系統 (AS) 編號,但 Cloud Router 不會強制執行這項慣例。值的第二個 16 位元會編碼由來源 AS 指派的專屬號碼。

BGP 路由政策可比對標準 BGP 社群屬性並採取行動。BGP 路由政策無法比對或修改擴充社群屬性。

Cloud Router 路由選取程序不會使用前置字串的 BGP 社群屬性。例如,它不會遵循 NO_EXPORTNO_ADVERTISE BGP 社群。

匯入 BGP 路徑政策後,Cloud Router 會從已學習的路徑中捨棄 BGP 社群,這表示 Cloud Router 不會重新宣傳社群,也就是說,Cloud Router 會將社群視為非傳遞屬性。BGP 社群只能用於影響 Cloud Router 入站比對政策。您可以在宣傳的路徑中新增、移除或取代 BGP 社群,藉此影響對等路由器的運作方式。

由於 Cloud Router 無法辨識已知社群,因此您必須使用 BGP 已知社群的文字值,例如 65535:65281 代表 NO_EXPORT,或 65535:65282 代表 NO_ADVERTISE

BGP 路由政策資源之間的關係

每個 Cloud Router 都會維護自己的 BGP 對等點和 BGP 路由政策清單。屬於特定 Cloud Router 資源的 BGP 對等點清單可依名稱參照 BGP 路由政策。

只要父項雲端路由器存在,您就可以建立、修改及刪除 BGP 路徑政策。

與其他 Cloud Router 功能互動

以下各節說明 BGP 路由政策與其他 Cloud Router 功能的互動方式。

自訂公告路徑
匯出 BGP 路由政策可在自訂路徑通告前,將其捨棄或修改,再將路徑通告給 BGP 對等點。BGP 路由政策無法比對或修改自訂接收路徑。
前置字元限制

Cloud Router 接受的節點前置字元上限為 5000。如果對等端宣告的路由前置字串超過 5000 個,Cloud Router 會重設 BGP 工作階段。

前置字限制會在套用 BGP 路由政策之前套用至傳入路由,因此使用 BGP 路由政策不會改變這項行為。

子網路

匯出 BGP 路由政策可在將 虛擬私有雲子網路子網路路徑通告給 BGP 對等點之前,篩選或修改這些路徑。

大眾運輸路線

BGP 路由政策可修改轉接路線。

Cloud Router 不會遵循 NO_EXPORTNO_ADVERTISED BGP 社群的行為。

後續步驟