Membuat, mengubah, dan menghapus zona

Halaman ini memberikan petunjuk untuk membuat, memperbarui, mencantumkan, dan menghapus zona terkelola Cloud DNS. Sebelum menggunakan halaman ini, pahami ringkasan Cloud DNS dan Istilah kunci.

Sebelum memulai

Cloud DNS API mengharuskan Anda membuat project Cloud DNS dan mengaktifkan Cloud DNS API.

Jika membuat aplikasi yang menggunakan REST API, Anda juga harus membuat client ID OAuth 2.0.

  1. Jika Anda belum memilikinya, daftar untuk membuat Akun Google.
  2. Aktifkan Cloud DNS API di konsol Google Cloud. Anda dapat memilih project Compute Engine atau App Engine yang ada, atau membuat project baru.
  3. Jika perlu membuat permintaan ke REST API, Anda harus membuat ID OAuth 2.0. Lihat Menyiapkan OAuth 2.0.
  4. Dalam project, catat informasi berikut yang perlu Anda masukkan di langkah berikutnya:
    • Client ID (xxxxxx.apps.googleusercontent.com).
    • Project ID yang ingin Anda gunakan. Anda dapat menemukan ID di bagian atas halaman Ringkasan di konsol Google Cloud. Anda juga dapat meminta pengguna untuk memberikan nama project yang ingin mereka gunakan di aplikasi Anda.

Jika belum menjalankan Google Cloud CLI sebelumnya, Anda harus menjalankan perintah berikut untuk menentukan nama project dan melakukan autentikasi dengan konsol Google Cloud:

gcloud auth login

Jika Anda ingin menjalankan perintah gcloud pada resource Google Cloud di project lain, tentukan opsi --project untuk perintah ini dan untuk perintah gcloud lainnya di seluruh halaman ini.

Membuat zona terkelola

Setiap zona terkelola yang Anda buat dikaitkan dengan project Google Cloud. Bagian berikut menjelaskan cara membuat jenis zona terkelola yang didukung Cloud DNS.

Membuat zona publik

Untuk membuat zona terkelola baru, selesaikan langkah-langkah berikut.

Konsol

  1. Di konsol Google Cloud, buka halaman Create a DNS zone.

    Buka Membuat zona DNS

  2. Untuk Jenis zona, pilih Publik.

  3. Masukkan Nama zona seperti my-new-zone.

  4. Masukkan akhiran nama DNS untuk zona menggunakan nama domain yang Anda miliki. Semua data dalam zona memiliki akhiran ini, misalnya: example.com.

  5. Di bagian DNSSEC, pilih Nonaktif, Aktif, atau Transfer. Untuk mengetahui informasi selengkapnya, lihat Mengaktifkan DNSSEC untuk zona terkelola yang ada.

  6. Klik Create. Halaman Zone details akan ditampilkan.

gcloud

Jalankan perintah dns managed-zones create :

gcloud dns managed-zones create NAME \
    --description=DESCRIPTION \
    --dns-name=DNS_SUFFIX \
    --labels=LABELS \
    --visibility=public

Ganti kode berikut:

  • NAME: nama untuk zona Anda
  • DESCRIPTION: deskripsi untuk zona Anda
  • DNS_SUFFIX: suffix DNS untuk zona Anda, seperti example.com
  • LABELS: daftar pasangan nilai kunci yang dipisahkan koma opsional seperti dept=marketing atau project=project1; untuk informasi selengkapnya, lihat dokumentasi SDK

Terraform

resource "google_dns_managed_zone" "example_zone" {
  name        = "example-zone"
  dns_name    = "example-${random_id.rnd.hex}.com."
  description = "Example DNS zone"
  labels = {
    name = "value"
  }
}

resource "random_id" "rnd" {
  byte_length = 4
}

API

Kirim permintaan POST menggunakan metode managedZones.create:

POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones
{
  "name": "NAME",
  "description": "DESCRIPTION",
  "dnsName": "DNS_NAME",
  "visibility": "public"
}

Ganti kode berikut:

  • PROJECT_ID: ID project tempat zona dikelola dibuat
  • NAME: nama untuk zona Anda
  • DESCRIPTION: deskripsi untuk zona Anda
  • DNS_NAME: suffix DNS untuk zona Anda, seperti example.com

