預設情況下,VPC內的資源綁定公網IP後,即可與公網直接進行IPv4通訊。企業可能會存在未經營運部門管控的公網訪問方式(例如業務部門隨意為ECS執行個體配置公網IP),這為商業網路管理帶來安全風險。使用IPv4網關,通過路由表可以控制公網訪問流量統一經過IPv4網關,降低分散接入帶來的安全風險。
為什麼使用IPv4網關
對比項 | 公網直接存取(VPC預設情況) | 使用IPv4網關集中控制 |
樣本 | 不使用IPv4網關,ECS通過固定公網IP/Elastic IP Address/公網NAT Gateway直接存取公網。 | 集中管控公網訪問流量。 |
適用情境 | 少量ECS需具備獨立、直接的公網訪問能力。 適用於公網訪問需求頻繁變化的情境。 | 適用於大規模、多層級網路架構。 對網路安全合規性有嚴格要求的企業級環境。 |
操作複雜度 | 操作簡便快捷,無需進行路由配置。 | 需要進行網路規劃以及路由規則配置。 |
靈活性 | 每個執行個體獨立操作,互不影響。 | 網路原則的變更會影響VPC內所有執行個體。 |
安全性 | 安全防護主要依賴於執行個體自身的安全性群組規則配置。 | IPv4網關集中管控模式保障網路原則的一致性與整體安全性。 |
IPv4網關與NAT Gateway的區別
IPv4 網關和公網 NAT Gateway可結合使用。參考公網訪問,詳細瞭解相關網路組件之間的關係。
網路組件 | IPv4網關 | 公網NAT Gateway |
功能定位 | VPC邊界上的公網IPv4流量控制組件 | VPC內部的網路位址轉譯裝置 |
使用情境 | 集中控制公網訪問流量 | 統一公網流量出口 |
是否提供公網訪問能力 | 不提供,僅控制公網流量 | 通過綁定EIP提供公網訪問能力 (公網訪問能力是由EIP提供的,NAT Gateway本身不提供公網訪問能力) |
建立 IPv4 網關後,交換器可區分為:
公有交換器:綁定的路由表中存在目標網段為
0.0.0.0/0,下一跳為IPv4網關的路由,其中的資源綁定公網IP即可訪問公網。私人交換器:綁定的路由表中不存在指向IPv4網關的路由,其中的資源綁定公網IP後無法直接存取公網。
結合公網NAT Gateway使用時,需要將公網NAT Gateway部署在公有交換器,部署在私人交換器的ECS執行個體配置路由指向公網NAT Gateway,將訪問公網的流量路由至公網NAT Gateway,再使用公網NAT Gateway綁定的公網IP訪問公網。需注意:
確保公網NAT Gateway的
EipBindMode為NAT模式,相容IPv4網關。控制台建立的公網NAT Gateway預設為
NAT模式,調用CreateNatGateway建立時,EipBindMode需傳入NAT。建立完成後,可以調用ModifyNatGatewayAttribute調整EipBindMode。如果已建立
EipBindMode為MULTI_BINDED模式的公網NAT Gateway,由於不相容IPv4網關,將無法建立IPv4網關。如果已建立IPv4網關,調用CreateNatGateway建立
EipBindMode為MULTI_BINDED模式的公網NAT Gateway,將無法綁定EIP。
為避免啟用IPv4網關後私人交換器中的資源無法訪問公網,確保在啟用IPv4網關前完成路由配置。
工作原理
使用IPv4網關控制公網訪問
VPC建立並啟用IPv4網關後,公網訪問的流量由IPv4網關集中控制。為交換器關聯的路由表配置指向IPv4網關的路由,其中的資源才可以直接存取公網。VPC 詳情頁可以查看IPv4公網訪問模式,確定當前公網流量是否由IPv4網關集中管控。
啟用IPv4網關前,VPC內的公網流量不會受到影響。但在啟用過程中,可能會因流量路徑切換導致短暫的網路中斷。
刪除IPv4網關模式
刪除前需要先解除綁定網關路由表。在目標IPv4網關的操作列單擊刪除,或調用DeleteIpv4Gateway刪除IPv4網關。刪除時,選擇不同的模式將影響VPC的公網訪問形態。
公網模式:系統會自動刪除所有指向IPv4網關的路由條目,回退到VPC初始狀態,執行個體綁定公網IP即可訪問公網。
私網模式:需要先刪除路由表中所有指向IPv4網關的路由條目。刪除後,VPC內所有資源將無法訪問公網。如需恢複為公網直接存取的形態,需要重新建立IPv4網關並選擇公網模式刪除。
重要選擇私網模式刪除後,VPC內所有資源無論是否綁定公網IP都將無法訪問公網。請謹慎操作!
集中控制公網訪問
企業可能會存在未經營運部門管控的公網訪問方式(例如業務部門隨意為ECS執行個體配置公網IP),從而導致營運部門難以實現對公網訪問有效集中的管理。使用IPv4網關集中控制公網訪問流量,可以降低分散接入帶來的安全風險,解決上述問題。
控制台
前往專用網路控制台-IPv4網關頁面,在頁面上方選擇VPC所在的地區後,單擊建立IPv4網關。
建立IPv4網關:選擇需集中控制公網訪問的專用網路。
啟用IPv4網關:選擇公有交換器綁定的路由表,系統自動添加
0.0.0.0/0路由指向IPv4網關,確保公有交換器中的資源綁定公網IP後可訪問公網。當路由表中存在目標網段為0.0.0.0/0的路由時,需要單擊暫不啟用,調整對應路由的下一跳為IPv4網關後再啟用。啟用後,專用網路訪問公網的行為切換為IPv4網關集中控制。當ECS執行個體使用公網NAT Gateway綁定的公網IP訪問公網時,需要將ECS執行個體和公網NAT Gateway部署在不同的交換器中,為NAT Gateway所在交換器關聯的路由表配置
0.0.0.0/0路由指向IPv4網關,為ECS執行個體所在交換器關聯的路由表配置路由指向公有交換器中的NAT Gateway。當ECS執行個體使用固定公網IP、綁定的Elastic IP Address訪問公網時,為ECS執行個體配置
0.0.0.0/0路由指向IPv4網關即可。
API
調用CreateIpv4Gateway建立IPv4網關。
調用EnableVpcIpv4Gateway啟用IPv4網關,指定
RouteTableList為公有交換器綁定的路由表;如未指定,需要調用CreateRouteEntry在對應路由表中自行添加0.0.0.0/0路由指向IPv4網關。
Terraform
與控制台邏輯不同的是,啟用IPv4網關時,系統不會自動添加0.0.0.0/0路由指向IPv4網關,需要自行配置路由。
Resource:alicloud_vpc、alicloud_vswitch、alicloud_vpc_ipv4_gateway、alicloud_route_table、alicloud_route_table_attachment、alicloud_vpc_route_entry、alicloud_instance、alicloud_security_group、alicloud_security_group_rule、alicloud_eip_address、alicloud_eip_association、alicloud_nat_gateway、alicloud_snat_entry
Data Sources:alicloud_zones
# 指定建立IPv4網關的地區
provider "alicloud" {
region = "cn-hangzhou"
}
# 根據資料來源自動擷取可以建立交換器的可用性區域列表
data "alicloud_zones" "available_zones" {
available_resource_creation = "VSwitch" # 查詢VPC內可建立的可用性區域
}
# 建立1個VPC
resource "alicloud_vpc" "example_vpc" {
vpc_name = "example_vpc_name"
cidr_block = "10.0.0.0/16" # 指定網段
}
# 定義交換器配置
locals {
vswitches = {
vsw1 = {
name = "example_vsw1_name"
cidr_block = "10.0.0.0/24"
zone_index = 0
}
vsw2 = {
name = "example_vsw2_name"
cidr_block = "10.0.1.0/24"
zone_index = 1
}
vsw3 = {
name = "example_vsw3_name"
cidr_block = "10.0.2.0/24"
zone_index = 0
}
vsw4 = {
name = "example_vsw4_name"
cidr_block = "10.0.3.0/24"
zone_index = 0
}
}
# 定義路由表配置
route_tables = {
rt1 = {
name = "example_rt1_name"
vswitch_key = "vsw1"
}
rt2 = {
name = "example_rt2_name"
vswitch_key = "vsw2"
}
rt3 = {
name = "example_rt3_name"
vswitch_key = "vsw3"
}
rt4 = {
name = "example_rt4_name"
vswitch_key = "vsw4"
}
}
# 定義執行個體配置
instances = {
instance1 = {
name = "example_instance1_name"
vswitch_key = "vsw1"
}
instance2 = {
name = "example_instance2_name"
vswitch_key = "vsw3"
}
instance3 = {
name = "example_instance3_name"
vswitch_key = "vsw4"
}
}
# 定義EIP配置
eips = {
eip1 = {
name = "example_eip1_name"
}
eip2 = {
name = "example_eip2_name"
}
}
# 定義SNAT條目配置
snat_entries = {
snat1 = {
instance_key = "instance2"
}
snat2 = {
instance_key = "instance3"
}
}
}
# 建立多個交換器
resource "alicloud_vswitch" "example_vsw" {
for_each = local.vswitches
vswitch_name = each.value.name
cidr_block = each.value.cidr_block
vpc_id = alicloud_vpc.example_vpc.id
zone_id = data.alicloud_zones.available_zones.zones[each.value.zone_index].id
}
# 建立多個自訂路由表
resource "alicloud_route_table" "example_route_table" {
for_each = local.route_tables
route_table_name = each.value.name
vpc_id = alicloud_vpc.example_vpc.id
}
# 將路由表與交換器綁定
resource "alicloud_route_table_attachment" "example_route_table_attachment" {
for_each = local.route_tables
vswitch_id = alicloud_vswitch.example_vsw[each.value.vswitch_key].id
route_table_id = alicloud_route_table.example_route_table[each.key].id
}
# 指定執行個體規格
variable "instance_type" {
default = "ecs.e-c1m1.large"
}
# 指定鏡像ID
variable "image_id" {
default = "aliyun_3_x64_20G_alibase_20221102.vhd"
}
# 建立安全性群組
resource "alicloud_security_group" "example_security_group" {
security_group_name = "example_security_group_name"
vpc_id = alicloud_vpc.example_vpc.id
}
# 建立安全性群組規則,需按實際訪問流量修改協議與連接埠號碼
resource "alicloud_security_group_rule" "allow_internet" {
type = "ingress"
ip_protocol = "icmp"
nic_type = "intranet"
policy = "accept"
port_range = "-1/-1"
priority = 1
security_group_id = alicloud_security_group.example_security_group.id
cidr_ip = "0.0.0.0/0"
}
# 建立多個伺服器
resource "alicloud_instance" "example_instance" {
for_each = local.instances
instance_name = each.value.name
vswitch_id = alicloud_vswitch.example_vsw[each.value.vswitch_key].id
instance_type = var.instance_type
image_id = var.image_id
system_disk_category = "cloud_essd"
security_groups = [alicloud_security_group.example_security_group.id]
instance_charge_type = "PostPaid" # 指定付費類型為隨用隨付
spot_strategy = "SpotWithPriceLimit" # 設定上限價格的搶佔式執行個體
}
# 建立多個EIP
resource "alicloud_eip_address" "example_eip" {
for_each = local.eips
address_name = each.value.name
isp = "BGP"
netmode = "public"
bandwidth = "1"
payment_type = "PayAsYouGo"
}
# 綁定ECS和EIP
resource "alicloud_eip_association" "example_eip_ecs_association" {
allocation_id = alicloud_eip_address.example_eip["eip1"].id
instance_type = "EcsInstance"
instance_id = alicloud_instance.example_instance["instance1"].id
}
# 建立公網NAT Gateway
resource "alicloud_nat_gateway" "example_natgw" {
nat_gateway_name = "example_natgw_name"
vpc_id = alicloud_vpc.example_vpc.id
vswitch_id = alicloud_vswitch.example_vsw["vsw2"].id
nat_type = "Enhanced"
eip_bind_mode = "NAT" # 指定EIP繫結模式,必須為NAT模式
payment_type = "PayAsYouGo"
}
# 綁定EIP和公網NAT Gateway
resource "alicloud_eip_association" "example_eip_natgw_association" {
allocation_id = alicloud_eip_address.example_eip["eip2"].id
instance_type = "NAT"
instance_id = alicloud_nat_gateway.example_natgw.id
}
# 添加路由指向NAT Gateway
resource "alicloud_route_entry" "example_rt3_route" {
route_table_id = alicloud_route_table.example_route_table["rt3"].id
destination_cidrblock = "0.0.0.0/0"
nexthop_type = "NatGateway"
nexthop_id = alicloud_nat_gateway.example_natgw.id
}
# 添加路由指向NAT Gateway
resource "alicloud_route_entry" "example_rt4_route" {
route_table_id = alicloud_route_table.example_route_table["rt4"].id
destination_cidrblock = "0.0.0.0/0"
nexthop_type = "NatGateway"
nexthop_id = alicloud_nat_gateway.example_natgw.id
}
# 建立SNAT條目
resource "alicloud_snat_entry" "example_snat_entry" {
for_each = local.snat_entries
snat_table_id = alicloud_nat_gateway.example_natgw.snat_table_ids
source_cidr = alicloud_instance.example_instance[each.value.instance_key].primary_ip_address
snat_ip = alicloud_eip_address.example_eip["eip2"].ip_address
}
# 建立IPv4網關
resource "alicloud_vpc_ipv4_gateway" "example_ipv4gw" {
ipv4_gateway_name = "example_ipv4gw_name"
vpc_id = alicloud_vpc.example_vpc.id
enabled = true
}
# 添加路由指向IPv4網關
resource "alicloud_route_entry" "example_rt1_route" {
route_table_id = alicloud_route_table.example_route_table["rt1"].id
destination_cidrblock = "0.0.0.0/0"
nexthop_type = "Ipv4Gateway"
nexthop_id = alicloud_vpc_ipv4_gateway.example_ipv4gw.id
}
# 添加路由指向IPv4網關
resource "alicloud_route_entry" "example_rt2_route" {
route_table_id = alicloud_route_table.example_route_table["rt2"].id
destination_cidrblock = "0.0.0.0/0"
nexthop_type = "Ipv4Gateway"
nexthop_id = alicloud_vpc_ipv4_gateway.example_ipv4gw.id
}公網網段私用
VPC定義的預設私網轉寄網段遵循RFC 1918標準,包括10.0.0.0/8、172.16.0.0/12、192.168.0.0/16。當VPC與使用了非RFC 1918標準的私人網段(如30.0.0.0/16)的本地IDC或VPC建立網路連接時,具備公網訪問能力的雲資源訪問非標準私網網段時,請求會直接通過公網轉寄,而不會按照配置的路由指向本地IDC或VPC。
為VPC建立並啟用IPv4網關後,IPv4網關將集中控制公網訪問行為,所有流量均按照路由錶轉發。交換器需要配置指向IPv4網關的0.0.0.0/0路由,其中的資源才可以直接存取公網。而按照最長首碼匹配原則,訪問ECS02的流量將匹配30.0.0.0/16路由訪問對端VPC。
控制台
前往專用網路控制台-IPv4網關頁面,在頁面上方選擇VPC所在的地區後,單擊建立IPv4網關。
建立IPv4網關:選擇需訪問非標準私網網段的專用網路。
啟用IPv4網關:選擇需訪問非標準私網網段的交換器綁定的路由表,系統自動添加
0.0.0.0/0路由指向IPv4網關,確保交換器中的資源可以按照更明細的路由訪問非標準私網網段。確保綁定的路由表中,不存在目標網段為
0.0.0.0/0的路由。如有,需要單擊暫不啟用,刪除路由後再啟用。啟用後,IPv4網關集中控制訪問公網的流量,所有流量均按照路由錶轉發。
API
調用CreateIpv4Gateway建立IPv4網關。
調用EnableVpcIpv4Gateway啟用IPv4網關指,定
RouteTableList為公有交換器綁定的路由表;如未指定,需要調用CreateRouteEntry在對應路由表中自行添加0.0.0.0/0路由指向IPv4網關。
Terraform
與控制台邏輯不同的是,啟用IPv4網關時,系統不會自動添加0.0.0.0/0路由指向IPv4網關,需要自行配置路由。
Resource:alicloud_vpc、alicloud_vswitch、alicloud_vpc_ipv4_gateway、alicloud_route_table、alicloud_route_table_attachment、alicloud_vpc_route_entry、alicloud_instance、alicloud_security_group、alicloud_security_group_rule、alicloud_eip_address、alicloud_eip_association、alicloud_vpc_peer_connection
Data Sources:alicloud_zones
本樣本中,建立對等串連的VPC屬於同一帳號。建立跨帳號對等串連時,還需要建立alicloud_vpc_peer_connection_accepter確保對端帳號接受對等串連。
# 指定建立IPv4網關的地區
provider "alicloud" {
region = "cn-hangzhou"
}
# 根據資料來源自動擷取可以建立交換器的可用性區域列表
data "alicloud_zones" "available_zones" {
available_resource_creation = "VSwitch" # 查詢VPC內可建立的可用性區域
}
# 指定執行個體規格
variable "instance_type" {
default = "ecs.e-c1m1.large"
}
# 指定鏡像ID
variable "image_id" {
default = "aliyun_3_x64_20G_alibase_20221102.vhd"
}
# 建立VPC
resource "alicloud_vpc" "example_vpc1" {
vpc_name = "example_vpc1_name"
cidr_block = "10.0.0.0/16" # 指定網段
}
# 建立VPC
resource "alicloud_vpc" "example_vpc2" {
vpc_name = "example_vpc2_name"
cidr_block = "30.0.0.0/16" # 指定網段
}
# 建立交換器
resource "alicloud_vswitch" "example_vsw1" {
vswitch_name = "example_vsw1_name"
cidr_block = "10.0.1.0/24"
vpc_id = alicloud_vpc.example_vpc1.id
zone_id = data.alicloud_zones.available_zones.zones.0.id
}
# 建立交換器
resource "alicloud_vswitch" "example_vsw2" {
vswitch_name = "example_vsw2_name"
cidr_block = "30.0.1.0/24"
vpc_id = alicloud_vpc.example_vpc2.id
zone_id = data.alicloud_zones.available_zones.zones.1.id
}
# 建立安全性群組
resource "alicloud_security_group" "example_security_group1" {
security_group_name = "example_security_group1_name"
vpc_id = alicloud_vpc.example_vpc1.id
}
# 建立安全性群組規則,需按實際訪問流量修改協議與連接埠號碼
resource "alicloud_security_group_rule" "allow_internet1" {
type = "ingress"
ip_protocol = "icmp"
nic_type = "intranet"
policy = "accept"
port_range = "-1/-1"
priority = 1
security_group_id = alicloud_security_group.example_security_group1.id
cidr_ip = "0.0.0.0/0"
}
# 建立安全性群組
resource "alicloud_security_group" "example_security_group2" {
security_group_name = "example_security_group2_name"
vpc_id = alicloud_vpc.example_vpc2.id
}
# 建立安全性群組規則,需按實際訪問流量修改協議與連接埠號碼
resource "alicloud_security_group_rule" "allow_internet2" {
type = "ingress"
ip_protocol = "icmp"
nic_type = "intranet"
policy = "accept"
port_range = "-1/-1"
priority = 1
security_group_id = alicloud_security_group.example_security_group2.id
cidr_ip = "0.0.0.0/0"
}
# 建立ECS執行個體
resource "alicloud_instance" "example_instance1" {
instance_name = "example_instance1_name"
vswitch_id = alicloud_vswitch.example_vsw1.id
instance_type = var.instance_type
image_id = var.image_id
system_disk_category = "cloud_essd"
security_groups = [alicloud_security_group.example_security_group1.id]
instance_charge_type = "PostPaid"
spot_strategy = "SpotWithPriceLimit"
}
# 建立EIP
resource "alicloud_eip_address" "example_eip" {
address_name = "example_eip_name"
isp = "BGP"
netmode = "public"
bandwidth = "1"
payment_type = "PayAsYouGo"
}
# 綁定ECS和EIP
resource "alicloud_eip_association" "example_eip_ecs_association" {
allocation_id = alicloud_eip_address.example_eip.id
instance_type = "EcsInstance"
instance_id = alicloud_instance.example_instance1.id
}
# 建立ECS執行個體
resource "alicloud_instance" "example_instance2" {
instance_name = "example_instance2_name"
vswitch_id = alicloud_vswitch.example_vsw2.id
instance_type = var.instance_type
image_id = var.image_id
system_disk_category = "cloud_essd"
security_groups = [alicloud_security_group.example_security_group2.id]
instance_charge_type = "PostPaid"
spot_strategy = "SpotWithPriceLimit"
}
# 建立自訂路由表
resource "alicloud_route_table" "example_route_table1" {
route_table_name = "example_route_table1_name"
vpc_id = alicloud_vpc.example_vpc1.id
}
# 將路由表與交換器綁定
resource "alicloud_route_table_attachment" "example_route_table_attachment1" {
vswitch_id = alicloud_vswitch.example_vsw1.id
route_table_id = alicloud_route_table.example_route_table1.id
}
# 建立自訂路由表
resource "alicloud_route_table" "example_route_table2" {
route_table_name = "example_route_table2_name"
vpc_id = alicloud_vpc.example_vpc2.id
}
# 將路由表與交換器綁定
resource "alicloud_route_table_attachment" "example_route_table_attachment2" {
vswitch_id = alicloud_vswitch.example_vsw2.id
route_table_id = alicloud_route_table.example_route_table2.id
}
# 建立VPC對等串連
resource "alicloud_vpc_peer_connection" "example_vpc_peer" {
peer_connection_name = "example_vpc_peer_name"
vpc_id = alicloud_vpc.example_vpc1.id
accepting_ali_uid = "1234****" # 對端VPC所屬的帳號I,本樣本建立同帳號對等串連。如果建立跨帳號對等串連,需建立alicloud_vpc_peer_connection_accepter,確保對端帳號接受對等串連。
accepting_region_id = "cn-hangzhou"
accepting_vpc_id = alicloud_vpc.example_vpc2.id
}
# 配置對等串連的路由
resource "alicloud_route_entry" "example_peer_route1" {
route_table_id = alicloud_route_table.example_route_table1.id
destination_cidrblock = "30.0.0.0/16"
nexthop_type = "VpcPeer"
nexthop_id = alicloud_vpc_peer_connection.example_vpc_peer.id
}
# 配置對等串連的路由
resource "alicloud_route_entry" "example_peer_route2" {
route_table_id = alicloud_route_table.example_route_table2.id
destination_cidrblock = "10.0.0.0/16"
nexthop_type = "VpcPeer"
nexthop_id = alicloud_vpc_peer_connection.example_vpc_peer.id
}
# 建立IPv4網關
resource "alicloud_vpc_ipv4_gateway" "example_ipv4gw" {
ipv4_gateway_name = "example_ipv4gw_name"
vpc_id = alicloud_vpc.example_vpc1.id
enabled = true
}
# 添加路由指向IPv4網關
resource "alicloud_route_entry" "example_igw_route" {
route_table_id = alicloud_route_table.example_route_table1.id
destination_cidrblock = "0.0.0.0/0"
nexthop_type = "Ipv4Gateway"
nexthop_id = alicloud_vpc_ipv4_gateway.example_ipv4gw.id
}公網入方向安全引流(第三方安全裝置)
IPv4 網關僅能集中控制訪問公網的流量。對於進入 VPC 的公網流量,使用IPv4網關綁定的網關路由表,將公網入向流量導向安全裝置進行深度檢測與過濾,防止惡意攻擊和未經授權的訪問,實現安全防護。結合自訂路由表,還可將出向流量引流至安全裝置,實現出入方向的全面安全防護。
IPv4網關只能綁定網關路由表(即邊界網關類型的路由表)。每個VPC僅支援建立1個IPv4網關和1個網關路由表,二者一對一綁定。
單點架構
GWLB高可用架構
單點架構下,安全裝置一旦發生故障,將會影響業務系統的可用性。使用網關型負載平衡GWLB,將安全裝置進行高可用部署,可以消除單點故障。
IPv4公網流量入方向路徑 | IPv4公網流量出方向路徑 |
1. IPv4流量通過IPv4網關進入業務VPC。 2. 根據網關路由表,將流量發送到GWLBe。 3. GWLBe將流量轉換髮往GWLB,由GWLB將流量轉寄到安全裝置。 4. 安全裝置完成安全檢查後,將流量轉回到GWLB,通過私網串連將流量轉到GWLBe。 5. 根據GWLBe子網配置的路由表,將流量發送到商務服務器。 | 1. 根據商務服務器子網配置的路由表,將流量發送到GWLBe。 2. GWLBe將流量發往GWLB,GWLB將流量轉寄到安全裝置。 3. 安全裝置完成安全檢查後,將流量轉回到GWLB,通過私網串連將流量轉到GWLBe。 4. 根據GWLBe子網配置的路由表,將流量發送到IPv4網關。 5. IPv4網關將流量路由至公網。 |
控制台
綁定網關路由表
在目標IPv4網關詳情頁,單擊立即綁定;或在目標網關路由表詳情頁的已綁定的邊界網關頁簽下,單擊綁定邊界網關,勾選目標IPv4網關。
解除綁定網關路由表
在目標IPv4網關詳情頁,或目標網關路由表詳情頁的已綁定的邊界網關頁簽下,單擊解除綁定。
API
調用AssociateRouteTableWithGateway綁定網關路由表。
調用DissociateRouteTableFromGateway解除綁定網關路由表。
Terraform
Resource:alicloud_vpc_gateway_route_table_attachment
# 指定IPv4網關所在的地區
provider "alicloud" {
region = "cn-hangzhou"
}
# 指定IPv4網關的ID
variable "ipv4_gateway_id" {
default = "ipv4gw-hp3v******" # 修改為IPv4網關的實際ID
}
# 指定網關路由表的ID
variable "route_table_id" {
default = "vtb-hp3w******" # 修改為網關路由表的實際ID
}
# 綁定網關路由表
resource "alicloud_vpc_gateway_route_table_attachment" "example_attachment" {
ipv4_gateway_id = var.ipv4_gateway_id
route_table_id = var.route_table_id
}
更多資訊
使用限制
一個VPC下只支援建立一個IPv4網關,且一個IPv4網關僅能關聯一個VPC。
VPC記憶體在EIP網卡可見度模式的資源時,不支援建立IPv4網關。
例如,VPC中的公網NAT Gateway的EIP繫結模式為多 EIP 網卡可見度模式時,不相容IPv4網關。需要調用ModifyNatGatewayAttribute,修改
EipBindMode為NAT模式,使其相容IPv4網關。多帳號共用VPC情境下,資源所有者可以建立IPv4網關或對已建立的IPv4網關進行修改或刪除,而資源使用者對IPv4網關沒有操作許可權。
通過EIP或者任播Elastic IP Address綁定私網傳統型負載平衡CLB時,返回公網的流量不受IPv4網關的限制。
計費說明
IPv4網關不收取費用。
公網流量費用是由公網IP收取,例如EIP或ECS/CLB固定公網IP,詳情參考對應產品計費文檔。
支援的地區
地區 | 支援IPv4網關的地區 |
亞太地區-中國 | 華東1(杭州)、華東2(上海)、華東5 (南京-本地地區-關停中)、華北1(青島)、華北2(北京)、華北3(張家口)、華北5(呼和浩特)、華北6(烏蘭察布)、華南1(深圳)、華南2(河源)、華南3(廣州)、西南1(成都)、中國香港、華中1(武漢-本地地區)、華東6(福州-本地地區-關停中) |
亞太地區-其他 | 日本(東京)、韓國(首爾)、新加坡、馬來西亞(吉隆坡)、印尼(雅加達)、菲律賓(馬尼拉)、泰國(曼穀) |
歐美地區 | 德國(法蘭克福)、英國(倫敦)、美國(矽谷)、美國(維吉尼亞)、墨西哥 |
中東 | 阿聯酋(杜拜)、沙特(利雅得) 重要 沙特(利雅得)地區由夥伴營運。 |
配額
配額名稱 | 描述 | 預設限制 | 提升配額 |
無 | 單個VPC支援的IPv4網關個數 | 1個 | 無法提升 |
單個IPv4網關支援的網關路由表個數 | 1個 |