aws中的路由表


參考官方文檔:

由表中包含一系列被稱為路由的規則,可用於判斷網絡流量的導向目的地。

在您的 VPC 中的每個子網必須與一個路由表關聯;路由表控制子網的路由。一個子網一次只能與一個路由表關聯,但您可以將多個子網與同一路由表關聯。

路由表基本信息

以下是您需要了解的關於路由表的基本信息:

  • 您的 VPC 有一個隱式路由器。

  • 您的 VPC 會自動生成主路由表,以供您修改。

  • 您可以為您的 VPC 創建額外的自定義路由表。

  • 每個子網必須與一個路由表關聯,這個路由表控制子網的路由。 如果您未在子網與特定路由表間建立顯式關聯,則這個子網將與主路由表建立隱式關聯。

  • 您不能刪除主路由表,但可以將主路由表替換為您創建的自定義路由表(以使這個路由表成為默認路由表,並可與每個新增子網存在關聯)。

  • 表中的每項路由都指定了一個目的 CIDR 和目標 (例如,指向數據包被外部企業網絡的 172.16.0.0/12 的數據將通向虛擬專用網關)。我們使用與流量匹配的最明確路由以判斷數據流的路由方式。

  • 每個路由表都包含一個實現 VPC 內部通信的本地路由。您無法修改或刪除該路由。

  • 在 VPC 中添加 Internet 網關、虛擬專用網關、NAT 設備、對等連接或 VPC 端點時,必須更新所有使用這些網關或連接的子網的路由表。

  • 在每個 VPC 上創建的路由表和在每個路由表中添加的路由均存在數量限制。有關更多信息,請參閱 Amazon VPC 限制

主路由表

當您創建 VPC 時,它會自動生成主路由表。 在 Amazon VPC 控制台中的 Route Tables 頁面上,通過在 Main 列中查找 Yes 可以查看 VPC 的主路由表。主路由表控制未與任何其他路由表顯式關聯的所有子網的路由。您可以在主路由表中添加、刪除和修改路由。

即使某個子網與主路由表已隱式關聯,您也可以將它們顯式關聯。當您更改用作主路由表的表時,可以這樣做。這會更改其他新子網或所有未與任何其他路由表顯式關聯的子網的默認設置。有關更多信息,請參閱 正在替換主路由表

自定義路由表

除了默認路由表之外,您的 VPC 還可以有其他路由表。保護您的 VPC 的一種方式是保留主路由表的初始默認狀態(僅包含本地路由),並將您創建的每個新建子網與您已經創建的自定義路由表之一建立顯式關聯。這樣可以確保您能夠顯式控制每個子網的出站數據流的路由方式。

下圖展示了同時有 Internet 網關和虛擬專用網關、以及一個公有子網和僅限 VPN 連接子網的 VPC 的路由。主路由表自帶 VPC,同時還有僅限 VPN 的子網的路由。與公有子網關聯的自定義路由表。自定義路由表內包含 Internet 網關路由(目的地為 0.0.0.0/0,目標為 Internet 網關)。

主路由表和自定義表

如果您在此 VPC 內創建一個新的子網,它將自動與主路由表關聯,而主路由表會將數據流路由到虛擬專用網關。如果您設置反向配置(主路由表內包含通往 Internet 網關的路由,自定義路由表內包含通往虛擬專用網關的路由),則新子網會自動生成通往 Internet 網關的路由。

路由表關聯

VPC 控制台顯示與每個路由表顯式關聯的子網的數量,並提供與主路由表隱式關聯的子網的信息。有關更多信息,請參閱 正在判斷與表顯式關聯的子網

子網可以與主路由表建立顯式或隱式關聯。子網通常不會與主路由表建立顯式關聯,盡管當您替換主路由表時可能會臨時生成顯式關聯。

您可能需要更改主路由表,但是為避免數據流中斷,您可以先使用自定義路由表測試路由更改。當您滿意測試結果之后,您便可以將主路由表替換為新的自定義路由表。

