當您需要在有公網NAT Gateway的Virtual Private Cloud(Virtual Private Cloud)中開啟IPv4網關時,您可以通過建立公網NAT Gateway和保留原有公網NAT Gateway的方式,本文介紹這兩種方式的配置。
情境樣本
某公司在新加坡地區擁有一個VPC,在該VPC內的交換器VSW1上的Elastic Compute Service(Elastic Compute Service)叢集部署了雲端服務。現已通過公網NAT Gateway(名稱為NATGW1)的DNAT功能實現了ECS可以面向公網提供服務。因業務發展,ECS叢集中的部分ECS執行個體已經擁有了固定公網IP或者Elastic IP Address(Elastic IP Address,簡稱EIP)地址,這些有公網IP地址的ECS執行個體可以直接存取公網而不受VPC路由表的控制。
為了降低ECS直接存取公網可能帶來的安全管控風險,現在該公司想在該VPC中建立一個IPv4網關,並結合子網路由功能,實現對VPC中的ECS訪問公網行為的約束。因此公網NAT Gateway所在的交換器需要有公網訪問能力(交換器關聯的路由表配置預設路由指向IPv4網關),通過公網NAT Gateway訪問公網的ECS需要部署在沒有公網訪問能力的交換器中(交換器關聯的路由表配置預設路由指向公網NAT Gateway,不能配置路由指向IPv4網關),這就需要將這些ECS和公網NAT Gateway部署在不同的交換器中,您可以通過以下兩種方式進行操作:
方式一:建立公網NAT Gateway,在建立的交換器VSW2中建立公網NAT Gateway(名稱為NATGW2),將交換器VSW1上有公網IP的ECS遷移至新的交換器VSW2,無公網IP的ECS繼續保留在交換器VSW1中。
方式二:保留原有的公網NAT Gateway,將交換器VSW1上無公網IP的ECS遷移至新的交換器VSW2。
方式一:建立公網NAT Gateway
通過方式一實現對VPC中的ECS訪問公網行為進行約束時,您需要建立一個名為VSW2的新交換器,將VSW1交換器中已有公網IP的ECS2執行個體遷移到VSW2交換器中,在VSW2交換器中建立一個公網NAT Gateway(名稱為NATGW2),將指向VSW1交換器中NATGW1網關的路由條目切換為指向VSW2交換器中的公網NAT2網關,並且刪除VSW1交換器中的NATGW1網關。
通過以上操作,VSW1交換器中無公網IP的ECS1可以經由NATGW2網關和IPv4網關訪問公網,VSW1交換器中的ECS1即使有公網IP也不能訪問公網,VSW2交換器中有公網IP的ECS2執行個體經由IPv4網關訪問公網,從而實現對VPC中的ECS訪問公網行為的約束。
方式二:保留原有的公網NAT Gateway
通過方式二實現對VPC中的ECS訪問公網行為進行約束時,首先您需要在VPC中建立IPv4網關,然後建立一個名為VSW2的新交換器並關聯新的子網路由表-2,將VSW1交換器中無公網IP的ECS1執行個體遷移到VSW2交換器中,在VSW1關聯的子網路由表-1中將指向NATGW1網關的路由條目切換為指向IPv4網關的路由,將VSW2中關聯的子網路由表2中配置預設路由下一跳指向NATGW1,最後啟用IPv4網關。
通過以上操作,VSW2交換器中無公網IP的ECS1可以經由NATGW1網關和IPv4網關訪問公網,VSW2中的ECS1即使有公網IP也不能訪問公網,VSW1交換器中有公網IP的ECS2執行個體可以經由IPv4網關直接存取公網,從而實現對VPC中的ECS訪問公網行為的約束。
您可以根據需要選擇以上兩種方式中的一種進行配置。本文以方式一:建立公網NAT Gateway為例進行配置說明。
當前建立的公網NAT Gateway只有隨用隨付一種計費方式,如果您以前的公網NAT Gateway是訂用帳戶的計費方式並且您期望保留原有的計費方式不發生變化,請使用方式二:保留原有的公網NAT Gateway的方式進行配置。
前提條件
您已經在新加坡地區建立VPC,且在該VPC中建立了兩個交換器,分別為VSW1和VSW2。具體操作,請參見搭建IPv4專用網路。
您已經在VSW1交換器中建立了一台名稱為ECS1的無公網IP的ECS執行個體,在VSW2交換器中建立了一台名稱為ECS2的有公網IP的ECS執行個體。具體操作,請參見自訂購買執行個體。
您已在VSW1交換器中建立了一台名為NATGW1網關的公網NAT Gateway,且該公網NAT Gateway已綁定了EIP。同時已刪除了系統路由表中指向該NATGW1網關的自訂路由條目。具體操作,請參見建立和管理路由表。
您已在VSW2交換器中建立了一台名為NATGW2的公網NAT Gateway,且該公網NAT Gateway已綁定了EIP。具體操作,請參見建立和管理公網NAT Gateway執行個體。
步驟一:建立自訂路由表
您需要建立自訂路由表並綁定VSW2交換器,建立完成後,您可以在該路由表中添加指向IPv4網關的路由條目。
- 登入專用網路管理主控台。
- 在左側導覽列,單擊路由表。
在頂部功能表列處,選擇自訂路由表所屬的地區。 本文選擇新加坡。
- 在路由表頁面,單擊建立路由表。
在建立路由表頁面,根據以下資訊配置路由表,然後單擊確定。
配置
說明
資源群組
選擇自訂路由表所屬的資源群組。
專用網路
選擇自訂路由表所屬的VPC。
說明該VPC需與建立IPv4網關時選擇的VPC相同。
綁定物件類型
選擇路由表綁定的物件類型。本文選擇交換器。
名稱
輸入自訂路由表的名稱。
描述
輸入自訂路由表的描述。
- 在路由表頁面,找到目標路由表,單擊路由表的ID。
在路由表詳情頁面,單擊已綁定交換器頁簽,然後單擊綁定交換器。
在綁定交換器對話方塊中,選擇要綁定的交換器VSW2,然後單擊確定。
步驟二:建立並啟用IPv4網關
建立IPv4網關時,VPC下的公網NAT Gateway相容IPv4網關,則會建立成功;VPC下的公網NAT Gateway不相容IPv4網關,則會建立失敗。您可以通過切換公網NAT Gateway的模式,使公網NAT Gateway相容IPv4網關,然後再重新建立IPv4網關。關於如何切換公網NAT Gateway的模式,請參見切換公網NAT Gateway模式。
- 登入專用網路管理主控台。
在頂部功能表列處,選擇要建立IPv4網關的地區。本文選擇新加坡。
- 在左側導覽列,單擊IPv4網關。
在IPv4網關頁面,單擊建立IPv4網關。
在建立IPv4網關對話方塊中,配置以下參數資訊,然後單擊建立。
在建立IPv4網關對話方塊,建立並啟用IPv4網關,同時配置指向IPv4網關的路由。
建立IPv4網關
在建立IPv4網關設定精靈,配置以下資訊,然後單擊建立。
參數
說明
地區
自動顯示IPv4網關地區。
專用網路
選擇關聯IPv4網關的VPC。
名稱
輸入IPv4網關的名稱。
描述
輸入IPv4網關的描述資訊。
啟用IPv4網關
在啟用IPv4網關設定精靈,選擇步驟一建立的自訂路由表,然後單擊啟用。
稍等片刻,即可看到啟用成功的提示,然後單擊關閉。
步驟三:為VSW2交換器中的NATGW2網關建立SNAT條目
您需要為VSW2交換器中的NATGW2網關建立SNAT條目,以實現VSW1交換器中無公網IP的ECS可以通過VSW2交換器中的NATGW2網關訪問互連網。
- 登入NAT Gateway管理主控台。
在頂部功能表列,選擇公網NATGW2網關的地區。本文選擇新加坡。
- 在公網NAT Gateway頁面,找到目標公網NAT Gateway執行個體,然後在操作列單擊設定SNAT。
在SNAT管理頁簽,單擊建立SNAT條目。
在建立SNAT條目頁面,配置以下參數,然後單擊確定建立。
配置
說明
SNAT條目粒度
選擇SNAT條目的粒度。本文選擇交換器粒度。
選擇交換器
選擇指定交換器下的ECS執行個體通過配置的SNAT條目規則訪問互連網。本文選擇VSW1交換器。
交換器網段
系統自動顯示VSW1交換器的網段。
選擇公網IP地址
選擇用來提供互連網訪問的公網IP。
本文選擇使用單IP,然後在下拉式清單中選擇已綁定至NATGW2網關的EIP。
條目名稱
輸入SNAT條目的名稱。
步驟四:為系統路由表添加自訂路由條目
您需要為VSW1交換器綁定的系統路由表添加指向VSW2中的NATGW2網關的自訂路由條目,使VSW1交換器中無公網IP的ECS可以通過該路由條目配置的下一跳地址找到NATGW2網關,以實現公網訪問。
- 登入專用網路管理主控台。
- 在左側導覽列,單擊路由表。
在頂部功能表列處,選擇自訂路由表所屬的地區。 本文選擇新加坡。
在路由表頁面,找到VPC的系統路由表,單擊路由表的ID。
在路由表詳情頁面,選擇 。
單擊添加路由條目,在添加路由條目面板,根據以下資訊配置路由條目,然後單擊確定。
配置
說明
名稱
輸入自訂路由條目的名稱。
目標網段
輸入要轉寄到的目標IPv4網段。本文輸入目標網段為0.0.0.0/0。
下一跳類型
選擇下一跳類型。本文選擇NAT Gateway。
NAT Gateway
選擇公網NATGW2網關的執行個體ID。
步驟五:刪除VSW1交換器中的NATGW1網關
刪除NATGW1網關前,請確保:
公網NAT Gateway沒有綁定EIP,如有綁定請解除綁定。具體操作,請參見解除綁定EIP。
SNAT列表中沒有SNAT條目,如有請刪除。具體操作,請參見建立和管理SNAT條目。
公網NAT Gateway執行個體基本資料頁面預設未開啟刪除保護。如開啟,請關閉刪除保護。
- 登入NAT Gateway管理主控台。
在頂部功能表列,選擇公網NATGW1網關的地區。本文選擇新加坡。
在公網NAT Gateway頁面,找到目標公網NAT Gateway,然後在操作列選擇 。
在刪除網關對話方塊,單擊確定。
重要當您需要強制移除公網NATGW1網關及其資源時,請在刪除網關對話方塊,選中強制移除(刪除 NAT Gateway及其包含資源)。強制移除公網NATGW1網關時,系統會自動解除綁定EIP、刪除該公網NATGW1網關下的SNAT條目,請您謹慎操作。
步驟六:連通性測試
完成上述操作後,VSW1交換器中的ECS1可以經由公網NATGW2網關和IPv4網關訪問目標網段;VSW2交換器中的ECS2可以經由IPv4網關訪問目標網段。本文中的ECS1和ECS2均為Linux作業系統。
測試ECS1訪問目標網段的能力。
遠程登入ECS1。具體操作,請參見ECS遠端連線操作指南。
在ECS1執行個體中執行
curl www.aliyun.com
命令,測試網路連通性。收到如下圖所示的回複報文,則表示網路已連通。
測試ECS2訪問目標網段的能力。
遠程登入ECS2。
在ECS2執行個體中執行
curl www.aliyun.com
命令,測試網路連通性。收到如下圖所示的回複報文,則表示網路已連通。