Todos os produtos
Search
Central de documentação

Virtual Private Cloud:IPv4 gateway

Última atualização: Jul 03, 2026

O gateway IPv4 é um componente de borda da VPC que centraliza o controle de todo o tráfego IPv4 público de entrada e saída de uma Virtual Private Cloud (VPC). Sem esse controle centralizado, o acesso não gerenciado à Internet — como equipes de negócios atribuindo endereços IP públicos a instâncias do Elastic Compute Service (ECS) sem aprovação — dificulta a aplicação de políticas de segurança consistentes pelas equipes de operações e manutenção (O&M). O gateway IPv4 e suas tabelas de rotas associadas permitem direcionar todo o tráfego destinado à Internet por um único ponto de controle.

Faturamento: Os gateways IPv4 são gratuitos. Os custos de transferência de dados são gerados pelos endereços IP públicos associados aos seus recursos — EIPs, endereços IP públicos estáticos de instâncias ECS ou Classic Load Balancer (CLB) — e não pelo próprio gateway.

Quando usar um gateway IPv4

Acesso padrão à Internet

Controle centralizado com gateway IPv4

Exemplo

Uma instância ECS acessa a Internet diretamente usando um endereço IP público estático, um Elastic IP Address (EIP) ou um gateway NAT da Internet.

Gerenciamento centralizado de todo o tráfego de acesso à Internet da VPC.

Caso de uso

Poucas instâncias ECS exigem acesso direto e independente à Internet. Ideal quando os requisitos de acesso mudam frequentemente.

Arquiteturas de rede em grande escala e multicamadas. Ambientes empresariais com requisitos rigorosos de segurança e conformidade de rede.

Complexidade

Simples e rápido. Nenhuma configuração de rota necessária.

Exige planejamento de rede e configuração de regras de roteamento.

Flexibilidade

Cada instância é gerenciada independentemente, sem impacto nas demais.

Alterações nas políticas de rede afetam todas as instâncias na VPC.

Segurança

A proteção depende das regras do grupo de segurança configuradas para cada instância.

Aplica políticas de rede consistentes em toda a VPC por meio de controle centralizado de rotas.

Gateway IPv4 vs. Gateway NAT da Internet

O gateway IPv4 e o gateway NAT da Internet têm finalidades diferentes e podem ser usados em conjunto. Para detalhes sobre como combiná-los, consulte Acesso à Internet.

Gateway IPv4

Gateway NAT da Internet

Finalidade

Componente de borda da VPC que controla o tráfego IPv4 público.

Dispositivo de Network Address Translation (NAT) dentro da VPC.

Cenários

Controlar centralmente o tráfego de acesso à Internet.

Fornecer uma saída unificada para o tráfego destinado à Internet.

Acesso à Internet

Não. Controla o tráfego da Internet, mas não fornece conectividade por si só.

Fornece acesso à Internet ao associar EIPs. (Os EIPs fornecem a conectividade, não o gateway NAT em si.)

Como funciona

Após criar um gateway IPv4 para uma VPC, os vSwitches se enquadram em duas categorias com base em suas tabelas de rotas associadas:

  • vSwitch público: A tabela de rotas associada contém uma rota com Destination CIDR Block 0.0.0.0/0 e Next Hop definido como o gateway IPv4. Os recursos neste vSwitch podem acessar a Internet se possuírem um endereço IP público.

  • vSwitch privado: A tabela de rotas associada não contém uma rota apontando para o gateway IPv4. Os recursos neste vSwitch não podem acessar a Internet diretamente — mesmo que possuam um endereço IP público. O acesso à Internet é determinado pela rota, não pelo endereço IP.

Controlar o acesso à Internet usando um gateway IPv4

Ao ativar um gateway IPv4, ele passa a gerenciar centralmente todo o tráfego de Internet da VPC. Configure uma rota 0.0.0.0/0 em cada tabela de rotas de vSwitch que deva ter acesso à Internet, definindo o gateway IPv4 como o próximo salto. Na página de detalhes da VPC, verifique o campo IPv4 Internet Access Mode para confirmar se o gateway IPv4 está controlando ativamente o tráfego de Internet.