下圖展示的是一個有兩個子網的 VPC,並且這些子網都與主路由表(路由表 A)有隱式關聯,自定義路由表(路由表 B)則未與任何子網相關。

替換主路由表:開始

您可以在子網 2 和路由表 B 之間建立顯式關聯。

替換主路由表:新建路由表

在您測試完路由表 B 之后,您可以將其設定為主路由表。請注意子網 2 仍與路由表 B 有顯式關聯,而子網 1 與路由表 B 有隱式關聯,因為路由表 B 是新的主路由表。 路由表 A 已經不再使用。

替換主路由表:替換

如果您解除子網 2 與路由表 B 的關聯,在子網 2 與路由表 B 之間仍將存在隱式關聯。如果您不再需要路由表 A,您可以將其刪除。

替換主路由表:解除關聯

路由優先級

我們使用路由表中與流量匹配的最具體的路由來判斷數據流的路由方式(最長前綴匹配)。例如,下面的路由表包含一條指向 Internet 網關的 Internet 流量 (0.0.0.0/0) 路由、一條指向對等連接 (pcx-1a2b3c4d) 的 172.31.0.0/16 流量路由。來自該子網的目標為 172.31.0.0/16 IP 地址范圍的任意流量均使用對等連接,因為該路由比 Internet 網關路由更明確。目標設為 VPC (10.0.0.0/16) 中的目標的任何流量將被 Local 路由涵蓋,因此將在 VPC 中路由。來自該子網的所有其他流量使用 Internet 網關。

目標 目標
10.0.0.0/16 本地
172.31.0.0/16 pcx-1a2b1a2b
0.0.0.0/0 igw-11aa22bb

如果您已將一個虛擬專用網關連接到 VPC,並且已啟用路由表上的路由傳播,則代表 VPN 連接的路由會在您的路由表中自動顯示為已傳播路由。以下情況將適用:

  • 如果來自 VPN 連接或 AWS Direct Connect 連接的任何傳播路由與 VPC 的本地路由重疊,則本地路由的優先級最高,即使傳播路由更特定也是如此。

  • 如果來自 VPN 連接或 AWS Direct Connect 連接的任何傳播路由的目標 CIDR 塊與其他現有靜態路由的相同(無法應用最長前綴匹配),我們將設置其目標為 Internet 網關、虛擬專用網關、網絡接口、實例 ID、VPC 對等連接或 VPC 端點的靜態路由的優先級。

如果 VPN 連接內存在重疊路由,且最長前綴匹配不適用,則我們在 VPN 連接內按以下規則排序路由,從最高優先級到最低優先級:

  • 來自 AWS Direct Connect 連接的 BGP 傳播路由

  • 為 VPN 連接手動添加的靜態路由

  • 來自 VPN 連接的 BGP 傳播路由

在該示例中,路由表包含一條到 Internet 網關(您手動添加的)的靜態路由和一條到虛擬專用網關的傳播路由。這兩條路由的目的地均為 172.31.0.0/24。在這種情況下,目的地為172.31.0.0/24 的所有流量均路由到 Internet 網關 - 此為靜態路由,因此,其優先級高於傳播路由。

目標 目標
10.0.0.0/16 本地
172.31.0.0/24 vgw-1a2b3c4d(傳播)
172.31.0.0/24 igw-11aa22bb

路由選項

以下主題介紹了您的 VPC 中的特定網關或連接的路由。

Internet 網關的路由表

您可以通過向 Internet 網關添加路由來將一個子網設為公有子網。為此,請創建一個 Internet 網關並將其附加到您的 VPC,然后添加一個目的地為 0.0.0.0/0 且目標為 Internet 網關 ID (igw-xxxxxxxx) 的路由。有關更多信息,請參閱 Internet 網關

NAT 設備的路由表

要使私有子網中的實例能夠連接到 Internet,您可以在公有子網中創建一個 NAT 網關或啟動 NAT 實例,然后為私有子網添加一個路由以將 Internet 數據流 (0.0.0.0/0) 路由到 NAT 設備。有關更多信息,請參閱 NAT 網關 和 NAT 實例

