Creare un record PTR per un'istanza VM


I record PTR configurabili ti consentono di definire il record DNS inverso associato all'indirizzo IP esterno di un'istanza VM in modo che le applicazioni che si basano su questi record possano funzionare come previsto.

Alcune applicazioni richiedono record DNS inversi (record PTR) per risolvere gli indirizzi IP in nomi di dominio. Ad esempio, le applicazioni che utilizzano SMTP richiedono un record PTR che indichi il dominio da cui viene inviata un'email. Senza questo record, i filtri antispam possono contrassegnare le email con una reputazione bassa, in modo che finiscano nelle cartelle Spam o non vengano inviate affatto.

Puoi aggiungere record PTR solo all'interfaccia di rete principale di un'istanza VM. I record PTR non sono disponibili per i frontend del bilanciatore del carico, Cloud NAT o altri indirizzi IP non VM.

I record PTR IPv6 sono disponibili solo se l'interfaccia di rete principale dell'istanza è collegata a una subnet a doppio stack con un intervallo di indirizzi IPv6 esterno. In questo caso, puoi avere record PTR IPv4 e IPv6 separati.

Per creare record PTR personalizzati che sostituiscono i nomi PTR DNS interni creati automaticamente, consulta Zone di ricerca inversa gestite.

Prima di iniziare

  • Se non l'hai ancora fatto, configura l'autenticazione. L'autenticazione è la procedura mediante la quale la tua identità viene verificata per l'accesso alle API e ai servizi Google Cloud. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine selezionando una delle seguenti opzioni:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. REST

      Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite a gcloud CLI.

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

      Per saperne di più, consulta Eseguire l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.

Verificare la proprietà del dominio

Prima di creare una VM con un record PTR personalizzato, verifica di possedere il nome di dominio. La verifica della proprietà è una misura di sicurezza per dimostrare a Google che sei il proprietario del dominio.

Puoi verificare il tuo nome di dominio in due modi:

  • Se hai un Account Google, puoi eseguire la verifica utilizzando Search Console.
  • Se hai un account Google o non Google, puoi verificare aggiungendo l'indirizzo IP della VM alla configurazione DNS.

Verificare utilizzando Search Console

  1. Apri Search Console e accedi utilizzando l'Account Google che utilizzerai per aggiungere un record PTR alla tua istanza. Puoi verificare la proprietà del dominio con più account.
  2. Inserisci il nome di dominio PTR.
  3. Fai clic su Continua.
  4. Segui le istruzioni e poi fai clic su Vai alla proprietà.
  5. Fai clic su Impostazioni (nel menu a sinistra in basso) e poi su Verifica della proprietà.

Dopo aver verificato di essere il proprietario del dominio, nel riquadro Impostazioni, fai clic su Utenti per visualizzare gli altri proprietari verificati. Per aggiungere record PTR in altri domini, fai clic sul selettore di proprietà a sinistra che mostra il tuo dominio corrente. Fai clic su Aggiungi una proprietà per aggiungere questi domini.

Se il nome di dominio non viene verificato immediatamente, utilizza il metodo consigliato per ottenere la verifica.

Verifica aggiungendo l'indirizzo IP della VM alla configurazione DNS

  1. Se la VM non esiste ancora, prenota un indirizzo IP esterno statico regionale e utilizzalo in un secondo momento durante la creazione della VM.
  2. Aggiungi un record "A" con l'indirizzo IP esterno della VM alla configurazione DNS del tuo dominio.

Creare istanze VM con record PTR

Puoi specificare i record PTR quando crei nuove istanze. Per aggiungere un record PTR per un'istanza esistente, consulta Aggiungere record PTR.

Console

  1. Nella console Google Cloud, vai alla pagina Crea un'istanza.

    Vai a Crea un'istanza

  2. Specifica i dettagli della VM.

  3. Espandi la sezione Opzioni avanzate e segui questi passaggi:

    1. Espandi la sezione Networking.
    2. Crea una o più interfacce di rete da utilizzare con questa VM. In alternativa, puoi utilizzare l'interfaccia di rete predefinita.
    3. Nella sezione Interfacce di rete, espandi la prima interfaccia di rete, ovvero quella principale.
    4. Nella sezione Record PTR DNS pubblico, seleziona ogni tipo di record PTR da aggiungere.
    5. Nel campo Nome di dominio PTR, inserisci un nome di dominio per ogni tipo di record PTR che vuoi aggiungere.
    6. Nel campo Indirizzo IPv4 esterno o Indirizzo IPv6 esterno, scegli l'indirizzo IP precedentemente prenotato. Se hai verificato l'indirizzo IP della VM tramite la configurazione DNS, devi specificarlo.
    7. Per confermare le impostazioni dell'interfaccia di rete, fai clic su Fine.
  4. Configura le proprietà rimanenti per la nuova VM.

  5. Nella parte inferiore della pagina, fai clic su Crea.

Dopo l'avvio della VM, puoi eseguire una ricerca DNS inversa sull'indirizzo IP esterno della VM per verificare che il record PTR funzioni come previsto.

gcloud

  • Per creare una nuova istanza con un record PTR IPv4 associato, utilizza il comando gcloud instances create.

    gcloud compute instances create INSTANCE_NAME \
        --image-family IMAGE_FAMILY \
        --image-project IMAGE_PROJECT \
        --public-ptr \
        --public-ptr-domain DOMAIN_NAME \
        --address=IP_ADDRESS
    

    Sostituisci quanto segue:

    • INSTANCE_NAME: il nome della nuova istanza VM.
    • IMAGE_FAMILY: una delle famiglie di immagini disponibili.
    • IMAGE_PROJECT: il progetto Google Cloud rispetto al quale vengono risolti tutti i riferimenti alle immagini e alle famiglie di immagini. Se non fornisci un nome del progetto, viene utilizzato il progetto predefinito corrente.
    • DOMAIN_NAME: il nome di dominio da aggiungere a questa istanza.
    • IP_ADDRESS: il tuo indirizzo IP precedentemente riservato. Se hai verificato l'indirizzo IP della VM tramite la configurazione DNS, devi specificarlo.
  • Per creare una nuova istanza con un record PTR IPv6 associato, segui questi passaggi:

    1. Crea una VM dual-stack.
    2. Aggiungi un record PTR IPv6.