Antes da ativação, o tráfego de Internet na VPC permanece inalterado. Pode ocorrer uma breve interrupção de rede durante a ativação devido à troca dos caminhos de tráfego.

image

Usar um gateway IPv4 com um gateway NAT da Internet

Implante o gateway NAT da Internet em um vSwitch público. Para conceder acesso à Internet a instâncias ECS em um vSwitch privado, configure uma rota apontando para o gateway NAT da Internet. O tráfego dessas instâncias destinado à Internet fluirá então para o gateway NAT, que utiliza seu endereço IP público associado para alcançar a Internet.

image

Antes de combinar os dois gateways, verifique a configuração EipBindMode do seu gateway NAT da Internet:

  • Um gateway NAT da Internet criado no console usa o modo NAT por padrão. Ao chamar a API CreateNatGateway, defina EipBindMode como NAT. Para alterar o modo após a criação, chame ModifyNatGatewayAttribute.

  • Se o seu gateway NAT usar o modo MULTI_BINDED (modo multi-EIP-to-ENI), não será possível criar um gateway IPv4, pois os dois são incompatíveis.

  • Se já existir um gateway IPv4 e você criar um gateway NAT da Internet com EipBindMode=MULTI_BINDED, não será possível associar EIPs a esse gateway NAT.

Configure as rotas para os recursos do vSwitch privado antes de ativar o gateway IPv4 para garantir que eles mantenham o acesso à Internet após a ativação.

Excluir um gateway IPv4

Antes de excluir o gateway IPv4, desassocie a tabela de rotas do gateway. Em seguida, na coluna Actions do gateway IPv4 desejado, clique em Delete ou chame a API DeleteIpv4Gateway.

O comportamento da exclusão depende do modo selecionado:

  • Modo público: O sistema remove automaticamente todas as rotas que apontam para o gateway IPv4. A VPC retorna ao seu estado inicial, permitindo que instâncias com endereço IP público acessem a Internet diretamente.

  • Modo privado: Exclua manualmente todas as rotas que apontam para o gateway IPv4 da tabela de rotas antes de prosseguir. Após a exclusão, todos os recursos na VPC perdem o acesso à Internet, independentemente de possuírem ou não um endereço IP público. Para restaurar o acesso direto à Internet, crie um novo gateway IPv4 e exclua-o no modo público.

Importante

Após excluir um gateway IPv4 no modo privado, todos os recursos da VPC perdem o acesso à Internet. Proceda com cautela.

image

Controlar centralmente o acesso à Internet

Utilize um gateway IPv4 para aplicar políticas consistentes de acesso à Internet em toda a VPC. As etapas abaixo orientam a criação e ativação de um gateway IPv4, além da configuração de roteamento para que o gateway controle todo o tráfego destinado à Internet.

Console

  1. Acesse a página IPv4 Gateway no console VPC. Selecione a região onde a VPC está implantada e clique em Create IPv4 Gateway.

  2. Na página Create IPv4 Gateway, selecione a VPC para a qual deseja centralizar o acesso à Internet.

  3. Na página Activate IPv4 Gateway, selecione a tabela de rotas associada ao vSwitch público. O sistema adiciona automaticamente uma rota 0.0.0.0/0 apontando para o gateway IPv4, permitindo que recursos com endereço IP público no vSwitch público acessem a Internet.

    • Se já existir uma rota 0.0.0.0/0 na tabela de rotas, clique em Activate Later. Atualize o próximo salto da rota existente para o gateway IPv4 e, em seguida, ative-o.

    • Se uma instância ECS usar um endereço IP público associado a um gateway NAT da Internet: coloque a instância ECS e o gateway NAT em vSwitches separados. A tabela de rotas do vSwitch do gateway NAT deve conter uma rota 0.0.0.0/0 apontando para o gateway IPv4. A tabela de rotas do vSwitch da ECS deve conter uma rota apontando para o gateway NAT no vSwitch público.

    • Se uma instância ECS usar um endereço IP público estático ou um EIP associado diretamente: adicione uma rota 0.0.0.0/0 apontando para o gateway IPv4.

