Mit dem internen DNS auf VMs zugreifen

VMs im selben Virtual Private Cloud-Netzwerk können mithilfe interner 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 Trusted Cloud by S3NS -Dienste und APIs überprüft. Zum Ausführen von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich so bei der Compute Engine authentifizieren:

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

    Console

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

    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 folgendem Befehl:

      gcloud init
    2. Set a default region and zone.

    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. Nach der Anmeldung initialisieren Sie die Google Cloud CLI mit folgendem Befehl:

      gcloud init

    Weitere Informationen finden Sie in der Dokumentation zur Trusted Cloud -Authentifizierung 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

Verwenden Sie für den Zugriff auf die VM 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.

$ 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