Configura DNS64

Questo documento descrive come configurare e utilizzare le policy dei server DNS64 con le reti VPC (Virtual Private Cloud).

Prima di iniziare

  • Le policy dei server DNS64 non si applicano alle istanze di macchine virtuali (VM) a doppio stack, alle istanze VM solo IPv4, ai workload serverless o alle richieste inviate a endpoint creati da una policy dei server DNS in entrata.
  • Assicurati di disporre delle autorizzazioni necessarie per creare una policy dei server DNS64.

Crea una policy dei server DNS64

Crea una policy dei server DNS64 per consentire la comunicazione tra i workload solo IPv6 e le destinazioni solo IPv4.

Dopo aver creato una policy dei server DNS64, quando viene eseguita una query su un record IPv6 (AAAA) accade quanto segue:

  • Se esiste un record DNS AAAA, il server DNS restituisce un indirizzo IPv6. Il tuo workload si connette utilizzando questo indirizzo IPv6.
  • Se non esiste alcun record DNS AAAA, Cloud DNS cerca i record A. Cloud DNS crea quindi indirizzi IPv6 per gli indirizzi IPv4 nel record A utilizzando il prefisso IPv6 64:ff9b::/96.

Per creare una policy dei server DNS64, segui questi passaggi.

gcloud

Per creare una policy dei server DNS64, esegui il comando gcloud dns policies create:

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

Sostituisci quanto segue:

  • NAME: un nome per la policy
  • DESCRIPTION: una descrizione della policy
  • VPC_NETWORK_LIST: un elenco delimitato da virgole di reti VPC a cui è associata la policy dei server DNS

Terraform

resource "google_dns_policy" "default" {
  name = "NAME"

  dns64_config {
    scope {
      all_queries = true
    }
  }

  alternative_name_server_config {
    target_name_servers {
      ipv4_address    = "PRIVATE_IP_ADDRESS"
      forwarding_path = "private"
    }
    target_name_servers {
      ipv4_address = "PUBLIC_IP_ADDRESS"
    }
  }

  networks {
    network_url = google_compute_network.default.id
  }
}

resource "google_compute_network" "default" {
  name                    = "network"
  auto_create_subnetworks = false
}

Sostituisci quanto segue:

  • NAME: un nome per la policy DNS64 in uscita
  • PRIVATE_IP_ADDRESS: l'indirizzo IP di un server dei nomi alternativo che utilizza un percorso di forwarding privato
  • PUBLIC_IP_ADDRESS: l'indirizzo IP di un altro server dei nomi alternativo

API

Per creare una policy dei server DNS64, utilizza il metodo 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,
        }
    }
  }

Sostituisci quanto segue:

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

Verifica se è abilitata una policy dei server DNS64

gcloud

Per elencare le policy dei server DNS nel tuo progetto, esegui il comando dns policies list:

gcloud dns policies list

Per ottenere informazioni dettagliate su una specifica policy dei server DNS64, esegui il comando gcloud dns policies describe:

gcloud dns policies describe NAME

Sostituisci NAME con il nome della policy dei server DNS64 su cui vuoi informazioni dettagliate.

Disabilita una policy dei server DNS644

gcloud

Per disabilitare una policy dei server DNS64, esegui il comando dns policies update:

gcloud dns policies update NAME \
    --no-enable-dns64-all-queries

Sostituisci NAME con il nome della policy dei server DNS64 che vuoi disabilitare.

Passaggi successivi