Configurar e gerenciar a conversão de endereços de rede com o Private NAT

Nesta página, mostramos como configurar a conversão de endereços de rede (NAT) usando a NAT particular. Antes de definir sua configuração de NAT particular, leia sobre NAT particular.

Antes de começar

Conclua as tarefas a seguir antes de configurar o Private NAT.

Acessar permissões do IAM

O papel Administrador de rede do Compute (roles/compute.networkAdmin) concede permissões para criar um gateway NAT no Cloud Router, reservar e atribuir endereços IP de NAT e especificar sub-redes (sub-redes) cujo tráfego deve usar a conversão de endereços de rede pelo gateway NAT.

Configurar o Google Cloud

Antes de começar, configure os seguintes itens no Google Cloud.

  1. Faça login na sua conta do Google Cloud. Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
  2. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  3. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  4. Ative a API Compute Engine.

    Ative a API

  5. Instale a CLI do Google Cloud.
  6. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init
  7. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  8. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  9. Ative a API Compute Engine.

    Ative a API

  10. Instale a CLI do Google Cloud.
  11. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init

As instruções da CLI do Google Cloud nesta página presumem que você tenha definido o ID do projeto antes de emitir comandos.

  1. Configure um código de projeto com o seguinte comando:

    gcloud config set project PROJECT_ID
    
  2. É possível também ver um ID projeto já configurado:

    gcloud config list --format='text(core.project)'
    

Criar uma sub-rede NAT de finalidade PRIVATE_NAT

Antes de configurar a NAT particular, crie uma sub-rede NAT com a finalidade PRIVATE_NAT. A sub-rede NAT precisa estar na mesma região em que você planeja criar o gateway NAT particular. O gateway NAT particular usa intervalos de endereços IP dessa sub-rede para executar NAT. Verifique se essa sub-rede não se sobrepõe a uma sub-rede existente em nenhuma das redes conectadas. Não é possível criar recursos nesta sub-rede. Essa sub-rede é usada apenas para o Private NAT.

Console

  1. No Console do Google Cloud, acesse a página Redes VPC.

    Acessar redes VPC

  2. Para mostrar a página de detalhes da rede VPC, clique no nome dela.

  3. Clique na guia Sub-redes.

  4. Clique em Add subnet. Na caixa de diálogo Adicionar uma sub-rede, faça isto:

    1. Forneça um nome para a sub-rede.
    2. Selecione uma região.
    3. Em Finalidade, selecione Private NAT.
    4. Insira um Intervalo de endereços IP, que é o intervalo IPv4 principal da sub-rede.

      Se você selecionar um intervalo que não seja um endereço RFC 1918, confirme se não há incompatibilidade entre o intervalo e uma configuração existente. Para mais informações sobre intervalos de sub-rede IPv4 válidos, consulte Intervalos de sub-rede IPv4.

  5. Clique em Adicionar.

gcloud

Use o comando compute networks subnet create para criar a sub-rede.

    gcloud compute networks subnets create NAT_SUBNET \
      --network=NETWORK \
      --region=REGION \
      --range=IP_RANGE \
      --purpose=PRIVATE_NAT

Substitua:

  • NAT_SUBNET: o nome do intervalo de sub-rede do Private NAT a ser criado.
  • NETWORK: a rede à qual a sub-rede pertence.
  • REGION: a região da sub-rede a ser criada. Se não for especificado, talvez seja solicitado que você selecione uma região (apenas no modo interativo).
  • IP_RANGE: o espaço de IP alocado para essa sub-rede no formato CIDR. Verifique se IP_RANGE leva em conta o uso de duas vezes o tamanho das portas necessárias por VM.

Criar configurações do Private NAT

É possível configurar um gateway NAT particular para ser compatível com as seguintes ofertas de NAT particular:

  • Inter-VPC NAT: executa NAT no tráfego entre redes VPC configuradas como spokes VPC que estão conectadas a um hub comum do Network Connectivity Center.
  • NAT híbrida (pré-lançamento): executa NAT no tráfego entre redes VPC e redes locais ou outras redes de provedores de nuvem conectadas pelas soluções corporativas de conectividade híbrida do Google Cloud.

Configurar o Private NAT

Crie um gateway NAT particular com uma regra NAT personalizada que executa NAT no tráfego entre sua rede VPC e outras redes.

Console

  1. No Console do Google Cloud, acesse a página do Cloud NAT.

    Acesse o Cloud NAT

  2. Clique em Primeiros passos ou Criar gateway Cloud NAT.

  3. Digite um nome de gateway.

  4. Em Tipo de NAT, selecione Particular.

  5. Selecione uma rede VPC para o gateway NAT.

  6. Defina a região para o gateway NAT.

  7. Selecione ou crie um Cloud Router na região.

  8. Verifique se Instâncias de VM está selecionada como o tipo de endpoint de origem.

  9. Na lista Origem, selecione Personalizado.

  10. Selecione uma sub-rede em que você quer executar NAT.

  11. Se você quiser especificar mais intervalos, clique em Adicionar sub-rede e intervalo de IP.

  12. Clique em Adicionar uma regra.

  13. No campo Número da regra, digite qualquer valor entre 1 e 65000.

  14. Para Correspondência, selecione uma das seguintes opções:

    • Em "Inter-VPC NAT", selecione Hub do Network Connectivity Center.
    • Para NAT híbrida (pré-lançamento), selecione Rotas de conectividade híbrida.
  15. Selecione ou crie um intervalo de sub-rede Private NAT.

  16. Clique em Concluído e em Criar.

gcloud

  1. Crie um Cloud Router na rede VPC para a qual você quer executar NAT. Use o comando compute routers create.

    gcloud compute routers create ROUTER_NAME \
      --network=NETWORK --region=REGION
    

    Substitua:

    • ROUTER_NAME: o nome do roteador a ser criado.
    • NETWORK: a rede VPC do roteador.
    • REGION: a região do roteador a ser criado. Se não for especificado, talvez seja solicitado que você selecione uma região (apenas no modo interativo).
  2. Crie um gateway NAT particular especificando as sub-redes da rede VPC de origem em que você quer executar NAT.

    Use o comando compute routers nats create com a flag --type definida como PRIVATE.

    gcloud compute routers nats create NAT_CONFIG \
      --router=ROUTER_NAME --type=PRIVATE --region=REGION \
      --nat-custom-subnet-ip-ranges=SUBNETWORK:ALL|[SUBNETWORK_1:ALL ...] | \
      [--nat-all-subnet-ip-ranges]
    

    Substitua:

    • NAT_CONFIG: o nome da configuração do Private NAT a ser criada.
    • ROUTER_NAME: o nome do roteador a ser usado com esse gateway. O roteador é o mesmo que você criou na etapa anterior. Garanta que nenhum outro recurso esteja associado a este roteador.
    • SUBNETWORK: o nome da sub-rede ou da lista de sub-redes que podem usar o gateway. Também é possível especificar uma lista de sub-redes em um formato separado por vírgulas, como SUBNETWORK_1, SUBNETWORK_2. O Google Cloud sempre executa NAT em todos os intervalos de IP da sub-rede ou lista de sub-redes especificada.
  3. Crie uma regra para corresponder ao tráfego com base nos seus requisitos:

    • Para executar NAT no tráfego que sai pelo spoke da VPC de origem para qualquer um dos spokes VPC de peering anexados a um hub correspondente do Network Connectivity Center, crie uma regra NAT no gateway NAT particular. Com base na regra NAT, o gateway do Private NAT atribui endereços IP NAT da sub-rede do Private NAT para executar NAT no tráfego.

      Use o comando compute routers nats rules create.

      gcloud beta compute routers nats rules create NAT_RULE_NUMBER \
      --router=ROUTER_NAME --region=REGION \
      --nat=NAT_CONFIG \
      --match='nexthop.hub == "//networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/hubs/HUB"' \
      --source-nat-active-ranges=NAT_SUBNET ...
      

      Substitua:

      • NAT_RULE_NUMBER: o número que identifica exclusivamente a regra a ser criada.
      • NAT_CONFIG: o nome da configuração do Private NAT da regra a ser criada. A configuração é a mesma que você criou na etapa anterior.
      • PROJECT_ID: o identificador global exclusivo do projeto em que o roteador está localizado.
      • HUB: o nome do hub correspondente do Network Connectivity Center.
      • NAT_SUBNET: o nome da sub-rede NAT particular que você criou anteriormente. Você também pode especificar uma lista de sub-redes em um formato separado por vírgulas.
    • Para executar NAT no tráfego que sai pela sua rede VPC de origem para uma rede local ou outro provedor de nuvem pelas soluções corporativas de conectividade híbrida do Google Cloud (pré-lançamento), crie uma regra NAT no gateway NAT particular. Com base na regra NAT, o gateway NAT particular atribui endereços IP NAT da sub-rede NAT particular para executar NAT no tráfego.

      Use o comando compute routers nats rules create.

      gcloud beta compute routers nats rules create NAT_RULE_NUMBER \
      --router=ROUTER_NAME --region=REGION \
      --nat=NAT_CONFIG \
      --match='nexthop.is_hybrid' \
      --source-nat-active-ranges=NAT_SUBNET ...
      

      Substitua:

      • NAT_RULE_NUMBER: o número que identifica exclusivamente a regra a ser criada.
      • NAT_CONFIG: o nome da configuração do Private NAT da regra a ser criada. A configuração é a mesma que você criou na etapa anterior.
      • NAT_SUBNET: o nome da sub-rede NAT particular que você criou anteriormente. Você também pode especificar uma lista de sub-redes em um formato separado por vírgulas.