虛擬專用網關的路由表

您可以使用 AWS 硬件 VPN 連接來支持 VPC 中的實例與您自己的網絡進行通信。為此,請創建一個虛擬專用網關並將其附加到您的 VPC,然后添加一個目的地為您的網絡且目標為虛擬專用網關 (vgw-xxxxxxxx) 的路由。您隨后可以創建和配置 VPN 連接。有關更多信息,請參閱 在您的 VPC 中添加硬件虛擬專用網關

VPC 對等連接的路由表

VPC 對等連接是兩個 VPC 之間的網絡連接,通過此連接,您可以使用私有 IP 地址在這兩個 VPC 之間路由流量。任何一個 VPC 中的實例都可以彼此通信,就像它們屬於同一網絡中一樣。

要在 VPC 對等連接中的 VPC 之間實現流量路由,必須將一個路由添加到 VPC 的一個或多個路由表,該路由指向 VPC 對等連接以訪問對等連接中另一個 VPC 的全部或部分 CIDR 塊。同樣,另一個 VPC 的擁有者必須將一個路由添加到其 VPC 的路由表,以將流量路由回您的 VPC。

例如,您在具有以下信息的兩個 VPC 之間具有 VPC 對等連接 (pcx-1a2b1a2b):

  • VPC A:vpc-1111aaaa,CIDR 塊為 10.0.0.0/16

  • VPC B:vpc-2222bbbb,CIDR 塊為 172.31.0.0/16

要啟用 VPC 之間的流量並允許訪問任一 VPC 的整個 CIDR 塊,VPC A 的路由表的配置如下所示。

目標 目標
10.0.0.0/16 本地
172.31.0.0/16 pcx-1a2b1a2b

VPC B 的路由表的配置如下所示。

目標 目標
172.31.0.0/16 本地
10.0.0.0/16 pcx-1a2b1a2b

有關 VPC 對等連接的更多信息,請參閱 Amazon VPC Peering Guide

ClassicLink 功能允許您將 EC2-Classic 實例鏈接到 VPC,從而允許 EC2-Classic 實例與 VPC 中使用私有 IP 地址的實例進行通信。有關 ClassicLink 的更多信息,請參閱ClassicLink

為 VPC 啟用 ClassicLink 時,會向所有 VPC 的路由表添加一個路由,其目的地為 10.0.0.0/8,目標為 local。這允許 VPC 中的實例與后來鏈接到該 VPC 的任意 EC2-Classic 實例之間進行通信。如果您向啟用了 ClassicLink 的 VPC 另外添加一個路由表,該路由表會自動接收一個目的地為10.0.0.0/8 並且目標為 local 的路由。如果禁用 VPC 的 ClassicLink,會從該 VPC 的所有路由表中自動刪除此路由。

如果您的 VPC 的任意路由表具有地址范圍在 10.0.0.0/8 CIDR 內的現有路由,則無法為該 VPC 啟用 ClassicLink。這不包括 VPC 的 10.0.0.0/16 和 10.1.0.0/16 IP 地址范圍的本地路由。

如果您已經為 VPC 啟用了 ClassicLink,則無法再在路由表中添加 10.0.0.0/8 IP 地址范圍的任何具體路由。

如果您修改 VPC 對等連接以允許 VPC 中的實例與已鏈接到對等 VPC 的 EC2-Classic 實例之間的通信,則靜態路由將自動添加到您的路由表,其目的地為 10.0.0.0/8,目標為 local。如果您修改 VPC 對等連接以允許已鏈接到 VPC 的本地 EC2-Classic 實例與對等 VPC 中的實例之間的通信,則必須手動將路由添加到您的主路由表,其目的地為對等 VPC CIDR 塊,目標為 VPC 對等連接。EC2-Classic 實例依賴主路由表來路由到對等 VPC。有關更多信息,請參閱 Amazon VPC Peering Guide中的使用 ClassicLink 進行配置

