Creare, modificare ed eliminare zone

Questa pagina fornisce indicazioni per creare, aggiornare, elencare ed eliminare Zone gestite di Cloud DNS. Prima di utilizzare questa pagina, acquisisci familiarità con la panoramica di Cloud DNS e Termini chiave.

Prima di iniziare

L'API Cloud DNS richiede la creazione di un progetto Cloud DNS e abilitare l'API Cloud DNS.

Se crei un'applicazione che utilizza l'API REST, devi anche creare un ID client OAuth 2.0.

  1. Registrati per ottenere un Account Google, se non ne hai già uno.
  2. Attiva l'API Cloud DNS nella console Google Cloud. Puoi scegli un progetto Compute Engine o App Engine esistente oppure per creare un nuovo progetto.
  3. Se devi effettuare richieste all'API REST, devi creare un'istanza ID OAuth 2.0: Configurare OAuth 2.0.
  4. Nel progetto, tieni presente le seguenti informazioni che dovrai inserire passaggi successivi:
    • L'ID client (xxxxxx.apps.googleusercontent.com).
    • L'ID del progetto che vuoi utilizzare. Puoi trovare l'ID al nella parte superiore della pagina Panoramica nella nella console Google Cloud. Potresti anche chiedere all'utente di fornire il nome del progetto che vogliono usare nella tua app.

Se non hai già eseguito Google Cloud CLI, devi esegui questo comando per specificare il nome del progetto ed eseguire l'autenticazione la console Google Cloud:

gcloud auth login

Se vuoi eseguire un comando gcloud sulle risorse Google Cloud in un altro progetto, specifica l'opzione --project per questo comando e e altri comandi gcloud in questa pagina.

Crea zone gestite

Ogni zona gestita che crei è associata a un progetto Google Cloud. Le sezioni seguenti descrivono come creare il tipo di zona gestita che Cloud DNS supporta.

Crea una zona pubblica

Per creare una nuova zona gestita, completa i seguenti passaggi.

Console

  1. Nella console Google Cloud, vai alla pagina Crea una zona DNS.

    Vai a Crea una zona DNS

  2. Per Tipo di zona, seleziona Pubblica.

  3. Inserisci un Nome zona, ad esempio my-new-zone.

  4. Inserisci un suffisso del nome DNS per la zona utilizzando un nome di dominio personali. Tutti i record nella zona condividono questo suffisso, ad esempio: example.com.

  5. In DNSSEC, seleziona Off, On o Transfer (Trasferisci). Per ulteriori informazioni le informazioni, vedi Abilitare DNSSEC per zone gestite esistenti.

  6. Fai clic su Crea. Viene visualizzata la pagina Dettagli zona.

gcloud

Esegui l' dns managed-zones create :

gcloud dns managed-zones create NAME \
    --description=DESCRIPTION \
    --dns-name=DNS_SUFFIX \
    --labels=LABELS \
    --visibility=public

Sostituisci quanto segue:

  • NAME: un nome per la tua zona
  • DESCRIPTION: una descrizione della zona
  • DNS_SUFFIX: il suffisso DNS per la zona, ad esempio example.com
  • LABELS: un elenco facoltativo di coppie chiave-valore delimitato da virgole coppie come dept=marketing o project=project1; per altre informazioni, consulta Documentazione SDK

Terraform

resource "google_dns_managed_zone" "example_zone" {
  name        = "example-zone"
  dns_name    = "example-${random_id.rnd.hex}.com."
  description = "Example DNS zone"
  labels = {
    name = "value"
  }
}

resource "random_id" "rnd" {
  byte_length = 4
}

API

Invia una richiesta POST tramite il managedZones.create :

POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones
{
  "name": "NAME",
  "description": "DESCRIPTION",
  "dnsName": "DNS_NAME",
  "visibility": "public"
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui è stata gestita zona creata
  • NAME: un nome per la tua zona
  • DESCRIPTION: una descrizione della zona
  • DNS_NAME: il suffisso DNS per la zona, ad esempio example.com

Crea una zona privata

Per creare una nuova zona privata gestita con record DNS privati gestiti da Cloud DNS, completa i seguenti passaggi. Per ulteriori informazioni, consulta le best practice per la configurazione privata di Cloud DNS zone.

Console

  1. Nella console Google Cloud, vai alla pagina Crea una zona DNS.

    Vai a Crea una zona DNS

  2. Per Tipo di zona, seleziona Privato.

  3. Inserisci un Nome zona, ad esempio my-new-zone.

  4. Inserisci un suffisso del nome DNS per la zona privata. Tutti i record in zona condividi questo suffisso, ad esempio: example.private.

  5. (Facoltativo) Aggiungi una descrizione.

  6. In Opzioni, seleziona Predefinito (privato).

  7. Seleziona le reti Virtual Private Cloud (VPC) in cui verrà inserita la zona privata devono essere visibili. Solo le reti VPC che selezioni sono autorizzato a eseguire query sui record della zona.

  8. Fai clic su Crea.

gcloud

Esegui l' dns managed-zones create :

gcloud dns managed-zones create NAME \
    --description=DESCRIPTION \
    --dns-name=DNS_SUFFIX \
    --networks=VPC_NETWORK_LIST \
    --labels=LABELS \
    --visibility=private

Sostituisci quanto segue:

  • NAME: un nome per la tua zona
  • DESCRIPTION: una descrizione della zona
  • DNS_SUFFIX: il suffisso DNS per la zona, ad esempio example.private
  • VPC_NETWORK_LIST: un elenco di delimitato da virgole di Reti VPC autorizzate a eseguire query sulla zona
  • LABELS: un elenco facoltativo di coppie chiave-valore delimitato da virgole coppie come dept=marketing o project=project1; per altre informazioni, consulta Documentazione SDK

Terraform

resource "google_dns_managed_zone" "private_zone" {
  name        = "private-zone"
  dns_name    = "private.example.com."
  description = "Example private DNS zone"
  labels = {
    foo = "bar"
  }

  visibility = "private"

  private_visibility_config {
    networks {
      network_url = google_compute_network.network_1.id
    }
    networks {
      network_url = google_compute_network.network_2.id
    }
  }
}

resource "google_compute_network" "network_1" {
  name                    = "network-1"
  auto_create_subnetworks = false
}

resource "google_compute_network" "network_2" {
  name                    = "network-2"
  auto_create_subnetworks = false
}

API

Invia una richiesta POST tramite il Metodo managedZones.create:

POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones
{

"name": "NAME",
"description": "DESCRIPTION",
"dnsName": "DNS_NAME",
"visibility": "private"
"privateVisibilityConfig": {
    "kind": "dns#managedZonePrivateVisibilityConfig",
    "networks": [{
            "kind": "dns#managedZonePrivateVisibilityConfigNetwork",
            "networkUrl": VPC_NETWORK_1
        },
        {
            "kind": "dns#managedZonePrivateVisibilityConfigNetwork",
            "networkUrl": VPC_NETWORK_2
        },
        ....
    ]
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui si trova la zona gestita creato
  • NAME: un nome per la tua zona
  • DESCRIPTION: una descrizione della zona
  • DNS_NAME: il suffisso DNS per la zona, ad esempio example.private
  • VPC_NETWORK_1 e VPC_NETWORK_2: URL per reti VPC nello stesso progetto che possono eseguire query record in questa zona. Puoi aggiungere più reti VPC come indicato. Per determinare l'URL di una rete VPC, usa il seguente comando gcloud, sostituendo VPC_NETWORK_NAME con il nome della rete:

    gcloud compute networks describe VPC_NETWORK_NAME \
     --format="get(selfLink)"
    

Crea una zona con autorizzazioni IAM specifiche

L'autorizzazione Identity and Access Management (IAM) per una singola zona gestita dalle risorse consente di impostare autorizzazioni di lettura, scrittura o amministratore specifiche per diverse zone gestite nello stesso progetto.

Per istruzioni su come creare una zona con Identity and Access Management (IAM) specifico autorizzazioni, consulta Creare una zona con IAM autorizzazioni.

Crea una zona DNS di Service Directory

Puoi creare una zona di Service Directory che permetta l'accesso per eseguire query allo spazio dei nomi Service Directory tramite DNS.

Per istruzioni dettagliate su come creare una zona DNS di Service Directory, consulta Configurazione di una zona DNS di Service Directory.

Per istruzioni su come utilizzare il DNS per eseguire query in Service Directory, vedi Esecuzione di query utilizzando DNS.

Terraform

resource "google_dns_managed_zone" "private_zone" {
  name        = "private-zone"
  dns_name    = "private.example.com."
  description = "Example private DNS zone"
  labels = {
    foo = "bar"
  }

  visibility = "private"

  private_visibility_config {
    networks {
      network_url = google_compute_network.network_1.id
    }
    networks {
      network_url = google_compute_network.network_2.id
    }
  }
}

resource "google_compute_network" "network_1" {
  name                    = "network-1"
  auto_create_subnetworks = false
}

resource "google_compute_network" "network_2" {
  name                    = "network-2"
  auto_create_subnetworks = false
}

Crea una zona privata gestita di ricerca inversa

Una zona gestita di ricerca inversa è una zona privata con un attributo speciale che indica a Cloud DNS di eseguire una ricerca PTR in Compute Engine Dati DNS. Devi configurare zone gestite di ricerca inversa per Cloud DNS per risolvere correttamente i record PTR non RFC 1918 per la macchina virtuale (VM) di Compute Engine.

Per istruzioni su come creare un nuovo processo inverso gestito per eseguire una ricerca inversa, consulta Creare una ricerca inversa gestita zona di destinazione.

Crea una zona di inoltro

Le zone di forwarding consentono di scegliere come target i server dei nomi per zone private specifiche. Per istruzioni su come creare un nuovo account privato gestito zona di inoltro, consulta Creare una zona di inoltro zona di destinazione.

Crea una zona di peering

Il peering DNS consente di inviare richieste per i record provenienti dal a un'altra rete VPC. Per istruzioni su su come creare una zona di peering, consulta Creare una zona di peering zona di destinazione.

Creazione di una zona di associazione tra progetti

Crea una zona privata gestita che può essere associata a una rete di proprietà di un in un progetto diverso all'interno della stessa organizzazione. Per istruzioni su come crea una zona di associazione tra progetti, consulta Associazione tra progetti zone.

Aggiorna zone gestite

Cloud DNS consente di modificare determinati attributi dei tuoi pubblica o privata gestita.

Aggiorna zone pubbliche

Puoi modificare la descrizione o Configurazione DNSSEC di una zona pubblica.

Console

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

    Vai alle zone Cloud DNS

  2. Fai clic sulla zona pubblica che vuoi aggiornare.

  3. Fai clic su Modifica.

  4. Per modificare le impostazioni DNSSEC, in DNSSEC, seleziona Off, On o Trasferisci. Per ulteriori informazioni, vedi Abilitare DNSSEC per le zone gestite esistenti.

  5. (Facoltativo) Aggiorna la descrizione.

  6. Fai clic su Salva.

gcloud

Esegui l' dns managed-zones update :

gcloud dns managed-zones update NAME \
    --description=DESCRIPTION \
    --dnssec-state=STATE

Sostituisci quanto segue:

  • NAME: un nome per la tua zona
  • DESCRIPTION: una descrizione della zona
  • STATE: un'impostazione DNSSEC come Off, On, o Transfer

Per modificare le reti VPC a cui è visibile una zona privata:

Console

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

    Vai alle zone Cloud DNS

  2. Fai clic sulla zona privata che vuoi aggiornare.

  3. Fai clic su Modifica.

  4. Seleziona le reti VPC a cui deve essere inserita la zona privata visibile. Sono autorizzate solo le reti VPC selezionate per eseguire query sui record della zona.

  5. Fai clic su Salva.

gcloud

Esegui l' dns managed-zones update :

gcloud dns managed-zones update NAME \
    --description=DESCRIPTION \
    --networks=VPC_NETWORK_LIST

Sostituisci quanto segue:

  • NAME: un nome per la tua zona
  • DESCRIPTION: una descrizione della zona
  • VPC_NETWORK_LIST: un elenco di delimitato da virgole di Reti VPC autorizzate a eseguire query sulla zona

Aggiorna etichette

Per aggiungere nuove etichette, modificare quelle esistenti, rimuovere le etichette selezionate o cancellare tutte le etichette in una completa i seguenti passaggi.

gcloud

Esegui l' dns managed-zones update :

gcloud dns managed-zones update NAME \
    --update-labels=LABELS
gcloud dns managed-zones update NAME \
    --remove-labels=LABELS
gcloud dns managed-zones update NAME \
    --clear-labels

Sostituisci quanto segue:

  • NAME: un nome per la tua zona
  • LABELS: un elenco facoltativo di coppie chiave-valore delimitato da virgole coppie come dept=marketing o project=project1; per altre informazioni, consulta Documentazione SDK

Elenco e descrizione delle zone gestite

Le sezioni seguenti mostrano come elencare o descrivere una zona gestita.

Elenca zone gestite

Per elencare tutte le zone gestite all'interno di un progetto, completa i seguenti passaggi.

Console

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

    Vai alle zone Cloud DNS

  2. Visualizza le zone gestite nel riquadro di destra.

gcloud

Esegui l' dns managed-zones list :

gcloud dns managed-zones list

Per elencare tutte le zone gestite, modifica il comando come segue:

gcloud dns managed-zones list \
   --filter="visibility=public"

Per elencare tutte le zone private gestite, modifica il comando come segue:

gcloud dns managed-zones list \
   --filter="visibility=private"

Descrivi una zona gestita

Per visualizzare gli attributi di una zona gestita, completa i seguenti passaggi.

Console

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

    Vai alle zone Cloud DNS

  2. Fai clic sulla zona che vuoi ispezionare.

gcloud

Esegui l' dns managed-zones describe :

gcloud dns managed-zones describe NAME

Sostituisci NAME con il nome della tua zona.

Elimina una zona gestita

Per eliminare una zona gestita, completa i seguenti passaggi.

Console

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

    Vai alle zone Cloud DNS

  2. Fai clic sulla zona gestita che vuoi eliminare.

  3. Rimuovi tutti i record nella zona, tranne i record SOA e NS. Per ulteriori informazioni, vedi Rimozione di un record.

  4. Fai clic su Elimina zona.

gcloud

  1. Rimuovi tutti i record nella zona, tranne i record SOA e NS. Per ulteriori informazioni, vedi Rimozione di un record. Puoi svuotare rapidamente un'intera zona importando un file vuoto in un set di record. Per ulteriori informazioni, consulta la sezione Importazione ed esportazione di record. di grandi dimensioni. Ad esempio:

    touch empty-file
    gcloud dns record-sets import -z NAME \
       --delete-all-existing \
       empty-file
    rm empty-file
    

    Sostituisci NAME con il nome della tua zona.

  2. Per eliminare una nuova zona privata gestita, esegui il comando dns managed-zones delete:

    gcloud dns managed-zones delete NAME
    

    Sostituisci NAME con il nome della tua zona.

Passaggi successivi