Membuat data PTR untuk instance VM


Dengan data PTR yang dapat dikonfigurasi, Anda dapat menentukan data balik DNS yang terkait dengan alamat IP eksternal instance VM, sehingga aplikasi yang mengandalkan data ini dapat beroperasi sebagaimana mestinya.

Beberapa aplikasi memerlukan data DNS terbalik (data PTR) untuk me-resolve alamat IP menjadi nama domain. Misalnya, aplikasi yang menggunakan SMTP memerlukan data PTR yang mengarah ke domain tempat email dikirimkan. Tanpa data tersebut, filter spam dapat menandai email dengan reputasi rendah, yang menyebabkan email tersebut masuk ke folder spam atau tidak terkirim sama sekali.

Anda dapat menambahkan data PTR hanya ke antarmuka jaringan utama instance VM. Data PTR tidak tersedia untuk frontend load balancer, Cloud NAT, atau alamat IP non-VM lainnya.

Data PTR IPv6 hanya tersedia jika antarmuka jaringan utama instance terhubung ke subnet dual-stack yang memiliki rentang alamat IPv6 eksternal. Dalam hal ini, Anda dapat memiliki data PTR IPv4 dan IPv6 yang terpisah.

Untuk membuat data PTR kustom untuk mengganti nama PTR DNS internal yang dibuat otomatis, lihat Zona pencarian balik yang dikelola.

Sebelum memulai

  • Siapkan autentikasi, jika Anda belum melakukannya. Autentikasi adalah proses verifikasi identitas Anda untuk akses ke layanan dan API Google Cloud. Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi ke Compute Engine sebagai berikut.

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

    Konsol

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

    gcloud

    1. Instal Google Cloud CLI, lalu initialize dengan menjalankan perintah berikut:

      gcloud init
    2. Menetapkan 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, lalu initialize dengan menjalankan perintah berikut:

      gcloud init

Memverifikasi kepemilikan domain

Sebelum membuat VM dengan data PTR kustom, pastikan Anda adalah pemilik nama domain. Memverifikasi kepemilikan adalah langkah keamanan untuk membuktikan kepada Google bahwa Anda adalah pemilik domain.

Anda dapat memverifikasi nama domain dengan 2 cara:

  • Jika memiliki Akun Google, Anda dapat memverifikasi dengan menggunakan Search Console.
  • Jika memiliki Akun Google atau non-Google, Anda dapat memverifikasi dengan menambahkan alamat IP VM ke konfigurasi DNS Anda.

Verifikasi dengan menggunakan Search Console

  1. Buka Search Console, lalu login dengan menggunakan Akun Google yang akan digunakan untuk menambahkan data PTR ke instance Anda. Anda dapat memverifikasi kepemilikan domain dengan beberapa akun.
  2. Masukkan nama domain PTR.
  3. Klik Lanjutkan.
  4. Ikuti petunjuk, lalu klik Buka Properti.
  5. Klik Setelan (ada di menu sebelah kiri dekat bagian bawah), lalu klik Verifikasi Kepemilikan.

Setelah Anda memverifikasi bahwa Anda adalah pemilik domain, di panel Setelan, klik Pengguna untuk melihat pemilik terverifikasi lainnya. Untuk menambahkan data PTR di domain lain, klik pemilih properti di sebelah kiri yang menampilkan domain Anda saat ini. Klik Tambahkan properti untuk menambahkan domain tersebut.

Jika nama domain Anda tidak segera diverifikasi, gunakan Metode yang Direkomendasikan untuk mendapatkan verifikasi.

Verifikasi dengan menambahkan alamat IP VM ke konfigurasi DNS Anda

  1. Jika VM Anda belum ada, cadangkan alamat IP eksternal statis regional dan gunakan nanti selama pembuatan VM.
  2. Tambahkan data "A" dengan alamat IP eksternal VM ke konfigurasi DNS domain Anda.

Membuat instance VM dengan data PTR

Anda dapat menetapkan data PTR saat membuat instance baru. Untuk menambahkan data PTR untuk instance yang ada, baca Menambahkan data PTR.