VPC 端點的路由表

使用 VPC 端點可以在您的 VPC 和其他 AWS 服務之間創建私有連接。創建終端節點時,您指定 VPC 中由該終端節點使用的路由表。路由會自動添加到每個路由表中,這些路由表的目的地指定服務的前綴列表 ID (pl-xxxxxxxx),目標具有相應終端節點 ID (vpce-xxxxxxxx)。您無法顯式刪除或修改終端節點路由,但可更改終端節點所使用的路由表。

有關終端節點路由的更多信息以及對到 AWS 服務的路由的影響,請參閱 終端節點路由

使用路由表

此部分將為您展示如何使用路由表。

Note

當您使用控制台向導創建帶有網關的 VPC 時,向導會自動為您更新使用網關的路由表。如果您正在使用命令行工具或 API 來設置您的 VPC,您必須自行更新路由表。

正在判斷與子網關聯的具體路由表。

可通過在 Amazon VPC 控制台中查看子網的詳細信息,判斷該子網與哪個路由表關聯。

判斷與子網關聯的路由表

  1. 打開 Amazon VPC 控制台 https://console.amazonaws.cn/vpc/

  2. 在導航窗格中,選擇 Subnets。

  3. 子網詳細信息顯示在 Summary (摘要) 選項卡中。選擇 Route Table 選項卡可查看路由表 ID 及其路由。如果它是主路由表,控制台便無法表明關聯為隱式或是顯式。 如需判斷與主路由表的關聯是否為顯式關聯,請參見正在判斷與表顯式關聯的子網

正在判斷與表顯式關聯的子網

您可以判斷與路由表顯式關聯的子網數目以及存在關聯的具體子網。

主路由表可以有顯式和隱式關聯。 自定義路由表只有顯式關聯。

未與任何路由表建立顯式關聯的子網都與主路由表有隱式關聯。您可以在子網和主路由表中建立顯式關聯(有關您為何建立顯式關聯的原因,請參見正在替換主路由表)。

判斷顯式關聯的子網

  1. 打開 Amazon VPC 控制台 https://console.amazonaws.cn/vpc/

  2. 在導航窗格中,選擇 Route Tables。

  3. 查看 Explicitly Associated With 列以確定顯式關聯的子網數。

  4. 選擇所需的路由表。

  5. 在詳細信息窗格中,選擇 Subnet Associations 選項卡。與路由表有顯式關聯的子網已經列於選項卡之中。所有未與任何路由表關聯的子網(並因此與主路由表隱式關聯)也將被列出。

創建自定義路由表

您可以使用 Amazon VPC 控制台為 VPC 創建自定義路由表。

創建自定義路由表

  1. 打開 Amazon VPC 控制台 https://console.amazonaws.cn/vpc/

  2. 在導航窗格中,選擇 Route Tables。

  3. 選擇 Create Route Table。

  4. 在 Create Route Table 對話框中,您可以選擇為 Name tag 命名您的路由表。這樣做可創建具有 Name 鍵以及指定值的標簽。針對 VPC 選擇您的 VPC,然后選擇 Yes, Create。

在路由表中添加和刪除路由

您可在路由表中添加、刪除和修改路由。您只能修改已添加的路由。

修改路由或將路由添加到路由表

  1. 打開 Amazon VPC 控制台 https://console.amazonaws.cn/vpc/

  2. 在導航窗格中,選擇 Route Tables,然后選擇路由表。

  3. 在 Routes 選項卡中,選擇 Edit。

  4. 要修改現有路由,請為 Destination 替換目的地 CIDR 塊或單個 IP 地址,然后為 Target 選擇一個目標。選擇 Add another route、Save。

從路由表中刪除路由

  1. 打開 Amazon VPC 控制台 https://console.amazonaws.cn/vpc/

  2. 在導航窗格中,選擇 Route Tables,然后選擇路由表。

  3. 在 Routes 選項卡中,選擇 Edit,然后針對要刪除的路由選擇 Remove。

  4. 完成此操作后,選擇 Save。

