Configurare istanze e subnet solo IPv6 con DNS64 e NAT64

Questa pagina descrive come creare istanze e subnet solo IPv6, quindi configurare DNS64 e NAT64 in modo da poter accedere alle destinazioni IPv4 dalle istanze solo IPv6.

Per una panoramica della connettività IPv6/IPv4 in Google Cloud, consulta DNS64 e NAT64 per la connettività 6to4.

Prima di iniziare

Le istruzioni riportate in questa pagina richiedono una rete Virtual Private Cloud (VPC) in modalità personalizzata per poter creare subnet con intervalli di indirizzi IPv6. Per maggiori informazioni, consulta Creare una rete VPC in modalità personalizzata con subnet solo IPv6.

Se vuoi creare una rete VPC che supporti subnet con indirizzi IPv6 interni, devi configurare un intervallo IPv6 interno ULA durante la creazione della rete. Se hai già una rete, puoi assegnarle un intervallo IPv6 interno.

Creare istanze e subnet solo IPv6

Questa sezione descrive come creare istanze e subnet solo IPv6. Se hai già subnet e istanze solo IPv6, puoi procedere alla configurazione di DNS64 e NAT64.

Creare una subnet solo IPv6

Puoi creare una subnet solo IPv6 con indirizzi IPv6 esterni o interni abilitati.

Per creare una subnet solo IPv6:

Console

  1. Nella console Google Cloud, vai alla pagina Reti VPC.

    Vai a Reti VPC

  2. Per visualizzare la pagina Dettagli rete VPC, fai clic sul nome di una rete VPC.

  3. Nella scheda Subnet, fai clic su Aggiungi subnet. Nel riquadro visualizzato:

    1. Fornisci un nome.
    2. Seleziona una regione.
    3. Per Tipo di stack IP, seleziona IPv6 (stack singolo).
    4. Seleziona un tipo di accesso IPv6: Interno o Esterno.

      Se vuoi impostare il tipo di accesso su Interno, ma l'opzione Interno non è disponibile, controlla che sulla rete sia assegnato un intervallo IPv6 interno.

    5. Fai clic su Aggiungi.

gcloud

Utilizza il 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

Sostituisci quanto segue:

  • SUBNET: un nome per la nuova subnet.
  • NETWORK: il nome della rete VPC da contenere la nuova subnet.
  • IPv6_ACCESS_TYPE: il tipo di accesso IPv6. Il tipo di accesso può essere EXTERNAL o INTERNAL.
  • REGION: la Google Cloud regione in cui deve essere creata la nuova sottorete.

API

Invia una richiesta POST al metodo 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
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto che contiene la rete VPC da modificare.
  • REGION: il nome della Google Cloud regione in cui viene aggiunta la subnet.
  • NETWORK_URL: l'URL della rete VPC dove aggiungi la subnet.
  • SUBNET: un nome per la subnet.
  • IPv6_ACCESS_TYPE: il tipo di accesso IPv6. Il tipo di accesso può essere EXTERNAL o INTERNAL.

Creare un'istanza solo IPv6

Console

  1. Vai alla pagina Crea un'istanza.

    Vai a Crea un'istanza

  2. Inserisci un nome per l'istanza.

  3. Seleziona una regione che contenga le subnet con gli intervalli IPv6 configurati.

  4. (Facoltativo) Modifica la zona per questa istanza. Se selezioni Qualsiasi, Google sceglie automaticamente una zona in base al tipo di macchina e alla disponibilità.

  5. Espandi la sezione Opzioni avanzate.

  6. Espandi Networking ed esegui i seguenti passaggi:

    1. Nella sezione Interfacce di rete, fai clic sul nome dell'interfaccia di rete per modificarne le impostazioni.

    2. In Rete e Subnet, seleziona la rete e la subnet che vuoi utilizzare.

      Seleziona una subnet solo IPv6. Il tipo di accesso IPv6 della subnet determina se l'istanza riceve un indirizzo IPv6 interno o un indirizzo IPv6 esterno.

    3. Per Tipo di stack IP, seleziona IPv6 (stack singolo).

    4. Per l'indirizzo IPv6 dell'interfaccia, procedi nel seguente modo, a seconda del tipo di accesso della subnet connessa:

      1. Per Indirizzo IPv6 interno principale, seleziona una delle seguenti opzioni:
        • Allocato automaticamente per assegnare automaticamente un nuovo indirizzo IPv6 interno temporaneo
        • Un indirizzo IPv6 interno statico riservato dall'elenco
        • Prenota indirizzo IPv6 interno statico per prenotare e assegnare un nuovo indirizzo IPv6 interno statico
      2. Per Indirizzo IPv6 esterno, seleziona una delle seguenti opzioni:
        • Allocazione automatica per assegnare automaticamente un nuovo indirizzo IPv6 esterno temporaneo
        • Un indirizzo IPv6 esterno statico prenotato dall'elenco
        • Prenota indirizzo IPv6 esterno statico per prenotare e assegnare un nuovo indirizzo IPv6 esterno statico
    5. Per completare la modifica dell'interfaccia di rete, fai clic su Fine.

  7. Continua con la procedura di creazione dell'istanza.

  8. Fai clic su Crea.