Konsol

  1. Di konsol Google Cloud, buka halaman Create an instance.

    Buka Create an instance

  2. Tentukan detail VM.

  3. Luaskan bagian Opsi lanjutan, dan lakukan hal berikut:

    1. Luaskan bagian Jaringan.
    2. Buat satu atau beberapa antarmuka jaringan untuk digunakan dengan VM ini. Atau, Anda dapat menggunakan antarmuka jaringan default.
    3. Di bagian Antarmuka jaringan, luaskan antarmuka jaringan pertama, yang merupakan antarmuka jaringan utama.
    4. Di bagian Public DNS PTR record, pilih setiap jenis data PTR yang ingin ditambahkan.
    5. Di kolom Nama domain PTR, masukkan nama domain untuk setiap jenis data PTR yang ingin Anda tambahkan.
    6. Di kolom Alamat IPv4 eksternal atau Alamat IPv6 eksternal, pilih alamat IP yang Anda cadangkan sebelumnya. Jika Anda telah memverifikasi alamat IP VM melalui konfigurasi DNS, Anda harus menentukan alamat tersebut.
    7. Untuk mengonfirmasi setelan antarmuka jaringan, klik Selesai.
  4. Konfigurasi properti lainnya untuk VM baru Anda.

  5. Di bagian bawah halaman, klik Buat.

Setelah VM dimulai, Anda dapat menjalankan pencarian DNS terbalik di alamat IP eksternal VM untuk mengonfirmasi bahwa data PTR berfungsi seperti yang diharapkan.

gcloud

  • Untuk membuat instance baru dengan data PTR IPv4 terkait, gunakan perintah gcloud instances create.

    gcloud compute instances create INSTANCE_NAME \
        --image-family IMAGE_FAMILY \
        --image-project IMAGE_PROJECT \
        --public-ptr \
        --public-ptr-domain DOMAIN_NAME \
        --address=IP_ADDRESS
    

    Ganti kode berikut:

    • INSTANCE_NAME: nama instance VM baru.
    • IMAGE_FAMILY: salah satu kelompok gambar yang tersedia.
    • IMAGE_PROJECT: project Google Cloud yang menjadi tempat penyelesaian semua referensi kelompok gambar dan gambar. Jika Anda tidak memberikan nama project, project default saat ini akan digunakan.
    • DOMAIN_NAME: nama domain yang akan ditambahkan ke instance ini.
    • IP_ADDRESS: alamat IP yang sebelumnya dicadangkan. Jika Anda telah memverifikasi alamat IP VM melalui konfigurasi DNS, Anda harus menentukan alamat tersebut.
  • Untuk membuat instance baru dengan data PTR IPv6 terkait, lakukan hal berikut:

    1. Buat VM stack ganda.
    2. Tambahkan data PTR IPv6.

REST

  • Untuk membuat instance baru dengan data PTR IPv4, buat permintaan POST ke metode instances.insert.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
    {
      "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
      "name": "INSTANCE_NAME",
      "disks": [
        {
          "initializeParams": {
            "sourceImage": "projects/debian-cloud/global/images/family/debian-10"
          },
          "boot": true
        }
      ],
      "networkInterfaces": [
        {
          "network": "NETWORK",
          "accessConfigs": [
            {
              "type": "ONE_TO_ONE_NAT",
              "name": "External NAT",
              "natIP": "IP_ADDRESS",
              "publicPtrDomainName": "DOMAIN_NAME",
              "setPublicPtr": true
            }
          ]
        }
      ]
    }
    

    Ganti kode berikut:

    • PROJECT_ID: ID project Anda.
    • ZONE: zona instance Anda.
    • MACHINE_TYPE: jenis mesin.
    • INSTANCE_NAME: nama instance.
    • NETWORK: URL jaringan.
    • IP_ADDRESS: alamat IP yang sebelumnya dicadangkan. Jika Anda telah memverifikasi alamat IP VM melalui konfigurasi DNS, Anda harus menentukan alamat tersebut.
    • DOMAIN_NAME: nama domain yang akan ditambahkan.
  • Untuk membuat instance baru dengan data PTR IPv6, lakukan langkah berikut:

    1. Buat VM stack ganda.
    2. Tambahkan data PTR IPv6.

Menambahkan data PTR

Anda dapat menambahkan data PTR dengan memperbarui konfigurasi akses di antarmuka jaringan utama, nic0, dari instance VM.

Konsol

  1. Di konsol Google Cloud, buka halaman Instance VM.

    Buka instance VM

  2. Klik instance yang ingin diedit.

  3. Klik Edit.

  4. Di bagian Antarmuka jaringan, klik antarmuka jaringan utama.

  5. Di bagian Data PTR DNS publik, pilih setiap jenis data PTR yang ingin ditambahkan.

  6. Di kolom Nama domain PTR, masukkan nama domain untuk setiap jenis data PTR yang ingin ditambahkan.

  7. Klik Selesai, lalu klik Simpan.