啟用和禁用路由傳播

路由傳播允許虛擬專用網關自動傳播路由至路由表,所以您便無需再手動向您的路由表中輸入 VPN 路由。您可以啟用或禁用路由傳播。

有關 VPN 路由選項的更多信息,請參見 VPN 路由選項

啟用路由傳播

  1. 打開 Amazon VPC 控制台 https://console.amazonaws.cn/vpc/

  2. 在導航窗格中,選擇 Route Tables,然后選擇路由表。

  3. 在 Route Propagation 選項卡上,選擇 Edit。

  4. 選中虛擬專用網關旁邊的 Propagate 復選框,然后選擇 Save。

禁用路由傳播

  1. 打開 Amazon VPC 控制台 https://console.amazonaws.cn/vpc/

  2. 在導航窗格中,選擇 Route Tables,然后選擇路由表。

  3. 在 Route Propagation 選項卡上,選擇 Edit。

  4. 取消選中 Propagate 復選框,然后選擇 Save。

正在將子網與路由表關聯

若要對特定子網應用路由表路由,您必須將路由表與子網關聯。一個路由表可以與多個子網關聯;但是一個子網一次只能與一個路由表關聯。任何未與路由表顯式關聯的子網都默認與主路由表隱式關聯。

關聯路由表和子網

  1. 打開 Amazon VPC 控制台 https://console.amazonaws.cn/vpc/

  2. 在導航窗格中,選擇 Route Tables,然后選擇路由表。

  3. 在 Subnet Associations 選項卡上,選擇 Edit。

  4. 選中要與路由表關聯的子網的 Associate 復選框,然后選擇 Save。

更改子網路由表

您可以更改與子網關聯的路由表。

更改子網路由表關聯

  1. 打開 Amazon VPC 控制台 https://console.amazonaws.cn/vpc/

  2. 在導航窗格中,選擇 Subnets,然后選擇子網。

  3. 在 Route Table 選項卡中,選擇 Edit。

  4. 從 Change to 列表中選擇要與子網關聯的新路由表,然后選擇 Save。

正在解除子網與路由表的關聯

您可以解除子網與路由表的關聯。在將子網與其他路由表關聯前,它與主路由表是隱式關聯的。

解除子網與路由表的關聯

  1. 打開 Amazon VPC 控制台 https://console.amazonaws.cn/vpc/

  2. 在導航窗格中,選擇 Route Tables,然后選擇路由表。

  3. 在 Subnet Associations 選項卡中,選擇 Edit。

  4. 取消選中子網的 Associate 復選框,然后選擇 Save。

正在替換主路由表

您也可以更改作為 VPC 中主路由表的路由表。

替換主路由表

  1. 打開 Amazon VPC 控制台 https://console.amazonaws.cn/vpc/

  2. 在導航窗格中,選擇 Route Tables。

  3. 選擇應為新的主路由表的路由表,然后選擇 Set as Main Table。

  4. 在確認對話框中,選擇 Yes, Set。

以下步驟描述如何刪除子網與主路由表之間的顯式關聯。結果是在子網和主路由之間生成隱式關聯。這個步驟與解除任何子網與任何路由表的步驟相同。

刪除與主路由表的顯式關聯

  1. 打開 Amazon VPC 控制台 https://console.amazonaws.cn/vpc/

  2. 在導航窗格中,選擇 Route Tables,然后選擇路由表。

  3. 在 Subnet Associations 選項卡中,選擇 Edit。

  4. 取消選中子網的 Associate 復選框,然后選擇 Save。

正在刪除路由表

您只可以刪除未與任何子網關聯的路由表。您無法刪除主路由表。

刪除路由表

  1. 打開 Amazon VPC 控制台 https://console.amazonaws.cn/vpc/

  2. 在導航窗格中,選擇 Route Tables。

  3. 選擇路由表,然后選擇 Delete。

  4. 在確認對話框中,選擇 Yes, Delete。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM