創建策略路由后,VPN網關實例將基于流量的源IP地址和目的IP地址匹配策略路由,然后根據流量匹配到的策略路由轉發流量。
前提條件
配置策略路由前,VPN網關實例下需已創建了IPsec連接。具體操作,請參見創建和管理IPsec連接(單隧道模式)或創建和管理IPsec連接(雙隧道模式)。
使用限制
不支持添加目標網段為0.0.0.0/0的策略路由。
請勿添加目標網段為100.64.0.0/10、100.64.0.0/10下的子網段或者包含100.64.0.0/10網段的策略路由,該類策略路由會導致控制臺無法顯示IPsec連接的狀態或者導致IPsec連接協商失敗。
策略路由的優先級高于目的路由以及BGP路由。
策略路由匹配原則
當前新創建的VPN網關實例支持為策略路由配置策略優先級。如果您已經購買的VPN網關實例不支持為策略路由配置策略優先級,關于策略路由的匹配規則請參見策略路由匹配規則(不包含策略優先級)。
推薦您對VPN網關實例進行升級,升級后的VPN網關實例默認支持為策略路由配置策略優先級。具體操作,請參見升級VPN網關。
策略路由匹配規則(包含策略優先級)
VPN網關在轉發流量時,按照以下規則為流量匹配策略路由:
系統默認按照策略路由的策略優先級從高到低(策略優先級數字越小,優先級越高)逐條匹配策略路由,然后按照匹配到策略路由轉發流量。
如果VPN網關實例配置了主備策略路由,僅生效的策略路由參與匹配過程,不生效的策略路由不會參與匹配過程。主備策略路由生效規則說明如下:
如果系統檢測到主策略路由關聯的IPsec連接是連通的(IPsec連接協商成功且健康檢查正常),則主策略路由生效,備策略路由不生效。
如果系統檢測到主策略路由關聯的IPsec連接不通(IPsec連接協商失敗或者IPsec連接協商成功但健康檢查異常)但備策略路由關聯的IPsec連接是連通的,則備策略路由生效,主策略路由不生效。
如果系統檢測到主策略路由和備策略路由關聯的IPsec連接均不通,則系統默認主策略路由生效,備策略路由不生效。
如果流量匹配到了多條策略優先級相同的策略路由,則系統會按照策略路由的順序逐條匹配路由,一旦能夠匹配到策略路由,立即按照當前策略路由轉發流量。
策略路由的順序由策略路由被下發至系統的時間決定。通常是先配置的策略路由被優先下發至系統,但當前情況無法完全保證,因此有可能存在后配置的策略路由被優先下發至系統,造成后配置的策略路由的優先級高于先配置的策略路由的優先級。
策略路由配置建議
為確保流量按照您期望的路徑進行轉發,在配置策略路由時,建議您為每條策略路由配置不同的策略優先級以保證流量僅可匹配到一條策略路由。
如果VPN網關實例需要配置主備策略路由,則主備策略路由建議配置相同的策略優先級。
策略路由匹配規則示例
如上圖所示,本地IDC_1通過IPsec連接1和VPC_1互通,本地IDC_2通過IPsec連接2和VPC_1互通。本地IDC_1待互通網段為192.168.1.0/24和192.168.2.0/24,本地IDC_2待互通網段為192.168.5.0/24,VPC_1待互通網段為172.16.0.0/16。
在配置策略路由時,您首先配置了VPC_1去往本地IDC_2的路由,然后將VPC_1去往本地IDC_1的路由的目標網段聚合為192.168.0.0/21進行配置,兩條策略路由的策略優先級相同。配置完成后,策略路由并未按照您的配置順序被下發至系統,導致策略路由表各策略路由條目的順序發生了變化,如下表所示。
策略路由順序 | 策略路由的策略優先級 | 策略路由被下發至系統的時間 | 目標網段 | 源網段 | 下一跳 |
1 | 10 | 2022-12-01:12:01:01 | 192.168.0.0/21 | 172.16.0.0/16 | IPsec連接1 |
2 | 10 | 2022-12-01:12:01:02 | 192.168.5.0/24 | 172.16.0.0/16 | IPsec連接2 |
上表中“策略路由被下發至系統的時間”由系統后臺自動記錄,在VPN網關管理控制臺并不顯示,此處僅作示例使用。
由于兩條策略路由的策略優先級相同,VPN網關在轉發VPC_1去往本地IDC_2的流量時,會按照策略路由的順序逐條匹配路由,經系統分析VPC_1去往本地IDC_2的流量可以匹配上順序為1的策略路由,則VPC_1去往本地IDC_2的流量會通過IPsec連接1被轉發至本地IDC_1中。
在上述場景中策略路由被下發至系統的時間不可控,導致策略路由未按照期望的順序進行排列,進而導致流量未按照期望的路徑進行轉發。為了避免上述現象,在配置策略路由時,建議您為策略路由配置不同的策略優先級,以確保流量僅可匹配到一條策略路由,不受策略路由順序的影響。
在本示例中,建議您配置如下表所示的策略路由,雖然順序為1的策略路由被先下發至系統,但是順序為1的策略路由的策略優先級較低,VPN網關在轉發VPC_1去往本地IDC_2的流量時,流量會優先匹配到順序為2的策略路由,流量會按照期望的路徑被轉發至本地IDC_2。
策略路由順序 | 策略路由的策略優先級 | 策略路由被下發至系統的時間 | 目標網段 | 源網段 | 下一跳 |
1 | 20 | 2022-12-01:12:01:01 | 192.168.0.0/21 | 172.16.0.0/16 | IPsec連接1 |
2 | 10 | 2022-12-01:12:01:02 | 192.168.5.0/24 | 172.16.0.0/16 | IPsec連接2 |
策略路由匹配規則(不包含策略優先級)
在VPN網關轉發流量時,不按照最長掩碼匹配規則匹配策略路由,VPN網關會按照策略路由的順序逐條匹配路由,一旦能夠匹配到策略路由,立即按照當前策略路由轉發流量。
策略路由的順序由策略路由被下發至系統的時間決定。通常是先配置的策略路由被優先下發至系統,但當前情況無法完全保證,因此有可能存在后配置的策略路由被優先下發至系統,造成后配置的策略路由的優先級高于先配置的策略路由的優先級。
如果VPN網關實例配置了主備策略路由,僅生效的策略路由參與匹配過程,不生效的策略路由不會參與匹配過程。主備策略路由生效規則說明如下:
如果系統檢測到主策略路由關聯的IPsec連接是連通的(IPsec連接協商成功且健康檢查正常),則主策略路由生效,備策略路由不生效。
如果系統檢測到主策略路由關聯的IPsec連接不通(IPsec連接協商失敗或者IPsec連接協商成功但健康檢查異常)但備策略路由關聯的IPsec連接是連通的,則備策略路由生效,主策略路由不生效。
如果系統檢測到主策略路由和備策略路由關聯的IPsec連接均不通,則系統默認主策略路由生效,備策略路由不生效。
策略路由配置建議
為確保流量按照您期望的路徑進行轉發,在您配置策略路由時,請盡量添加精確的策略路由以保證流量僅可匹配到一條策略路由。
策略路由匹配規則示例
如上圖所示,本地IDC_1通過IPsec連接1和VPC_1互通,本地IDC_2通過IPsec連接2和VPC_1互通。本地IDC_1待互通網段為192.168.1.0/24和192.168.2.0/24,本地IDC_2待互通網段為192.168.5.0/24,VPC_1待互通網段為172.16.0.0/16。
在配置策略路由時,您首先配置了VPC_1去往本地IDC_2的路由,然后將VPC_1去往本地IDC_1的路由的目標網段聚合為192.168.0.0/21進行配置,配置完成后,策略路由并未按照您的配置順序被下發至系統,導致策略路由表各策略路由條目的順序發生了變化,如下表所示。
策略路由順序 | 策略路由被下發至系統的時間 | 目標網段 | 源網段 | 下一跳 |
1 | 2022-12-01:12:01:01 | 192.168.0.0/21 | 172.16.0.0/16 | IPsec連接1 |
2 | 2022-12-01:12:01:02 | 192.168.5.0/24 | 172.16.0.0/16 | IPsec連接2 |
VPN網關在轉發VPC_1去往本地IDC_2的流量時,會按照策略路由的順序逐條匹配路由,經系統分析VPC_1去往本地IDC_2的流量可以匹配上順序為1的策略路由,則VPC_1去往本地IDC_2的流量會通過IPsec連接1被轉發至本地IDC_1中。
在上述場景中由于策略路由被下發至系統的時間不可控,導致策略路由未按照期望的順序進行排列,進而導致流量未按照期望的路徑進行轉發。為了避免上述現象,在配置策略路由時,建議您盡量配置精確的策略路由,以確保流量僅可匹配到一條策略路由,不受策略路由順序的影響。
在本示例中,建議您配置如下表所示的策略路由,VPN網關在轉發VPC_1去往本地IDC_2的流量時,流量僅會匹配到順序為2的策略路由,流量會按照期望的路徑被轉發至本地IDC_2。
策略路由順序 | 策略路由被下發至系統的時間 | 目標網段 | 源網段 | 下一跳 |
1 | 2022-12-01:12:01:01 | 192.168.1.0/24 | 172.16.0.0/16 | IPsec連接1 |
2 | 2022-12-01:12:01:02 | 192.168.5.0/24 | 172.16.0.0/16 | IPsec連接2 |
3 | 2022-12-01:12:01:03 | 192.168.2.0/24 | 172.16.0.0/16 | IPsec連接1 |
上表中“策略路由被下發至系統的時間”由系統后臺自動記錄,在VPN網關管理控制臺并不顯示,此處僅作示例使用。
添加策略路由
登錄VPN網關管理控制臺。
在頂部菜單欄,選擇VPN網關實例的地域。
在VPN網關頁面,單擊目標VPN網關實例ID。
在VPN網關實例詳情頁面單擊策略路由表頁簽,然后單擊添加路由條目。
在添加路由條目面板,根據以下信息配置策略路由,然后單擊確定。
配置
說明
目標網段
輸入要訪問的本地數據中心的網段。
源網段
輸入VPN網關實例關聯的VPC側的網段。
下一跳類型
選擇IPsec連接。
下一跳
選擇需要建立IPsec-VPN連接的IPsec連接。
發布到 VPC
選擇是否將新添加的路由發布到VPC中。
是(推薦):將新添加的路由發布到VPC中。系統僅會將路由發布至VPC系統路由表中,而不會發布至VPC自定義路由表中。
如果VPC自定義路由表中需要包含該路由,請您手動添加。具體操作,請參見添加自定義路由條目到自定義路由表。
否:不發布新添加的路由到VPC中。
選擇否后,您需要手動在VPC系統路由表和自定義路由表中添加本地數據中心的網段,下一跳指向VPN網關實例,否則VPC將無法通過IPsec-VPN連接訪問該網段下的資源。
重要如果您在策略路由表和目的路由表創建了目標網段相同的路由條目,并且這兩條路由條目被發布到同一個到VPC中,當您在策略路由表下撤銷發布該路由條目時,目的路由表下的該路由條目也會被同時撤銷發布。
權重
說明僅支持單隧道模式IPsec-VPN連接的VPN網關實例支持配置權重值。如果您的場景需要配置主備鏈路,推薦您升級IPsec-VPN連接為雙隧道模式。雙隧道模式的IPsec-VPN連接默認擁有主備兩條鏈路,無需通過權重值指定主備鏈路。
選擇策略路由的權重值。
在您使用同一個VPN網關實例搭建主備IPsec-VPN連接的場景中,您可以通過配置策略路由的權重值來指定主鏈路和備鏈路,權重值為100的策略路由默認為主鏈路,權重值為0的策略路由默認為備鏈路。主策略路由和備策略路由的源網段和目標網段需相同。
您可以通過為IPsec連接配置健康檢查來自動探測鏈路的連通性,在主鏈路不通的情況下,系統自動將流量切換至備鏈路進行傳輸,實現上云鏈路的高可用。關于IPsec連接健康檢查的更多信息,請參見健康檢查。
100(主)(默認值):表示當前策略路由關聯的IPsec連接為主鏈路。
0(備):表示當前策略路由關聯的IPsec連接為備鏈路。
重要在您指定主備鏈路時,主策略路由和備策略路由的源網段和目標網段需相同。
對于在2023年10月12日后未進行過升級的VPN網關實例,如果您需要配置主備策略路由,請確保每個網段均指定了主備鏈路,如果某個網段僅配置了一條鏈路,則可能導致其他網段主備鏈路切換失敗。
您可以通過升級VPN網關實例或升級IPsec-VPN連接為雙隧道模式規避該問題。對于在2023年10月12日后升級的VPN網關實例或新建的VPN網關實例不存在該問題。
指定主備鏈路后,如果您需要修改主鏈路的權重值,需先將備鏈路刪除,待主鏈路修改完成后,再重新配置備鏈路。如果您需要修改備鏈路的權重值,也需先刪除主鏈路,待備鏈路修改完成后再重新配置主鏈路。
策略優先級
選擇策略路由的優先級。取值范圍:1~100。默認值:10。
添加策略路由時,如果系統提示路由沖突,請參見在VPN網關實例下添加路由時系統提示路由重復等報錯時怎么辦?。
發布策略路由
在您創建IPsec連接時,您可以選擇路由模式。如果您選擇了感興趣流模式,在IPsec連接創建完成后,系統會自動為您的VPN網關創建策略路由,路由是未發布狀態。您可以執行本操作,將路由發布到VPC中,系統僅會將路由發布至VPC系統路由表中,而不會發布至VPC自定義路由表中。
如果VPC自定義路由表中需要包含該路由,請您手動添加。具體操作,請參見添加自定義路由條目到自定義路由表。
登錄VPN網關管理控制臺。
在頂部菜單欄,選擇VPN網關實例的地域。
在VPN網關頁面,單擊目標VPN網關實例ID。
在VPN網關實例詳情頁面單擊策略路由表頁簽,找到目標路由條目,在操作列單擊發布。
在發布路由對話框,單擊確定。
目標路由發布后,您可以單擊撤銷發布,撤銷已經發布的路由。
重要如果您在策略路由表和目的路由表創建了目標網段相同的路由條目,并且這兩條路由條目被發布到同一個到VPC中,當您在策略路由表下撤銷發布該路由條目時,目的路由表下的該路由條目也會被同時撤銷發布。
編輯策略路由
添加策略路由后,您可以修改策略路由的權重值和策略優先級。
登錄VPN網關管理控制臺。
在頂部菜單欄,選擇VPN網關實例的地域。
在VPN網關頁面,單擊目標VPN網關實例ID。
在VPN網關實例詳情頁面單擊策略路由表頁簽,找到目標路由條目,在操作列單擊編輯。
在編輯面板,修改策略路由的權重值和策略優先級,然后單擊確定。
刪除策略路由
登錄VPN網關管理控制臺。
在頂部菜單欄,選擇VPN網關實例的地域。
在VPN網關頁面,單擊目標VPN網關實例ID。
在VPN網關實例詳情頁面單擊策略路由表頁簽,找到目標路由條目,在操作列單擊刪除。
在刪除路由條目對話框,單擊確定。
通過調用API配置策略路由
支持通過阿里云 SDK(推薦)、阿里云 CLI、Terraform、資源編排等工具調用API配置和管理策略路由。相關API說明,請參見:
CreateVpnPbrRouteEntry:創建策略路由。
DeleteVpnPbrRouteEntry:刪除策略路由。
ModifyVpnPbrRouteEntryWeight:修改策略路由的權重值。
ModifyVpnPbrRouteEntryPriority:修改策略路由的策略優先級。
ModifyVpnPbrRouteEntryAttribute:修改策略路由的權重值和策略優先級。
DescribeVpnPbrRouteEntries:查詢已配置的策略路由。