Configurar a NAT particular com alocação de porta estática

A NAT particular usa a alocação de porta dinâmica por padrão. No entanto, é possível configurar a NAT particular para usar a alocação de porta estática.

Console

  1. No Console do Google Cloud, acesse a página do Cloud NAT.

    Acesse o Cloud NAT

  2. Clique em Primeiros passos ou Criar gateway Cloud NAT.

  3. Digite um nome de gateway.

  4. Em Tipo de NAT, selecione Particular.

  5. Selecione uma rede VPC para o gateway NAT.

  6. Defina a região para o gateway NAT.

  7. Selecione ou crie um Cloud Router na região.

  8. Especifique os detalhes de mapeamento do Cloud NAT e crie uma regra NAT. Para mais informações, consulte Configurar NAT particular.

  9. Clique em Configuração avançada.

  10. Desmarque Ativar alocação de porta dinâmica.

  11. Especifique o valor de Portas mínimas por instância de VM. O padrão é 64.

  12. Clique em Concluído e em Criar.

gcloud

Use o comando compute routers nats create com a flag --no-enable-dynamic-port-allocation.

  gcloud compute routers nats create NAT_CONFIG \
    --router=ROUTER_NAME --type=PRIVATE --region=REGION \
    --nat-custom-subnet-ip-ranges=SUBNETWORK:ALL|[SUBNETWORK_1:ALL,SUBNETWORK_2:ALL,...] \
    --no-enable-dynamic-port-allocation \
    [--min-ports-per-vm=VALUE]

Substitua:

  • NAT_CONFIG: o nome da configuração do Private NAT a ser criada.
  • ROUTER_NAME: o nome do roteador a ser usado com esse gateway.
  • SUBNETWORK: o nome da sub-rede ou da lista de sub-redes que podem usar o gateway.

    Também é possível especificar uma lista de sub-redes em um formato separado por vírgulas, como SUBNETWORK_1, SUBNETWORK_2. O Google Cloud sempre executa NAT em todos os intervalos de IP da sub-rede ou lista de sub-redes especificada.

  • VALUE: as portas mínimas por VM a serem atribuídas pelo gateway. Se não for especificado, o Google Cloud atribuirá o valor padrão de 64.

Ver configuração NAT

Console

  1. No Console do Google Cloud, acesse a página do Cloud NAT.

    Acesse o Cloud NAT

  2. Para visualizar os detalhes do gateway NAT, informações de mapeamento ou detalhes de configuração, clique no nome do gateway NAT.

  3. Para mostrar o status do NAT, consulte a coluna Status do seu gateway NAT.

gcloud

Para ver os detalhes da configuração do NAT, execute os seguintes comandos:

  • Ver a configuração do gateway do Private NAT.

    gcloud compute routers nats describe NAT_CONFIG \
       --router=ROUTER_NAME \
       --region=REGION
    

    Substitua:

    • NAT_CONFIG: o nome da configuração NAT.
    • ROUTER_NAME: o nome do seu Cloud Router.
    • REGION: a região do NAT a ser descrito. Se não for especificado, talvez seja solicitado que você selecione uma região (apenas no modo interativo).
  • Veja o mapeamento de intervalos de IP:porta para cada interface de VM.

    gcloud compute routers get-nat-mapping-info ROUTER_NAME \
      --region=REGION
    
  • Veja o status do gateway do Private NAT.

    gcloud compute routers get-status ROUTER_NAME \
      --region=REGION
    