API

  • Chame a API CreateIpv4Gateway para criar um gateway IPv4.

  • Chame a API EnableVpcIpv4Gateway para ativá-lo. Defina RouteTableList como a tabela de rotas associada ao vSwitch público. Se esse parâmetro for omitido, chame CreateRouteEntry para adicionar manualmente uma rota 0.0.0.0/0 apontando para o gateway IPv4.

Terraform

Diferentemente do console, a ativação de um gateway IPv4 via Terraform não adiciona automaticamente uma rota 0.0.0.0/0. Configure a rota manualmente.

Recursos: 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
Fontes de dados: alicloud_zones
# Specify the region where you want to create the IPv4 gateway.
provider "alicloud" {
  region = "cn-hangzhou"
}

# Automatically obtain the list of zones where vSwitches can be created based on the data source.
data "alicloud_zones" "available_zones" {
  available_resource_creation = "VSwitch" # Query the zones where resources can be created in the VPC.
}

# Create a VPC.
resource "alicloud_vpc" "example_vpc" {
  vpc_name   = "example_vpc_name"
  cidr_block = "10.0.0.0/16" # Specify the CIDR block.
}

# Define the vSwitch configurations.
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
    }
  }

  # Define the route table configurations.
  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"
    }
  }

  # Define the instance configurations.
  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"
    }
  }

  # Define the EIP configurations.
  eips = {
    eip1 = {
      name = "example_eip1_name"
    }
    eip2 = {
      name = "example_eip2_name"
    }
  }

  # Define the SNAT entry configurations.
  snat_entries = {
    snat1 = {
      instance_key = "instance2"
    }
    snat2 = {
      instance_key = "instance3"
    }
  }
}

# Create multiple vSwitches.
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
}

# Create multiple custom route tables.
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
}

# Associate the route tables with the vSwitches.
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
}

# Specify the instance type.
variable "instance_type" {
  default = "ecs.e-c1m1.large"
}

# Specify the image ID.
variable "image_id" {
  default = "aliyun_3_x64_20G_alibase_20221102.vhd"
}

# Create a security group.
resource "alicloud_security_group" "example_security_group" {
  security_group_name = "example_security_group_name"
  vpc_id              = alicloud_vpc.example_vpc.id
}

# Create a security group rule. Modify the protocol and port number as needed.
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"
}

# Create multiple servers.
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"           # Set the billing method to pay-as-you-go.
  spot_strategy        = "SpotWithPriceLimit" # Set the instance as a spot instance for which you can specify a maximum price.
}

# Create multiple EIPs.
resource "alicloud_eip_address" "example_eip" {
  for_each = local.eips

  address_name = each.value.name
  isp          = "BGP"
  netmode      = "public"
  bandwidth    = "1"
  payment_type = "PayAsYouGo"
}

# Associate the ECS instance with an 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
}

# Create an Internet 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" # Specify the EIP association mode. The value must be NAT.
  payment_type     = "PayAsYouGo"
}

# Associate the EIP with the Internet 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
}

# Add a route that points to the 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
}

# Add a route that points to the 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
}

# Create an SNAT entry.
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
}

# Create an IPv4 gateway.
resource "alicloud_vpc_ipv4_gateway" "example_ipv4gw" {
  ipv4_gateway_name = "example_ipv4gw_name"
  vpc_id            = alicloud_vpc.example_vpc.id
  enabled           = true
}

# Add a route that points to the IPv4 gateway.
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
}

# Add a route that points to the IPv4 gateway.
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
}

Bloco CIDR público de uso privado

Por padrão, uma VPC utiliza blocos CIDR privados RFC 1918: 10.0.0.0/8, 172.16.0.0/12 e 192.168.0.0/16. Quando uma VPC se conecta a um data center on-premises ou a uma VPC par que usa um bloco CIDR não padrão (por exemplo, 30.0.0.0/16), os recursos na nuvem com acesso à Internet enviam solicitações para esse bloco não padrão pela Internet, em vez de seguir a rota privada configurada.

