Skip to main content

O que é o NAT Gateway?

O NAT Gateway (Network Address Translation Gateway) permite que instâncias em sub-redes privadas de uma VPC se conectem a serviços externos, garantindo que as conexões de entrada não autorizadas sejam bloqueadas. Este guia detalha como utilizar a API para criar, listar, consultar e excluir NAT Gateways, complementando o material tradicional de uso (como o uso via CLI) com exemplos diretos da API.

NAT Gateway

Visão Geral da API

A API NAT Gateway oferece os seguintes endpoints:

GET /latest/nat_gateways

Lista todos os NAT Gateways existentes em uma VPC.

Parâmetros:

  • vpc_id (obrigatório, query string): Identificador da VPC.
  • sort, page e items_per_page (opcionais): Controle de ordenação e paginação.
  • x-tenant-id (obrigatório, header): Identificação do tenant.
POST /latest/nat_gateways

Cria um novo NAT Gateway para uma VPC específica e uma zona de disponibilidade.

Parâmetros:

  • x-tenant-id (header obrigatório)

Corpo da requisição (JSON): Deve conter os dados:

  • name: Nome do NAT Gateway.
  • vpc_id: Identificador da VPC.
  • zone: Zona de disponibilidade.
  • description (opcional): Descrição do NAT Gateway.

Exemplo de payload

{
"name": "NatGateway Name",
"vpc_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"zone": "a",
"description": "Descrição do NAT Gateway"
}

Para obter os detalhes de um NAT Gateway específico:

GET /latest/nat_gateways/{nat_gateway_id}

Parâmetros:

  • nat_gateway_id (obrigatório, path): Identificador do NAT Gateway
  • x-tenant-id (header obrigatório)

Para excluir um NAT Gateway da VPC:

DELETE /latest/nat_gateways/{nat_gateway_id}

Parâmetros:

  • nat_gateway_id (obrigatório, path)
  • x-tenant-id (header obrigatório)

As respostas da API seguem os padrões descritos nos schemas da documentação (ex.: NatGatewayListResponse, NatGatewayCreateResponse e NatGatewayDetailsResponse) e retornam informações como status, datas de criação/atualização e o IP associado.

Pré-Requisitos

Antes de utilizar a API, verifique que:

  • Uma VPC já está configurada.
  • Há sub-redes privadas disponíveis para as instâncias.
  • As credenciais e permissões (por meio de OAuth2 ou API Key) estão corretamente configuradas.
  • O header x-tenant-id está incluído em todas as requisições, identificando o tenant do projeto.

Casos de Uso

O NAT Gateway é útil para:

  • Permitir que instâncias privadas acessem a internet para baixar atualizações ou consumir APIs externas.
  • Aumentar a segurança ao impedir conexões de entrada não autorizadas diretamente para instâncias privadas.
  • Fornecer um IP público fixo para tráfego de saída, facilitando listas de permissões em serviços externos.

Exemplos de Uso

Listando NAT Gateways

GET /latest/nat_gateways?vpc_id=SEU_VPC_ID&page=1&items_per_page=10
Headers:
x-tenant-id: SEU_TENANT_ID

Resposta Esperada: Um JSON contendo uma lista de NAT Gateways e informações de paginação, conforme o schema NatGatewayListResponse.

Criando um NAT Gateway

POST /latest/nat_gateways
Headers:
x-tenant-id: SEU_TENANT_ID
Body (JSON):
{
"name": "my-nat-gw",
"vpc_id": "9cf112d5-f3fa-4112-9fc2-4b5b750ef2b4",
"zone": "br-se1-a",
"description": "NAT Gateway para acesso à internet"
}

Resposta Esperada: Um JSON com o ID do NAT Gateway criado e o status (ex.: pending), conforme o schema NatGatewayCreateResponse

Consultando Detalhes de um NAT Gateway

GET /latest/nat_gateways/{nat_gateway_id}
Headers:
x-tenant-id: SEU_TENANT_ID

Resposta Esperada: Detalhes completos do NAT Gateway, incluindo IP, datas de criação/atualização e status (ex.: created), conforme o schema NatGatewayDetailsResponse.

Excluindo um NAT Gateway

DELETE /latest/nat_gateways/{nat_gateway_id}
Headers:
x-tenant-id: SEU_TENANT_ID

Observação: Ao excluir, o endereço IP público associado será liberado e o tráfego das instâncias passará a ser roteado via Shared NAT.

Gerenciamento de Endereços IP

  • O NAT Gateway mapeia os endereços IPv4 privados das instâncias para seu endereço IPv4 público associado.
  • O NAT Gateway é automaticamente associado a um endereço IPv4 público alocado via API da MGC.
  • Somente endereços IPv4 públicos não associados a outros recursos podem ser vinculados ao NAT Gateway.
  • Apenas um IP público pode ser associado a um NAT Gateway específico.
  • O endereço IPv4 privado do NAT Gateway é fixo e não pode alterado.
  • O NAT Gateway suporta tráfego de saída para TCP, UDP e ICMP (ping).

Medição e Preços do NAT Gateway

Atualmente, o NAT Gateway não possui cobrança fixa baseada no tempo provisionado ou na quantidade de dados trafegados. Apenas o consumo de Data Transfer Egress (tráfego de saída) será cobrado conforme tabela informada nesse link: https://magalu.cloud/precos/network/

Faturamento e Transparência

  • O tráfego de saída do NAT Gateway será exibido separadamente no detalhamento da fatura.
  • Os clientes poderão visualizar a categorização de consumo entre Shared NAT, Public IP e NAT Gateway.

Perguntas Frequentes (FAQ)

  1. O NAT Gateway suporta tráfego de entrada?

    Não. O NAT Gateway somente permite tráfego de saída das instâncias privadas para a internet. Para tráfego de entrada, você pode usar IP Públicos associados diretamente às instâncias de VMs ou utilizar um Load Balancer para balanceamento de tráfego.

  2. Posso definir qual endereço IP público será associado ao NAT Gateway? Não. O IP público é automaticamente alocado pela API do MGC NET e não pode ser escolhido manualmente.

  3. Como visualizar o tráfego de saída do NAT Gateway? A partir do MGC console > financeiro, você pode acessar a seção de relatórios de consumo de Data Transfer Egress, onde o tráfego de saída será categorizado.

  4. O NAT Gateway pode ser usado para instâncias em sub-redes públicas? Não. O NAT Gateway é projetado para instâncias em sub-redes privadas. Para instâncias em sub-redes públicas, use um IP público direto.

  5. Qual é a política de exclusão do NAT Gateway?

    Se você excluir um NAT Gateway:

    • O endereço IP público associado **será liberado automaticamente.
    • Quando você exclui o NAT Gateway de uma VPC, o tráfego de saída (egress) para a internet não é interrompido. Em vez disso, ele passa a ser roteado pelo fluxo de SharedNat, utilizando um endereço IP compartilhado. Assim, as instâncias que dependiam do NAT Gateway continuam conectadas à internet, embora com um endereço diferente do originalmente associado.

📌 Ainda tem dúvidas?

Visite nossa Central de Suporte ou entre em contato com a equipe de atendimento.