Accedi alle VM utilizzando il DNS interno

Le VM nella stessa rete Virtual Private Cloud possono accedere l'una all'altra utilizzando nomi DNS interni anziché indirizzi IP.

Prima di iniziare

  • Se non l'hai ancora fatto, configura l'autenticazione. L'autenticazione è il processo mediante il quale viene verificata l'identità per l'accesso ai servizi e alle API Google Cloud. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti in Compute Engine nel seguente modo.

    Seleziona la scheda relativa a come prevedi di utilizzare gli esempi in questa pagina:

    Console

    Quando utilizzi la console Google Cloud per accedere ai servizi e alle API di Google Cloud, non devi configurare l'autenticazione.

    gcloud

    1. Installa Google Cloud CLI, quindi initialize eseguendo questo comando:

      gcloud init
    2. Imposta una regione e una zona predefinite.

    REST

    Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, devi utilizzare le credenziali che fornisci a gcloud CLI.

      Installa Google Cloud CLI, quindi initialize eseguendo questo comando:

      gcloud init

Determina il nome del DNS interno di una VM

Utilizza la procedura seguente per leggere il nome DNS interno assegnato a un'istanza VM. Puoi ottenere il nome del DNS interno eseguendo una query nella voce dei metadati hostname.

  1. Connettiti alla VM.
  2. Esegui una query sui metadati hostname:

    VM Linux

    curl "http://metadata.google.internal/computeMetadata/v1/instance/hostname" \
      -H "Metadata-Flavor: Google"
    

    VM Windows

    Invoke-RestMethod `
      -Headers @{"Metadata-Flavor" = "Google"} `
      -Uri "http://metadata.google.internal/computeMetadata/v1/instance/hostname"
    

Il server dei metadati restituisce il nome host della VM in uno dei seguenti formati, che mostra il tipo di nome del DNS interno utilizzato dalla VM:

  • DNS a livello di zona: VM_NAME.ZONE.c.PROJECT_ID.internal
  • DNS globale: VM_NAME.c.PROJECT_ID.internal

Nell'output:

  • VM_NAME: il nome della VM
  • ZONE: la zona in cui si trova la VM
  • PROJECT_ID: il progetto a cui appartiene la VM

Accedi alle VM in base al nome DNS interno

Per accedere alla VM, utilizza il nome del DNS interno al posto dell'indirizzo IP.

L'esempio seguente utilizza ping per contattare una VM che usa il DNS di zona. Questo metodo funziona a condizione che tu abbia creato una regola firewall che consente il traffico ICMP in arrivo verso l'istanza.

$ ping VM_NAME.ZONE.c.PROJECT_ID.internal -c 1

PING VM_NAME.ZONE.c.PROJECT_ID.internal (10.240.0.17) 56(84) bytes of data.
64 bytes from VM_NAME.ZONE.c.PROJECT_ID.internal (10.240.0.17): icmp_seq=1 ttl=64 time=0.136 ms

Sostituisci quanto segue:

  • VM_NAME: il nome della VM
  • ZONE: la zona in cui si trova la VM
  • PROJECT_ID: il progetto a cui appartiene la VM

Passaggi successivi