Após ativar um gateway IPv4, todo o tráfego é encaminhado com base na tabela de rotas. Adicione uma rota 0.0.0.0/0 apontando para o gateway IPv4 no vSwitch. Com base na regra de correspondência de prefixo mais longo, o tráfego destinado à ECS02 corresponde à rota 30.0.0.0/16 e é roteado para a VPC par, em vez de passar pela Internet.

image

Console

  1. Acesse a página IPv4 Gateway no console VPC. Selecione a região onde a VPC está implantada e clique em Create IPv4 Gateway.

  2. Na página Create IPv4 Gateway, selecione a VPC que precisa acessar o bloco CIDR privado não padrão.

  3. Na página Activate IPv4 Gateway, selecione a tabela de rotas associada ao vSwitch que precisa acessar o bloco CIDR não padrão. O sistema adiciona automaticamente uma rota 0.0.0.0/0 apontando para o gateway IPv4, permitindo que os recursos no vSwitch alcancem o bloco CIDR não padrão por meio de rotas mais específicas.

    • Se a tabela de rotas já contiver uma rota 0.0.0.0/0, clique em Activate Later, exclua essa rota e, em seguida, ative novamente.

    • Após a ativação, o gateway IPv4 controla centralmente o tráfego destinado à Internet, e todo o tráfego é encaminhado com base na tabela de rotas.

API

  • Chame a API CreateIpv4Gateway para criar um gateway IPv4.

  • Chame a API EnableVpcIpv4Gateway para ativá-lo. Defina RouteTableList como a tabela de rotas associada ao vSwitch público. Se esse parâmetro for omitido, chame CreateRouteEntry para adicionar manualmente uma rota 0.0.0.0/0 apontando para o gateway IPv4.

Terraform

Diferentemente do console, a ativação de um gateway IPv4 via Terraform não adiciona automaticamente uma rota 0.0.0.0/0. Configure a rota manualmente.

Recursos: 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
Fontes de dados: alicloud_zones
Neste exemplo, as VPCs na conexão de peering pertencem à mesma conta. Para uma conexão de peering entre contas diferentes, crie também um alicloud_vpc_peer_connection_accepter para que a conta par aceite a solicitação.
# Specify the region where you want to create the IPv4 gateway.
provider "alicloud" {
  region = "cn-hangzhou"
}

# Automatically obtain the list of zones where vSwitches can be created based on the data source.
data "alicloud_zones" "available_zones" {
  available_resource_creation = "VSwitch" # Query the zones where resources can be created in the VPC.
}

# Specify the instance type.
variable "instance_type" {
  default = "ecs.e-c1m1.large"
}

# Specify the image ID.
variable "image_id" {
  default = "aliyun_3_x64_20G_alibase_20221102.vhd"
}

# Create a VPC.
resource "alicloud_vpc" "example_vpc1" {
  vpc_name   = "example_vpc1_name"
  cidr_block = "10.0.0.0/16" # Specify the CIDR block.
}

# Create a VPC.
resource "alicloud_vpc" "example_vpc2" {
  vpc_name   = "example_vpc2_name"
  cidr_block = "30.0.0.0/16" # Specify the CIDR block.
}

# Create a vSwitch.
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
}

# Create a vSwitch.
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
}

# Create a security group.
resource "alicloud_security_group" "example_security_group1" {
  security_group_name = "example_security_group1_name"
  vpc_id              = alicloud_vpc.example_vpc1.id
}

# Create a security group rule. Modify the protocol and port number as needed.
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"
}

# Create a security group.
resource "alicloud_security_group" "example_security_group2" {
  security_group_name = "example_security_group2_name"
  vpc_id              = alicloud_vpc.example_vpc2.id
}

# Create a security group rule. Modify the protocol and port number as needed.
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"
}

# Create an ECS instance.
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"
}

