Configure sub-redes e instâncias apenas de IPv6 com DNS64 e NAT64

Esta página descreve como criar sub-redes e instâncias apenas IPv6 e, em seguida, configurar o DNS64 e o NAT64 para poder aceder a destinos IPv4 a partir das suas instâncias apenas IPv6.

Para ver uma vista geral da conetividade IPv6 para IPv4 no Google Cloud, consulte DNS64 e NAT64 para conetividade 6to4.

Antes de começar

As instruções nesta página requerem que tenha uma rede da nuvem virtual privada (VPC) no modo personalizado para poder criar sub-redes com intervalos de endereços IPv6. Para mais informações, consulte o artigo Crie uma rede VPC de modo personalizado com sub-redes apenas IPv6.

Se quiser criar uma rede VPC que suporte sub-redes com endereços IPv6 internos, tem de configurar um intervalo IPv6 interno ULA quando criar a rede. Se tiver uma rede existente, pode atribuir um intervalo IPv6 interno à rede.

Crie sub-redes e instâncias apenas IPv6

Esta secção descreve como criar sub-redes e instâncias apenas IPv6. Se já tiver sub-redes e instâncias apenas IPv6, pode avançar para a configuração do DNS64 e do NAT64.

Crie uma sub-rede apenas IPv6

Pode criar uma sub-rede apenas IPv6 com endereços IPv6 externos ou internos ativados.

Para criar uma sub-rede apenas IPv6, faça o seguinte.

Consola

  1. Na Google Cloud consola, aceda à página Redes VPC.

    Aceda a redes de VPC

  2. Para ver a página Detalhes da rede de VPC, clique no nome de uma rede de VPC.

  3. No separador Sub-redes, clique em Adicionar sub-rede. No painel apresentado:

    1. Indique um nome.
    2. Selecione uma região.
    3. Para o tipo de pilha de IP, selecione IPv6 (pilha única).
    4. Selecione um tipo de acesso IPv6: Interno ou Externo.

      Se quiser definir o tipo de acesso como Interno, mas a opção Interno não estiver disponível, verifique se foi atribuído um intervalo IPv6 interno na rede.

    5. Clique em Adicionar.

gcloud

Use o comando gcloud compute networks subnets create.

gcloud compute networks subnets create SUBNET \
    --network=NETWORK \
    --stack-type=IPV6_ONLY \
    --ipv6-access-type=IPv6_ACCESS_TYPE \
    --region=REGION

Substitua o seguinte:

  • SUBNET: um nome para a nova sub-rede.
  • NETWORK: o nome da rede VPC que vai conter a nova sub-rede.
  • IPv6_ACCESS_TYPE: o tipo de acesso IPv6. O tipo de acesso pode ser EXTERNAL ou INTERNAL.
  • REGION: a Google Cloud região na qual a nova sub-rede vai ser criada.

API

Faça um pedido POST ao método subnetworks.insert.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks
{
  "network": "NETWORK_URL",
  "name": "SUBNET"
  "stackType": IPV6_ONLY,
  "ipv6AccessType": IPv6_ACCESS_TYPE
}

Substitua o seguinte:

  • PROJECT_ID: o ID do projeto que contém a rede VPC a modificar.
  • REGION: o nome da Google Cloud região onde a sub-rede é adicionada.
  • NETWORK_URL: o URL da rede VPC onde está a adicionar a sub-rede.
  • SUBNET: um nome para a sub-rede.
  • IPv6_ACCESS_TYPE: o tipo de acesso IPv6. O tipo de acesso pode ser EXTERNAL ou INTERNAL.

Crie uma instância apenas IPv6