gcloud

Crea un'istanza utilizzando il comando gcloud compute instances create.

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

Sostituisci quanto segue:

  • INSTANCE_NAME: un nome per l'istanza.
  • ZONE: la zona in cui viene creata l'istanza, come europe-west1-b. La regione dell'istanza viene dedotta dalla zona.
  • NETWORK: il nome della rete in cui creare l'istanza.
  • SUBNET: il nome della subnet in cui creare l'istanza.

API

Utilizza il metodo instances.insert per creare un'istanza.

  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"
       }
     ]
   }
   

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto che contiene l'istanza.
  • ZONE: la zona che contiene l'istanza.
  • MACHINE_TYPE_ZONE: la zona contenente il tipo di macchina da utilizzare per la nuova istanza.
  • MACHINE_TYPE: tipo di macchina, predefinito o personalizzato, per la nuova istanza. Ad esempio: c3-standard-4.
  • NAME: il nome dell'istanza.
  • IMAGE_PROJECT: facoltativo, il progetto di immagini che contiene l'immagine.
  • IMAGE: facoltativo. Specifica uno dei seguenti valori:
    • Una versione specifica dell'immagine del sistema operativo, ad esempio debian-12-bookworm-v20241009.
    • Una famiglia di immagini, che deve essere formattata come family/IMAGE_FAMILY. In questo modo viene creata l'istanza dall'immagine del sistema operativo più recente e non deprecata. Ad esempio, se specifichi family/debian-12, Compute Engine crea un'istanza utilizzando la versione più recente dell'immagine del sistema operativo nella famiglia di immagini Debian 12. Per ulteriori informazioni sull'utilizzo delle famiglie di immagini, consulta le best practice per le famiglie di immagini.
  • REGION: la regione che contiene l'istanza.
  • SUBNET: la subnet in cui si trova l'interfaccia di rete.

Configura DNS64 e NAT64

Questa sezione descrive come configurare sia DNS64 sia NAT64, il che ti consente di accedere alle destinazioni IPv4 da istanze solo IPv6.

Crea un criterio del server DNS64

Crea e configura un criterio del server DNS64 in modo che Cloud DNS fornisca un indirizzo IPv6 sintetico per ogni destinazione IPv4.

Per ulteriori informazioni sulla creazione e sulla gestione dei criteri dei server DNS64, consulta Configurare DNS64.

Per creare un criterio del server DNS64, segui questi passaggi.

Console

  1. Nella console Google Cloud, vai alla pagina Cloud DNS.

    Vai a Cloud DNS

  2. Nella scheda Policy del server DNS, fai clic su Crea criterio.

  3. Nel campo Nome, inserisci un nome per il criterio.

  4. (Facoltativo) Nel campo Descrizione, inserisci una descrizione per il criterio.

  5. Per DNS64, seleziona On (On) per attivare DNS64.

  6. Nel campo Reti, seleziona la rete VPC in cui vuoi creare il criterio. Seleziona la rete che contiene le istanze e le subnet solo IPv6.

gcloud

Per creare un criterio del server DNS64, esegui il comando gcloud dns policies create:

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

Sostituisci quanto segue:

  • NAME: un nome per il criterio.
  • DESCRIPTION: una descrizione delle norme.
  • VPC_NETWORK_LIST: un elenco separato da virgole di reti VPC a cui si applica il criterio del server DNS. Specifica la rete che contiene le subnet e le istanze solo IPv6.

API

Per creare una policy del server DNS64, utilizza il metodo policies.create:

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

Sostituisci quanto segue:

  • PROJECT_ID: il tuo ID progetto.
  • NETWORK_URL: l'URL completo della rete VPC a cui deve essere associato il criterio del server DNS, formato come segue: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/VPC_NETWORK_NAME. Specifica la rete che contiene le subnet e le istanze solo IPv6.

Crea un gateway Cloud NAT per abilitare NAT64

Configura il NAT pubblico creando un gateway Cloud NAT nella rete e nella regione VPC contenente istanze e subnet solo IPv6.

Per saperne di più sulla creazione e sulla gestione dei gateway Cloud NAT, consulta Configurare e gestire la Network Address Translation con Public NAT.

Per creare un gateway Cloud NAT per NAT64:

Console

  1. Nella console Google Cloud, vai alla pagina Cloud NAT.

    Vai a Cloud NAT

  2. Fai clic su Inizia o su Crea gateway Cloud NAT.

  3. Nel campo Nome gateway, inserisci un nome per il gateway.

  4. In Tipo NAT, seleziona Pubblico.

  5. Nella sezione Seleziona router cloud, configura quanto segue:

    1. Nel campo Rete, seleziona la rete VPC in cui vuoi creare il gateway.
    2. Nel campo Regione, imposta la regione per il gateway.
    3. Nel campo Router Cloud, seleziona o crea un router cloud nella regione.
  6. Nella sezione Mappatura Cloud NAT, per Tipo di endpoint di origine, assicurati che sia selezionata l'opzione Istanze VM, nodi GKE, serverless.

  7. Nel campo Versione IP di origine, seleziona Intervalli di subnet IPv6, quindi configura gli intervalli di subnet IPv6 di origine per i quali vuoi utilizzare Cloud NAT.

    • Per utilizzare Cloud NAT per gli intervalli IP interni ed esterni di tutte le subnet della regione, seleziona Tutte le subnet.
    • Per limitare le subnet che possono utilizzare Cloud NAT, seleziona Personalizzata e svolgi i seguenti passaggi:
      1. Nella sezione Subnet, seleziona una subnet.
      2. (Facoltativo) Se vuoi specificare altre subnet, fai clic su Aggiungi subnet e aggiungi un'altra subnet.
  8. Configura eventuali opzioni aggiuntive per il gateway Cloud NAT. Per saperne di più, consulta Creare un gateway Cloud NAT nella documentazione di Cloud NAT.

  9. Fai clic su Crea.

gcloud

Questa sezione descrive come creare un gateway Cloud NAT con tutte le opzioni di configurazione impostate sui valori predefiniti. Per ulteriori informazioni sulla personalizzazione della configurazione del gateway, consulta Personalizzare le impostazioni di configurazione per un gateway Cloud NAT.

Per creare un gateway Cloud NAT, utilizza il comando gcloud compute routers nats create.

  1. Crea un router Cloud nella regione in cui vuoi utilizzare il gateway Cloud NAT. Questo router Cloud è necessario per creare il gateway Cloud NAT.

  2. Configura Cloud NAT per gli intervalli di subnet di origine IPv6 (anteprima).

    La seguente configurazione attiva NAT per tutti gli intervalli di subnet IPv6 nella regione, sia nelle subnet solo IPv6 che in quelle a doppio stack. In alternativa, puoi configurare il NAT per subnet specifiche utilizzando il flag --nat64-custom-v6-subnet-ip-ranges.

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

    Sostituisci quanto segue:

    • NAT_CONFIG: un nome per la configurazione NAT.
    • NAT_ROUTER: il nome del router Cloud che hai creato nel passaggio precedente.
    • REGION: la regione in cui vuoi utilizzare il gateway Cloud NAT.

API

Per creare un router Cloud e un gateway Cloud NAT utilizzando l'API, utilizza il metodo routers.insert e imposta il campo nats[].

Questa sezione descrive come creare un gateway Cloud NAT con tutte le opzioni di configurazione impostate sui valori predefiniti. Per ulteriori informazioni sulla personalizzazione della configurazione del gateway, consulta Creare un gateway Cloud NAT.

Per ulteriori informazioni sulla creazione di un router cloud, consulta Creare un router cloud per connettere una rete VPC a una rete peer.

La seguente configurazione attiva NAT per tutti gli intervalli di subnet IPv6 nella regione. In alternativa, puoi configurare il NAT per subnet specifiche impostando sourceSubnetworkIpRangesToNat64 su LIST_OF_IPV6_SUBNETWORKS e specificando le subnet nel campo nats[].nat64Subnetworks[].

POST https://compute.googleapis.com/compute/beta/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
    }
  ]
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto che contiene la rete VPC.
  • REGION: la regione in cui vuoi posizionare il router cloud e il gateway Cloud NAT.
  • ROUTER_NAME: il nome del router Cloud; questo nome viene visualizzato nella console Google Cloud ed è utilizzato da Google Cloud CLI per fare riferimento al router Cloud.
  • NETWORK: la rete VPC in cui creare il router cloud e il gateway Cloud NAT.
  • ASN_NUMBER: l'ASN privato (64512-65534, 4200000000-4294967294) per il router Cloud che stai configurando. Questo ASN può essere qualsiasi ASN privato che non utilizzi già come ASN peer nella stessa regione e nella stessa rete. Ad esempio, il router Cloud 65001 richiede l'utilizzo di un ASN privato, ma l'ASN on-premise può essere pubblico o privato.
  • NAT_CONFIG: un nome per la configurazione NAT.

Passaggi successivi