gcloud

  1. Jika VM Anda tidak memiliki konfigurasi akses, tambahkan konfigurasi akses menggunakan perintah gcloud compute instances add-access-config.

    gcloud compute instances add-access-config INSTANCE_NAME
    

    Ganti INSTANCE_NAME dengan nama instance Anda.

  2. Perbarui konfigurasi akses untuk menambahkan data PTR menggunakan perintah gcloud compute instances update-access-config. Untuk menambahkan data PTR IPv4 dan IPv6, gunakan perintah berikut satu per satu.

    • Untuk IPv4:

      gcloud compute instances update-access-config INSTANCE_NAME \
          --public-ptr \
          --public-ptr-domain DOMAIN_NAME
      
    • Untuk IPv6:

      gcloud compute instances update-access-config INSTANCE_NAME \
          --ipv6-public-ptr-domain=DOMAIN_NAME
      

    Ganti kode berikut:

    • INSTANCE_NAME: nama instance yang akan diperbarui.
    • DOMAIN_NAME: nama domain yang akan ditambahkan.

REST

  1. Jika VM Anda tidak memiliki konfigurasi akses, tambahkan konfigurasi akses dengan membuat permintaan POST ke metode instances.addAccessConfig.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/addAccessConfig?networkInterface="nic0"
    
  2. Perbarui konfigurasi akses untuk menambahkan data PTR dengan membuat permintaan POST ke metode instances.updateAccessConfig. Untuk menambahkan data PTR IPv4 dan IPv6, buat permintaan berikut satu per satu.

    • Untuk IPv4:

      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/updateAccessConfig?networkInterface=nic0
      {
        "setPublicPtr": true,
        "publicPtrDomainName": "DOMAIN_NAME",
        "type": "ONE_TO_ONE_NAT"
      }
      
    • Untuk IPv6:

      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/updateAccessConfig?networkInterface=nic0
      {
        "publicPtrDomainName": "DOMAIN_NAME",
        "type": "DIRECT_IPV6"
      }
      

    Ganti kode berikut:

    • PROJECT_ID: ID project.
    • ZONE: zona instance.
    • INSTANCE_NAME: nama instance.
    • DOMAIN_NAME: nama domain yang akan ditambahkan.

Hapus data PTR

Untuk menghapus data PTR, perbarui konfigurasi akses pada antarmuka jaringan utama, nic0, pada instance VM. Saat Anda menghapus data PTR, Google Cloud akan merespons pencarian DNS terbalik dengan nama domain default googleusercontent.com yang sepenuhnya memenuhi syarat.

Konsol

  1. Di konsol Google Cloud, buka halaman Instance VM.

    Buka instance VM

  2. Klik instance yang ingin diedit.

  3. Klik Edit.

  4. Di bagian Antarmuka jaringan, klik antarmuka jaringan utama.

  5. Di bagian Data PTR DNS publik, hapus centang pada kotak untuk setiap jenis data PTR yang ingin dihapus.

  6. Klik Selesai, lalu klik Simpan.

gcloud

Untuk menghapus data PTR, gunakan perintah gcloud compute instances update-access-config. Untuk menghapus data PTR IPv4 dan IPv6, gunakan perintah berikut secara terpisah.

  • Untuk IPv4:

    gcloud compute instances update-access-config INSTANCE_NAME \
        --no-public-ptr
    
  • Untuk IPv6:

    gcloud compute instances update-access-config INSTANCE_NAME \
        --no-ipv6-public-ptr
    

Ganti INSTANCE_NAME dengan nama instance yang akan diperbarui.

REST

Untuk menghapus data PTR, buat permintaan POST ke metode instances.updateAccessConfig. Untuk menghapus data PTR IPv4 dan IPv6, buat permintaan berikut satu per satu.

  • Untuk IPv4:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/updateAccessConfig?networkInterface=nic0
    {
      "setPublicPtr": false,
      "type": "ONE_TO_ONE_NAT"
    }
    
  • Untuk IPv6:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/updateAccessConfig?networkInterface=nic0
    {
      "publicPtrDomainName": "",
      "type": "DIRECT_IPV6"
    }
    

Ganti kode berikut:

  • PROJECT_ID: ID project.
  • ZONE: zona instance.
  • INSTANCE_NAME: nama instance.

Batasan

  • Saat VM dimigrasikan ke host lain sebagai bagian dari proses migrasi langsung selama event pemeliharaan, logika data PTR tidak menangani beberapa kasus ekstrem dengan benar dan mengembalikan Data PTR DNS ke nama domain yang sepenuhnya memenuhi syarat (FQDN) googleusercontent.com. Untuk memulihkan fungsi, terapkan data PTR lagi.

  • Jika Anda menghentikan VM yang memiliki data PTR IPv6, pendaftaran data PTR IPv6 akan dibatalkan untuk sementara dan tidak terlihat di VM. Data akan ditambahkan kembali secara otomatis saat Anda memulai ulang VM.

Langkah selanjutnya