Atualizar configurações de NAT particular

Depois de configurar o gateway do Private NAT, atualize a configuração do gateway com base nos seus requisitos. As seções a seguir listam as tarefas que podem ser executadas para atualizar o gateway do Private NAT.

Alterar sub-redes associadas à NAT particular

Console

  1. No Console do Google Cloud, acesse a página do Cloud NAT.

    Acesse o Cloud NAT

  2. Clique no seu gateway NAT.

  3. Clique em Editar.

  4. Em Mapeamento do Cloud NAT, na lista Origem, selecione Personalizado.

  5. Selecione uma nova sub-rede na lista de sub-redes disponíveis.

  6. Se você quiser especificar mais intervalos, clique em Adicionar sub-rede e intervalo de IP e selecione outra sub-rede.

  7. Clique em Salvar.

gcloud

gcloud beta compute routers nats update NAT_CONFIG \
  --router=ROUTER_NAME \
  --region=REGION \
  --nat-custom-subnet-ip-ranges=SUBNETWORK:ALL|[SUBNETWORK_1:ALL,SUBNETWORK_2:ALL,..]

Substitua:

  • NAT_CONFIG: o nome da configuração do Private NAT a ser atualizada.
  • ROUTER_NAME: o nome do roteador a ser usado com esse gateway.
  • SUBNETWORK: o nome da sub-rede a ser usada.

Excluir sub-redes associadas à NAT particular

É possível remover sub-redes específicas do gateway NAT que não estão mais em uso.

Console

  1. No Console do Google Cloud, acesse a página do Cloud NAT.

    Acesse o Cloud NAT

  2. Clique no seu gateway NAT.

  3. Clique em Editar.

  4. Exclua a sub-rede que você quer remover do mapeamento NAT.

  5. Clique em Salvar.

Adicionar sub-redes NAT à configuração NAT particular

Para executar NAT no tráfego, uma configuração NAT particular usa endereços IP NAT de uma sub-rede com a finalidade de PRIVATE_NAT. Se sua configuração NAT particular exigir mais do que o número disponível de endereços IP NAT, é possível adicionar mais sub-redes com a finalidade PRIVATE_NAT à configuração.

Console

  1. No Console do Google Cloud, acesse a página do Cloud NAT.

    Acesse o Cloud NAT

  2. Clique no seu gateway NAT.

  3. Clique em Editar.

  4. Expanda a regra atual.

  5. Clique em Adicionar intervalos de sub-rede.

  6. Selecione ou crie um novo intervalo de sub-rede NAT e clique em Concluído.

  7. Clique em Salvar.

gcloud

gcloud beta compute routers nats rules update NAT_RULE_NUMBER \
  --nat=NAT_CONFIG \
  --router=ROUTER_NAME \
  --region=REGION \
  --source-nat-active-ranges=NAT_SUBNET_1, NAT_SUBNET_2 ...

Substitua:

  • NAT_RULE_NUMBER: o número que identifica exclusivamente a regra a ser atualizada.
  • NAT_CONFIG: o nome da configuração NAT particular a ser atualizada pela regra.
  • PROJECT_ID: o identificador global exclusivo do projeto em que o roteador está localizado.
  • NAT_SUBNET: os nomes das sub-redes NAT particulares que serão adicionadas à configuração NAT atual.

Excluir configuração NAT

A exclusão de uma configuração de gateway remove a configuração NAT de um Cloud Router. Ela não exclui o roteador.

Console

  1. No Console do Google Cloud, acesse a página do Cloud NAT.

    Acesse o Cloud NAT

  2. Marque a caixa de seleção ao lado da configuração de gateway que você quer excluir.

  3. No Menu, clique em Excluir.

gcloud

gcloud compute routers nats delete NAT_CONFIG \
    --router=ROUTER_NAME \
    --region=REGION

Substitua:

  • NAT_CONFIG: o nome da configuração NAT.
  • ROUTER_NAME: o nome do seu Cloud Router.
  • REGION: a região do NAT a ser excluída. Se não for especificado, talvez seja solicitado que você selecione uma região (apenas no modo interativo).

A seguir