Consola

  1. Aceda à página Criar uma instância.

    Aceda a Criar uma instância

  2. Introduza um nome para a instância.

  3. Selecione uma região que contenha as sub-redes com os intervalos IPv6 configurados.

  4. Opcional: altere a zona desta instância. Se selecionar Qualquer, a Google escolhe automaticamente uma zona com base no tipo de máquina e na disponibilidade.

  5. Expanda a secção Opções avançadas.

  6. Expanda Redes e faça o seguinte:

    1. Na secção Interfaces de rede, clique no nome da interface de rede para editar as definições da interface de rede.

    2. Para Rede e Sub-rede, selecione a rede e a sub-rede que quer usar.

      Selecione uma sub-rede apenas IPv6. O tipo de acesso IPv6 da sub-rede determina se a instância recebe um endereço IPv6 interno ou um endereço IPv6 externo.

    3. Para o tipo de pilha de IP, selecione IPv6 (pilha única).

    4. Para o endereço IPv6 da interface, faça o seguinte, consoante o tipo de acesso da sub-rede ligada:

      1. Para Endereço IPv6 interno principal, selecione uma das seguintes opções:
        • Efémero (automático) para atribuir automaticamente um novo endereço IPv6 interno efémero
        • Efémero (personalizado) para especificar manualmente um novo endereço IPv6 interno efémero
        • Um endereço IPv6 interno estático reservado da lista
        • Reservar endereço IPv6 interno estático para reservar e atribuir um novo endereço IPv6 interno estático
      2. Para Endereço IPv6 externo, selecione uma das seguintes opções:
        • Efémero (automático) para atribuir automaticamente um novo endereço IPv6 externo efémero
        • Efémero (personalizado) para especificar manualmente um novo endereço IPv6 externo efémero
        • Um endereço IPv6 externo estático reservado da lista
        • Reservar endereço IPv6 externo estático para reservar e atribuir um novo endereço IPv6 externo estático
    5. Para terminar a modificação da interface de rede, clique em Concluído.

  7. Continue com o processo de criação da instância.

  8. Clique em Criar.

gcloud

Crie uma instância através do comando gcloud compute instances create.

gcloud compute instances create INSTANCE_NAME \
    --zone ZONE \
    --network-interface=network=NETWORK,subnet=SUBNET,stack-type=IPV6_ONLY

Substitua o seguinte:

  • INSTANCE_NAME: um nome para a instância.
  • ZONE: a zona onde a instância é criada, como europe-west1-b. A região da instância é inferida a partir da zona.
  • NETWORK: nome da rede na qual criar a instância.
  • SUBNET: nome da sub-rede na qual criar a instância.

API

Use o método instances.insert para criar uma instância.

  POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
  {
     "machineType": "zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE",
     "name": "NAME",
     "disks": [
       {
         "initializeParams": {
           "sourceImage":"projects/IMAGE_PROJECT/global/images/IMAGE"
         },
         "boot": true
       }
     ],
     "networkInterfaces": [
       {
         "subnetwork": "regions/REGION/subnetworks/SUBNET",
         "stackType": "IPV6_ONLY"
       }
     ]
   }
   

Substitua o seguinte:

  • PROJECT_ID: o ID do projeto que contém a instância.
  • ZONE: a zona que contém a instância.
  • MACHINE_TYPE_ZONE: zona que contém o tipo de máquina a usar para a nova instância.
  • MACHINE_TYPE: tipo de máquina, predefinido ou personalizado, para a nova instância. Por exemplo, c3-standard-4.
  • NAME: o nome da instância.
  • IMAGE_PROJECT: opcional: o projeto de imagem que contém a imagem.
  • IMAGE: Opcional: especifique uma das seguintes opções:
    • Uma versão específica da imagem do SO, por exemplo, debian-12-bookworm-v20241009.
    • Uma família de imagens, que tem de estar formatada como family/IMAGE_FAMILY. Isto cria a instância a partir da imagem do SO mais recente e não descontinuada. Por exemplo, se especificar family/debian-12, o Compute Engine cria uma instância com a versão mais recente da imagem do SO na família de imagens Debian 12. Para mais informações sobre a utilização de famílias de imagens, consulte as práticas recomendadas para famílias de imagens.
  • REGION: a região que contém a instância.
  • SUBNET: a sub-rede onde se encontra a interface de rede.