# Create an EIP.
resource "alicloud_eip_address" "example_eip" {
  address_name = "example_eip_name"
  isp          = "BGP"
  netmode      = "public"
  bandwidth    = "1"
  payment_type = "PayAsYouGo"
}

# Associate the ECS instance with an 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
}

# Create an ECS instance.
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"
}

# Create a custom route table.
resource "alicloud_route_table" "example_route_table1" {
  route_table_name = "example_route_table1_name"
  vpc_id           = alicloud_vpc.example_vpc1.id
}

# Associate the route table with the vSwitch.
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
}

# Create a custom route table.
resource "alicloud_route_table" "example_route_table2" {
  route_table_name = "example_route_table2_name"
  vpc_id           = alicloud_vpc.example_vpc2.id
}

# Associate the route table with the vSwitch.
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
}

# Create a VPC peering connection.
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****" # The ID of the account to which the peer VPC belongs. In this example, a same-account VPC peering connection is created. If you create a cross-account peering connection, you must create an alicloud_vpc_peer_connection_accepter to make sure that the peer account accepts the VPC peering connection request.
  accepting_region_id  = "cn-hangzhou"
  accepting_vpc_id     = alicloud_vpc.example_vpc2.id
}

# Configure a route for the peering connection.
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
}

# Configure a route for the peering connection.
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
}

# Create an IPv4 gateway.
resource "alicloud_vpc_ipv4_gateway" "example_ipv4gw" {
  ipv4_gateway_name = "example_ipv4gw_name"
  vpc_id            = alicloud_vpc.example_vpc1.id
  enabled           = true
}

# Add a route that points to the IPv4 gateway.
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
}

Redirecionar tráfego de entrada da Internet para um dispositivo de segurança

O gateway IPv4 centraliza o controle do tráfego de saída para a Internet. Para inspecionar também o tráfego de entrada, associe uma tabela de rotas do gateway ao gateway IPv4. A tabela de rotas do gateway redireciona o tráfego de entrada para um dispositivo de segurança, permitindo inspeção profunda e filtragem antes que ele alcance suas cargas de trabalho. Combinada com uma tabela de rotas personalizada no caminho de saída, essa configuração oferece proteção de segurança abrangente tanto para entrada quanto para saída.

Cada VPC suporta exatamente um gateway IPv4 e uma tabela de rotas do gateway, associados em uma relação um para um. Uma tabela de rotas do gateway é um tipo de tabela de rotas destinada a gateways de borda.
Para redirecionar o tráfego de entrada, modifique a entrada de rota do sistema na tabela de rotas do gateway e defina o próximo salto do bloco CIDR do vSwitch como o appliance de segurança. O botão Add Route Entry não está disponível nas tabelas de rotas do gateway — rotas personalizadas não podem ser adicionadas dessa forma.

Arquitetura de ponto único

image

Arquitetura de alta disponibilidade com GWLB

Em uma arquitetura de ponto único, a falha de um dispositivo de segurança afeta a disponibilidade de todo o sistema. Um Gateway Load Balancer (GWLB) permite implantar dispositivos de segurança em uma configuração de alta disponibilidade, eliminando pontos únicos de falha.

image

Todos os exemplos nesta arquitetura usam o endpoint do Gateway Load Balancer (GWLBe) como ponto de inserção de tráfego entre as cargas de trabalho e o gateway IPv4.

Caminho do tráfego IPv4 de entrada da Internet:

  1. O tráfego IPv4 entra na VPC de negócios através do gateway IPv4.

  2. A tabela de rotas do gateway direciona o tráfego para o GWLBe.

  3. O GWLBe encaminha o tráfego para o GWLB, que o distribui para um dispositivo de segurança.

  4. Após a verificação de segurança, o tráfego retorna ao GWLB e depois ao GWLBe através do PrivateLink.

  5. A tabela de rotas da sub-rede do GWLBe encaminha o tráfego para o servidor de negócios.

