Mit dem internen DNS auf VMs zugreifen

VMs im selben Virtual Private Cloud-Netzwerk können über interne DNS-Namen anstelle von IP-Adressen aufeinander zugreifen.

Hinweise

  • Richten Sie die Authentifizierung ein, falls Sie dies noch nicht getan haben. Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Cloud de Confiance by S3NS Dienste und APIs überprüft. Wenn Sie Code oder Beispiele aus einer lokalen Entwicklungsumgebung ausführen möchten, können Sie sich bei Compute Engine authentifizieren. Wählen Sie dazu eine der folgenden Optionen aus:

    Wählen Sie den Tab für die Verwendung der Beispiele auf dieser Seite aus:

    Console

    Wenn Sie über die Cloud de Confiance console auf Cloud de Confiance by S3NS Dienste und APIs zugreifen, müssen Sie die Authentifizierung nicht einrichten.

    gcloud

    1. Installieren Sie die Google Cloud CLI und melden Sie sich dann mit Ihrer föderierten Identität in der gcloud CLI an. Nach der Anmeldung, initialisieren Sie die Google Cloud CLI mit dem folgenden Befehl:

      gcloud init
  • Legen Sie eine Standardregion und -zone fest.
  • REST

    Wenn Sie die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung verwenden möchten, verwenden Sie die Anmeldedaten, die Sie der gcloud CLI bereitstellen.

      Installieren Sie die Google Cloud CLI und melden Sie sich dann mit Ihrer föderierten Identität in der gcloud CLI an.

    Weitere Informationen finden Sie in der Cloud de Confiance Authentifizierungsdokumentation unter Für die Verwendung von REST authentifizieren.

Internen DNS-Namen einer VM ermitteln

Mit dem folgenden Verfahren können Sie den einer VM zugewiesenen internen DNS-Namen lesen. Sie können den internen DNS-Namen abrufen, indem Sie den Metadateneintrag hostname abfragen.

  1. Verbindung zur VM herstellen
  2. Fragen Sie die hostname-Metadaten ab:

    Linux-VMs

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

    Windows-VMs

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

Der Metadatenserver gibt den Hostnamen der VM in einem der folgenden Formate zurück. Dabei wird der Typ des internen DNS-Namens angezeigt, der von der VM verwendet wird:

  • Zonal DNS: VM_NAME.ZONE.c.PROJECT_ID.internal
  • Global DNS: VM_NAME.c.PROJECT_ID.internal

Dabei gilt:

  • VM_NAME: der Name der VM
  • ZONE: die Zone, in der sich die VM befindet
  • PROJECT_ID: das Projekt, zu dem die Instanz gehört.

Mit dem internen DNS-Namen auf VMs zugreifen

Wenn Sie auf die VM zugreifen möchten, verwenden Sie den internen DNS-Namen anstelle der IP-Adresse.

Im folgenden Beispiel wird mit ping eine VM kontaktiert, die ein zonales DNS verwendet. Diese Methode funktioniert nur, wenn Sie eine Firewallregel erstellt haben, die eingehenden ICMP-Traffic an die Instanz zulässt. Diese Methode funktioniert nur, wenn Sie eine Firewallregel erstellt haben, die eingehenden ICMP-Traffic an die Instanz zulässt.

$ 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

Ersetzen Sie Folgendes:

  • VM_NAME: der Name der VM
  • ZONE: die Zone, in der sich die VM befindet
  • PROJECT_ID: das Projekt, zu dem die Instanz gehört.

Nächste Schritte