Configure o DNS64 e o NAT64

Esta secção descreve como configurar o DNS64 e o NAT64, que lhe permitem aceder a destinos IPv4 a partir de instâncias apenas IPv6.

Crie uma política de servidor DNS64

Crie e configure uma política de servidor DNS64 para que o Cloud DNS forneça um endereço IPv6 sintetizado para cada destino IPv4.

Para mais informações sobre como criar e gerir políticas de servidor DNS64, consulte o artigo Configure o DNS64.

Para criar uma política de servidor DNS64, faça o seguinte.

Consola

  1. Na Google Cloud consola, aceda à página Cloud DNS.

    Aceda ao Cloud DNS

  2. No separador Políticas do servidor DNS, clique em Criar política.

  3. No campo Nome, introduza um nome para a política.

  4. Opcional: no campo Descrição, introduza uma descrição da política.

  5. Para o DNS64, selecione Ativado para ativar o DNS64.

  6. No campo Redes, selecione a rede de VPC na qual quer criar a política. Selecione a rede que contém as sub-redes e as instâncias apenas IPv6.

gcloud

Para criar uma política de servidor DNS64, execute o comando gcloud dns policies create:

gcloud dns policies create NAME \
    --description=DESCRIPTION \
    --networks=VPC_NETWORK_LIST \
    --enable-dns64-all-queries

Substitua o seguinte:

  • NAME: um nome para a política.
  • DESCRIPTION: uma descrição da política.
  • VPC_NETWORK_LIST: uma lista delimitada por vírgulas de redes VPC às quais a política de servidor DNS está associada. Especifique a rede que contém as sub-redes e as instâncias apenas IPv6.

API

Para criar uma política de servidor DNS64, use o método policies.create:

POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/policies
{
  "kind": "dns#policy",
  "networks": [
    {
      "kind": "dns#policyNetwork",
      "networkUrl": "NETWORK_URL"
    }
  ],
  "dns64Config":
    {
        "scope":
        {
          allQueries: true,
        }
    }
  }

Substitua o seguinte:

  • PROJECT_ID: o ID do seu projeto.
  • NETWORK_URL: o URL totalmente qualificado da rede VPC à qual a política do servidor DNS tem de ser associada, formatado da seguinte forma: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/VPC_NETWORK_NAME. Especifique a rede que contém as sub-redes e as instâncias apenas IPv6.

Crie uma gateway do Cloud NAT para ativar o NAT64

Configure a NAT pública criando um gateway Cloud NAT na sua rede e região da VPC que contenham sub-redes e instâncias apenas IPv6.

Para mais informações sobre como criar e gerir gateways Cloud NAT, consulte o artigo Configure e faça a gestão da tradução de endereços de rede com o NAT público.

Para criar um gateway Cloud NAT para NAT64, faça o seguinte.

Consola

  1. Na Google Cloud consola, aceda à página Cloud NAT.

    Aceda ao Cloud NAT

  2. Clique em Começar ou Criar gateway de NAT do Cloud.

  3. No campo Nome da gateway, introduza um nome para a gateway.

  4. Para Tipo de NAT, selecione Público.

  5. Na secção Selecionar Cloud Router, configure o seguinte:

    1. No campo Rede, selecione a rede de VPC na qual quer criar o gateway.
    2. No campo Região, defina a região para o gateway.
    3. No campo Cloud Router, selecione ou crie um Cloud Router na região.
  6. Na secção Mapeamento do Cloud NAT, para Tipo de ponto final de origem, certifique-se de que a opção Instâncias de VM, nós do GKE, sem servidor está selecionada.

  7. No campo Versão do IP de origem, selecione Intervalos de sub-redes IPv6 e, de seguida, configure os intervalos de sub-redes IPv6 para os quais quer usar o Cloud NAT.

    • Para usar o Cloud NAT para intervalos de IP internos e externos para todas as sub-redes na região, selecione Todas as sub-redes.
    • Para restringir as sub-redes que podem usar o Cloud NAT, selecione Personalizado e faça o seguinte:
      1. Na secção Sub-redes, selecione uma sub-rede.
      2. Opcional: se quiser especificar sub-redes adicionais, clique em Adicionar sub-rede e adicione outra sub-rede.
  8. Configure quaisquer opções adicionais para a sua gateway do Cloud NAT. Para mais informações, consulte o artigo Crie um gateway Cloud NAT na documentação do Cloud NAT.

  9. Clique em Criar.