Caminho do tráfego IPv4 de saída para a Internet:

  1. A tabela de rotas da sub-rede do servidor de negócios direciona o tráfego para o GWLBe.

  2. O GWLBe encaminha o tráfego para o GWLB, que o distribui para um dispositivo de segurança.

  3. Após a verificação de segurança, o tráfego retorna ao GWLB e depois ao GWLBe através do PrivateLink.

  4. A tabela de rotas da sub-rede do GWLBe direciona o tráfego para o gateway IPv4.

  5. O gateway IPv4 roteia o tráfego para a Internet.

Para configurar a tabela de rotas do gateway: localize a rota do sistema correspondente ao bloco CIDR do vSwitch desejado, clique em Edit na coluna Actions e defina o GWLBe como o próximo salto. Após salvar, a entrada de rota aparecerá na aba Custom Route.

Console

Associar uma tabela de rotas do gateway

Na página de detalhes do gateway IPv4 desejado, clique em Bind. Alternativamente, na aba Associated Border Gateway da página de detalhes da tabela de rotas do gateway desejada, clique em Associate Border Gateway e selecione o gateway IPv4 alvo.

Desassociar uma tabela de rotas do gateway

Na página de detalhes do gateway IPv4 desejado, ou na aba Associated Border Gateway da página de detalhes da tabela de rotas do gateway, clique em Unbind.

API

Terraform

Recurso: alicloud_vpc_gateway_route_table_attachment
# Specify the region where the IPv4 gateway is deployed.
provider "alicloud" {
  region = "cn-hangzhou"
}

# Specify the ID of the IPv4 gateway.
variable "ipv4_gateway_id" {
  default = "ipv4gw-hp3v******" # Replace the value with the actual ID of the IPv4 gateway.
}

# Specify the ID of the gateway route table.
variable "route_table_id" {
  default = "vtb-hp3w******" # Replace the value with the actual ID of the gateway route table.
}

# Attach the gateway route table.
resource "alicloud_vpc_gateway_route_table_attachment" "example_attachment" {
  ipv4_gateway_id = var.ipv4_gateway_id
  route_table_id  = var.route_table_id
}

Limitações

  • Uma VPC suporta apenas um gateway IPv4, e um gateway IPv4 pode ser associado a apenas uma VPC.

  • Não é possível criar um gateway IPv4 se houver recursos na VPC operando no modo cut-through. Por exemplo, se o modo de associação de EIP de um gateway NAT da Internet na VPC estiver definido como multi-EIP-to-ENI (MULTI_BINDED), o gateway NAT da Internet será incompatível com um gateway IPv4. Chame ModifyNatGatewayAttribute para alterar o EipBindMode para NAT antes de criar o gateway IPv4.

  • Em uma VPC compartilhada, apenas o proprietário do recurso pode criar, modificar ou excluir um gateway IPv4. O principal não possui essas permissões.

  • Para instâncias CLB privadas com um EIP ou Anycast EIP associado, o comportamento varia conforme a região:

    • Nas demais regiões: O tráfego de acesso à Internet não é restrito pelo gateway IPv4.

    As regiões suportadas estão sujeitas a alterações.

    image

Regiões suportadas

Área

Regiões

Ásia-Pacífico - China

China (Hangzhou), China (Shanghai), China (Nanjing - Local Region - Decommissioning), China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Ulanqab), China (Shenzhen), China (Heyuan), China (Guangzhou), China (Chengdu), China (Hong Kong), China (Wuhan - Local Region), China (Fuzhou - Local Region - Decommissioning)

Ásia-Pacífico - Outras

Japão (Tóquio), Coreia do Sul (Seul), Singapura, Malásia (Kuala Lumpur), Indonésia (Jacarta), Filipinas (Manila), Tailândia (Bangkok)

Europa e Américas

Alemanha (Frankfurt), Reino Unido (Londres), EUA (Silicon Valley), EUA (Virginia), México

Oriente Médio

Emirados Árabes Unidos (Dubai), Arábia Saudita (Riad - Partner Region)

Cotas

Cota

Limite padrão

Ajustável

Gateways IPv4 por VPC

1

Não

Tabelas de rotas do gateway por gateway IPv4

1