REST

  • Per creare una nuova istanza con un record PTR IPv4, invia una richiesta POST al metodo instances.insert.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
    {
      "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
      "name": "INSTANCE_NAME",
      "disks": [
        {
          "initializeParams": {
            "sourceImage": "projects/debian-cloud/global/images/family/debian-10"
          },
          "boot": true
        }
      ],
      "networkInterfaces": [
        {
          "network": "NETWORK",
          "accessConfigs": [
            {
              "type": "ONE_TO_ONE_NAT",
              "name": "External NAT",
              "natIP": "IP_ADDRESS",
              "publicPtrDomainName": "DOMAIN_NAME",
              "setPublicPtr": true
            }
          ]
        }
      ]
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto.
    • ZONE: la zona dell'istanza.
    • MACHINE_TYPE: il tipo di macchina.
    • INSTANCE_NAME: il nome dell'istanza.
    • NETWORK: l'URL della rete.
    • IP_ADDRESS: il tuo indirizzo IP precedentemente riservato. Se hai verificato l'indirizzo IP della VM tramite la configurazione DNS, devi specificarlo.
    • DOMAIN_NAME: il nome di dominio da aggiungere.
  • Per creare una nuova istanza con un record PTR IPv6:

    1. Crea una VM dual-stack.
    2. Aggiungi un record PTR IPv6.

Aggiungere record PTR

Puoi aggiungere record PTR aggiornando la configurazione di accesso sull'interfaccia di rete principale nic0 di un'istanza VM.

Console

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Fai clic sull'istanza da modificare.

  3. Fai clic su Modifica.

  4. Nella sezione Interfacce di rete, fai clic sull'interfaccia di rete principale.

  5. Nella sezione Record PTR DNS pubblico, seleziona ogni tipo di record PTR da aggiungere.

  6. Nel campo Nome di dominio PTR, inserisci un nome di dominio per ogni tipo di record PTR che vuoi aggiungere.

  7. Fai clic su Fine e poi su Salva.

gcloud

  1. Se la VM non ha una configurazione di accesso, aggiungine una utilizzando il comando gcloud compute instances add-access-config.

    gcloud compute instances add-access-config INSTANCE_NAME
    

    Sostituisci INSTANCE_NAME con il nome della istanza.

  2. Aggiorna la configurazione di accesso per aggiungere il record PTR utilizzando il comando gcloud compute instances update-access-config. Per aggiungere i record PTR IPv4 e IPv6, utilizza i seguenti comandi singolarmente.

    • Per IPv4:

      gcloud compute instances update-access-config INSTANCE_NAME \
          --public-ptr \
          --public-ptr-domain DOMAIN_NAME
      
    • Per IPv6:

      gcloud compute instances update-access-config INSTANCE_NAME \
          --ipv6-public-ptr-domain=DOMAIN_NAME
      

    Sostituisci quanto segue:

    • INSTANCE_NAME: il nome dell'istanza da aggiornare.
    • DOMAIN_NAME: il nome di dominio da aggiungere.

REST

  1. Se la VM non ha una configurazione di accesso, aggiungine una inviando una richiesta POST al metodo instances.addAccessConfig.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/addAccessConfig?networkInterface="nic0"
    
  2. Aggiorna la configurazione di accesso per aggiungere il record PTR inviando una richiesta POST al metodo instances.updateAccessConfig. Per aggiungere i record PTR IPv4 e IPv6, effettua le seguenti richieste singolarmente.

    • Per IPv4:

      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/updateAccessConfig?networkInterface=nic0
      {
        "setPublicPtr": true,
        "publicPtrDomainName": "DOMAIN_NAME",
        "type": "ONE_TO_ONE_NAT"
      }
      
    • Per IPv6:

      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/updateAccessConfig?networkInterface=nic0
      {
        "publicPtrDomainName": "DOMAIN_NAME",
        "type": "DIRECT_IPV6"
      }
      

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID progetto.
    • ZONE: la zona dell'istanza.
    • INSTANCE_NAME: il nome dell'istanza.
    • DOMAIN_NAME: il nome di dominio da aggiungere.

Rimuovere i record PTR

Per rimuovere i record PTR, aggiorna la configurazione di accesso sull'interfaccia di rete principale nic0 di un'istanza VM. Quando rimuovi un record PTR, Google Cloud risponde alle ricerche DNS inverse con un nome di dominio completamente qualificato predefinito di googleusercontent.com.

Console

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Fai clic sull'istanza da modificare.

  3. Fai clic su Modifica.

  4. Nella sezione Interfacce di rete, fai clic sull'interfaccia di rete principale.

  5. Nella sezione Record PTR DNS pubblico, deseleziona la casella di controllo per ogni tipo di record PTR che vuoi rimuovere.

  6. Fai clic su Fine e poi su Salva.

gcloud

Per rimuovere un record PTR, utilizza il comando gcloud compute instances update-access-config. Per rimuovere i record PTR IPv4 e IPv6, utilizza i seguenti comandi separatamente.

  • Per IPv4:

    gcloud compute instances update-access-config INSTANCE_NAME \
        --no-public-ptr
    
  • Per IPv6:

    gcloud compute instances update-access-config INSTANCE_NAME \
        --no-ipv6-public-ptr
    

Sostituisci INSTANCE_NAME con il nome dell'istanza da aggiornare.

REST

Per rimuovere un record PTR, invia una richiesta POST al metodo instances.updateAccessConfig. Per rimuovere i record PTR IPv4 e IPv6, invia le seguenti richieste singolarmente.

  • Per IPv4:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/updateAccessConfig?networkInterface=nic0
    {
      "setPublicPtr": false,
      "type": "ONE_TO_ONE_NAT"
    }
    
  • Per IPv6:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/updateAccessConfig?networkInterface=nic0
    {
      "publicPtrDomainName": "",
      "type": "DIRECT_IPV6"
    }
    

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto.
  • ZONE: la zona dell'istanza.
  • INSTANCE_NAME: il nome dell'istanza.

Limitazioni

  • Quando viene eseguita la migrazione di una VM a un altro host nell'ambito della procedura di migrazione live durante gli eventi di manutenzione, la logica del record PTR non gestisce correttamente alcuni casi limite e ripristina i record PTR DNS al nome di dominio completo (FQDN) googleusercontent.com. Per ripristinare la funzionalità, applica di nuovo il record PTR.

  • Quando arresti una VM con un record PTR IPv6, questo viene ritirato temporaneamente e non è visibile sulla VM. Il record viene aggiunto nuovamente automaticamente al riavvio della VM.

Passaggi successivi