gcloud

Esta secção descreve como criar um gateway NAT da nuvem com todas as opções de configuração definidas com os respetivos valores predefinidos. Para mais informações sobre a personalização da configuração do gateway, consulte o artigo Personalize as definições de configuração de um gateway Cloud NAT.

Para criar um gateway Cloud NAT, use o comando gcloud compute routers nats create.

  1. Crie um Cloud Router na região em que quer usar o gateway Cloud NAT. Precisa deste Cloud Router para criar o seu gateway Cloud NAT.

  2. Configure o Cloud NAT para intervalos de sub-redes de origem IPv6.

    A configuração seguinte ativa o NAT para todos os intervalos de sub-redes IPv6 na região, em sub-redes apenas IPv6 e de pilha dupla. Em alternativa, pode configurar o NAT para sub-redes específicas através da flag --nat64-custom-v6-subnet-ip-ranges.

    gcloud compute routers nats create NAT_CONFIG \
        --router=NAT_ROUTER \
        --region=REGION \
        --auto-allocate-nat-external-ips \
        --nat64-all-v6-subnet-ip-ranges
    

    Substitua o seguinte:

    • NAT_CONFIG: um nome para a configuração de NAT.
    • NAT_ROUTER: o nome do Cloud Router que criou no passo anterior.
    • REGION: a região na qual quer usar o gateway do Cloud NAT.

API

Para criar um Cloud Router e um gateway Cloud NAT através da API, use o método routers.insert e defina o campo nats[].

Esta secção descreve como criar um gateway NAT da nuvem com todas as opções de configuração definidas com os respetivos valores predefinidos. Para mais informações sobre a personalização da configuração do gateway, consulte Crie um gateway Cloud NAT.

Para mais informações sobre como criar um Cloud Router, consulte o artigo Crie um Cloud Router para ligar uma rede VPC a uma rede de pares.

A seguinte configuração ativa o NAT para todos os intervalos de sub-redes IPv6 na região. Em alternativa, pode configurar a NAT para sub-redes específicas definindo sourceSubnetworkIpRangesToNat64 como LIST_OF_IPV6_SUBNETWORKS e especificando as sub-redes no campo nats[].nat64Subnetworks[].

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers
{
  "name": "ROUTER_NAME",
  "network": "NETWORK",
  "bgp": {
    "asn": "ASN_NUMBER"
  },
  "nats": [
    {
      "name": NAT_CONFIG,
      "sourceSubnetworkIpRangesToNat64": ALL_IPV6_SUBNETWORKS,
      "natIpAllocateOption": AUTO_ONLY
    }
  ]
}

Substitua o seguinte:

  • PROJECT_ID: o ID do projeto que contém a rede VPC.
  • REGION: a região onde quer localizar o Cloud Router e a gateway do Cloud NAT.
  • ROUTER_NAME: o nome do Cloud Router; este nome é apresentado na consola Google Cloud e é usado pela CLI do Google Cloud para fazer referência ao Cloud Router.
  • NETWORK: a rede VPC na qual criar o Cloud Router e o gateway do Cloud NAT.
  • ASN_NUMBER: o ASN privado (64512-65534, 4200000000-4294967294) para o Cloud Router que está a configurar. Este ASN pode ser qualquer ASN privado que ainda não esteja a usar como um ASN de pares na mesma região e rede. Por exemplo, o Cloud Router 65001 requer que use um ASN privado, mas o seu ASN no local pode ser público ou privado.
  • NAT_CONFIG: um nome para a configuração de NAT.

O que se segue?