Membuat zona pribadi

Untuk membuat zona pribadi terkelola baru dengan data DNS pribadi yang dikelola oleh Cloud DNS, selesaikan langkah-langkah berikut. Untuk informasi selengkapnya, lihat Praktik terbaik untuk zona pribadi Cloud DNS.

Konsol

  1. Di konsol Google Cloud, buka halaman Create a DNS zone.

    Buka Membuat zona DNS

  2. Untuk Jenis zona, pilih Pribadi.

  3. Masukkan Nama zona seperti my-new-zone.

  4. Masukkan akhiran nama DNS untuk zona pribadi. Semua data dalam zona memiliki akhiran ini, misalnya: example.private.

  5. Opsional: Tambahkan deskripsi.

  6. Di bagian Options, pilih Default (private).

  7. Pilih jaringan Virtual Private Cloud (VPC) yang dapat melihat zona pribadi. Hanya jaringan VPC yang Anda pilih yang diberi otorisasi untuk membuat kueri data di zona.

  8. Klik Create.

gcloud

Jalankan perintah dns managed-zones create :

gcloud dns managed-zones create NAME \
    --description=DESCRIPTION \
    --dns-name=DNS_SUFFIX \
    --networks=VPC_NETWORK_LIST \
    --labels=LABELS \
    --visibility=private

Ganti kode berikut:

  • NAME: nama untuk zona Anda
  • DESCRIPTION: deskripsi untuk zona Anda
  • DNS_SUFFIX: suffix DNS untuk zona Anda, seperti example.private
  • VPC_NETWORK_LIST: daftar jaringan VPC yang dipisahkan koma yang diberi otorisasi untuk membuat kueri zona
  • LABELS: daftar pasangan nilai kunci yang dipisahkan koma opsional seperti dept=marketing atau project=project1; untuk informasi selengkapnya, lihat dokumentasi SDK

Terraform

resource "google_dns_managed_zone" "private_zone" {
  name        = "private-zone"
  dns_name    = "private.example.com."
  description = "Example private DNS zone"
  labels = {
    foo = "bar"
  }

  visibility = "private"

  private_visibility_config {
    networks {
      network_url = google_compute_network.network_1.id
    }
    networks {
      network_url = google_compute_network.network_2.id
    }
  }
}

resource "google_compute_network" "network_1" {
  name                    = "network-1"
  auto_create_subnetworks = false
}

resource "google_compute_network" "network_2" {
  name                    = "network-2"
  auto_create_subnetworks = false
}

API

Kirim permintaan POST menggunakan metode managedZones.create:

POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones
{

"name": "NAME",
"description": "DESCRIPTION",
"dnsName": "DNS_NAME",
"visibility": "private"
"privateVisibilityConfig": {
    "kind": "dns#managedZonePrivateVisibilityConfig",
    "networks": [{
            "kind": "dns#managedZonePrivateVisibilityConfigNetwork",
            "networkUrl": VPC_NETWORK_1
        },
        {
            "kind": "dns#managedZonePrivateVisibilityConfigNetwork",
            "networkUrl": VPC_NETWORK_2
        },
        ....
    ]
}

Ganti kode berikut:

  • PROJECT_ID: ID project tempat zona terkelola dibuat
  • NAME: nama untuk zona Anda
  • DESCRIPTION: deskripsi untuk zona Anda
  • DNS_NAME: suffix DNS untuk zona Anda, seperti example.private
  • VPC_NETWORK_1 dan VPC_NETWORK_2: URL untuk jaringan VPC dalam project yang sama yang dapat mengkueri data di zona ini. Anda dapat menambahkan beberapa jaringan VPC seperti yang ditunjukkan. Untuk menentukan URL jaringan VPC, gunakan perintah gcloud berikut, yang mengganti VPC_NETWORK_NAME dengan nama jaringan:

    gcloud compute networks describe VPC_NETWORK_NAME \
     --format="get(selfLink)"
    

Membuat zona dengan izin IAM tertentu

Izin Identity and Access Management (IAM) untuk setiap zona terkelola resource memungkinkan Anda menyiapkan izin baca, tulis, atau administrator tertentu untuk zona terkelola yang berbeda dalam project yang sama.

Untuk mengetahui petunjuk tentang cara membuat zona dengan izin Identity and Access Management (IAM) tertentu, lihat Membuat zona dengan izin IAM tertentu.

Membuat zona DNS Direktori Layanan

Anda dapat membuat zona Direktori Layanan yang memungkinkan layanan berbasis Google Cloud Anda mengkueri namespace Direktori Layanan melalui DNS.

Untuk petunjuk mendetail tentang cara membuat zona DNS Direktori Layanan, lihat Mengonfigurasi zona DNS Direktori Layanan.

Untuk mengetahui petunjuk tentang cara menggunakan DNS untuk membuat kueri Direktori Layanan, lihat Membuat kueri menggunakan DNS.

Terraform

resource "google_dns_managed_zone" "private_zone" {
  name        = "private-zone"
  dns_name    = "private.example.com."
  description = "Example private DNS zone"
  labels = {
    foo = "bar"
  }

  visibility = "private"

  private_visibility_config {
    networks {
      network_url = google_compute_network.network_1.id
    }
    networks {
      network_url = google_compute_network.network_2.id
    }
  }
}

resource "google_compute_network" "network_1" {
  name                    = "network-1"
  auto_create_subnetworks = false
}

resource "google_compute_network" "network_2" {
  name                    = "network-2"
  auto_create_subnetworks = false
}

Membuat zona pribadi pencarian terbalik yang dikelola

Zona pencarian balik yang dikelola adalah zona pribadi dengan atribut khusus yang menginstruksikan Cloud DNS untuk melakukan pencarian PTR terhadap data DNS Compute Engine. Anda harus menyiapkan zona pencarian balik terkelola untuk Cloud DNS agar dapat me-resolve data PTR non-RFC 1918 dengan benar untuk instance virtual machine (VM) Anda.

Untuk petunjuk tentang cara membuat zona pribadi pencarian terbalik terkelola baru, lihat Membuat zona pencarian terbalik terkelola.

Membuat zona penerusan

Zona penerusan memungkinkan Anda menargetkan server nama untuk zona pribadi tertentu. Untuk mengetahui petunjuk cara membuat zona penerusan pribadi terkelola baru, lihat Membuat zona penerusan.

Membuat zona peering

Peering DNS memungkinkan Anda mengirim permintaan untuk data yang berasal dari namespace satu zona ke jaringan VPC lain. Untuk petunjuk tentang cara membuat zona peering, lihat Membuat zona peering.

Membuat zona binding lintas project

Buat zona pribadi terkelola yang dapat terikat ke jaringan yang dimiliki oleh project lain dalam organisasi yang sama. Untuk petunjuk cara membuat zona binding lintas project, lihat Zona binding lintas project.

Memperbarui zona terkelola

Cloud DNS memungkinkan Anda mengubah atribut tertentu dari zona pribadi terkelola publik atau .

Memperbarui zona publik

Anda dapat mengubah deskripsi atau konfigurasi DNSSEC zona publik.

Konsol

  1. Di Konsol Google Cloud, buka halaman Cloud DNS zones.

    Buka zona Cloud DNS

  2. Klik zona publik yang ingin diperbarui.

  3. Klik Edit.

  4. Untuk mengubah setelan DNSSEC, di bagian DNSSEC, pilih Nonaktif, Aktif, atau Transfer. Untuk mengetahui informasi selengkapnya, lihat Mengaktifkan DNSSEC untuk zona terkelola yang ada.

  5. Opsional: Perbarui deskripsi.

  6. Klik Simpan.

gcloud

Jalankan perintah dns managed-zones update :

gcloud dns managed-zones update NAME \
    --description=DESCRIPTION \
    --dnssec-state=STATE

Ganti kode berikut:

  • NAME: nama untuk zona Anda
  • DESCRIPTION: deskripsi untuk zona Anda
  • STATE: setelan DNSSEC seperti Off, On, atau Transfer

Untuk mengubah jaringan VPC tempat zona pribadi terlihat:

Konsol

  1. Di Konsol Google Cloud, buka halaman Cloud DNS zones.

    Buka zona Cloud DNS

  2. Klik zona pribadi yang ingin diperbarui.

  3. Klik Edit.

  4. Pilih jaringan VPC yang dapat melihat zona pribadi. Hanya jaringan VPC yang dipilih yang diberi otorisasi untuk membuat kueri data di zona.

  5. Klik Simpan.

gcloud

Jalankan perintah dns managed-zones update :

gcloud dns managed-zones update NAME \
    --description=DESCRIPTION \
    --networks=VPC_NETWORK_LIST

Ganti kode berikut:

  • NAME: nama untuk zona Anda
  • DESCRIPTION: deskripsi untuk zona Anda
  • VPC_NETWORK_LIST: daftar jaringan VPC yang dipisahkan koma yang diberi otorisasi untuk membuat kueri zona

Memperbarui label

Untuk menambahkan label baru, mengubah label yang ada, menghapus label yang dipilih, atau menghapus semua label di zona yang dikelola, selesaikan langkah-langkah berikut.

gcloud

Jalankan perintah dns managed-zones update :

gcloud dns managed-zones update NAME \
    --update-labels=LABELS
gcloud dns managed-zones update NAME \
    --remove-labels=LABELS
gcloud dns managed-zones update NAME \
    --clear-labels

Ganti kode berikut:

  • NAME: nama untuk zona Anda
  • LABELS: daftar pasangan nilai kunci yang dipisahkan koma opsional seperti dept=marketing atau project=project1; untuk informasi selengkapnya, lihat dokumentasi SDK

Mencantumkan dan menjelaskan zona terkelola

Bagian berikut menunjukkan cara mencantumkan atau mendeskripsikan zona terkelola.

Menampilkan daftar zona terkelola

Untuk mencantumkan semua zona terkelola dalam project, selesaikan langkah-langkah berikut.

Konsol

  1. Di Konsol Google Cloud, buka halaman Cloud DNS zones.

    Buka zona Cloud DNS

  2. Lihat zona terkelola di panel kanan.

gcloud

Jalankan perintah dns managed-zones list :

gcloud dns managed-zones list

Untuk menampilkan semua zona terkelola, ubah perintah sebagai berikut:

gcloud dns managed-zones list 
--filter="visibility=public"
Untuk mencantumkan semua zona pribadi terkelola, ubah perintah sebagai berikut:

gcloud dns managed-zones list \
   --filter="visibility=private"

Menjelaskan zona terkelola

Untuk melihat atribut zona terkelola, selesaikan langkah-langkah berikut.

Konsol

  1. Di Konsol Google Cloud, buka halaman Cloud DNS zones.

    Buka zona Cloud DNS

  2. Klik zona yang ingin Anda periksa.

gcloud

Jalankan perintah dns managed-zones describe :

gcloud dns managed-zones describe NAME

Ganti NAME dengan nama zona Anda.

Menghapus zona terkelola

Saat Anda menghapus zona, data DNS-nya akan dihapus secara permanen; data tersebut tidak dapat dipulihkan. Untuk mencegah hilangnya data DNS, ekspor data zona sebelum penghapusan. Untuk mengetahui informasi tentang cara mengekspor data zona, lihat Mengimpor dan mengekspor set data resource.

Untuk menghapus zona terkelola, selesaikan langkah-langkah berikut.

Konsol

  1. Di Konsol Google Cloud, buka halaman Cloud DNS zones.

    Buka zona Cloud DNS

  2. Klik zona terkelola yang ingin dihapus.

  3. Klik Delete zone.

gcloud

  1. Hapus semua data di zona, kecuali data SOA dan NS. Untuk mengetahui informasi selengkapnya, lihat Menghapus kumpulan data. Anda dapat dengan cepat mengosongkan seluruh zona dengan mengimpor file kosong ke dalam set data. Untuk mengetahui informasi selengkapnya, lihat Mengimpor dan mengekspor kumpulan data. Contoh:

    touch empty-file
    gcloud dns record-sets import -z NAME \
       --delete-all-existing \
       empty-file
    rm empty-file
    

    Ganti NAME dengan nama zona Anda.

  2. Untuk menghapus zona pribadi terkelola baru, jalankan perintah dns managed-zones delete:

    gcloud dns managed-zones delete NAME
    

    Ganti NAME dengan nama zona Anda.

Langkah selanjutnya