Mengakses VM menggunakan DNS internal

VM di jaringan Virtual Private Cloud yang sama dapat mengakses satu sama lain menggunakan nama DNS internal, bukan alamat IP.

Sebelum memulai

  • Siapkan autentikasi jika Anda belum melakukannya. Autentikasi memverifikasi identitas Anda untuk mengakses Google Cloud layanan dan API. Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi ke Compute Engine dengan memilih salah satu opsi berikut:

    Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:

    Konsol

    Saat menggunakan Google Cloud konsol untuk mengakses Google Cloud layanan dan API, Anda tidak perlu menyiapkan autentikasi.

    gcloud

    1. Instal Google Cloud CLI. Setelah penginstalan, inisialisasi Google Cloud CLI dengan menjalankan perintah berikut:

      gcloud init

      Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu .

  • Tetapkan region dan zona default.
  • REST

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

      Instal Google Cloud CLI.

      Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu .

    Untuk mengetahui 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 menunjukkan 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 sebagai pengganti 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 berikutnya