Mengakses VM menggunakan DNS internal


VM dalam jaringan Virtual Private Cloud yang sama dapat saling mengakses menggunakan nama DNS internal, bukan alamat IP.

Sebelum memulai

  • Jika Anda belum melakukannya, siapkan autentikasi. Autentikasi adalah proses verifikasi identitas Anda untuk mengakses layanan dan API Google Cloud. Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat mengautentikasi ke Compute Engine dengan memilih salah satu opsi berikut:

    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

      Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.

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

        gcloud init

      Untuk informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud.

Menentukan nama DNS internal untuk VM

Gunakan prosedur berikut untuk membaca nama DNS internal yang ditetapkan ke instance VM. Anda bisa mendapatkan nama DNS internal dengan membuat kueri entri metadata hostname.

  1. Menghubungkan ke VM.
  2. Buat kueri metadata 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"
    

Server metadata menampilkan nama host VM dalam salah satu format berikut, yang menampilkan jenis nama DNS internal yang digunakan VM:

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

Pada output:

  • VM_NAME: nama VM
  • ZONE: zona tempat VM berada
  • PROJECT_ID: project tempat VM berada

Mengakses VM dengan nama DNS internal

Untuk mengakses VM, gunakan nama DNS internal, bukan alamat IP.

Contoh berikut menggunakan ping untuk menghubungi VM yang menggunakan DNS zona. Metode ini berfungsi, asalkan Anda telah membuat aturan firewall yang mengizinkan traffic ICMP yang masuk ke instance.

$ 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

Ganti kode berikut:

  • VM_NAME: nama VM
  • ZONE: zona tempat VM berada
  • PROJECT_ID: project tempat VM berada

Langkah selanjutnya