Tutorial Monitoring Propagasi DNS Global dengan DNSGlobe
AW
Axel W

Dipublikasikan 6 Juli 2026

Tutorial Monitoring Propagasi DNS Global dengan DNSGlobe

Setelah migrasi server atau perubahan konfigurasi DNS, salah satu masalah paling membuat frustrasi adalah menunggu propagasi record ke seluruh dunia. Kadang DNS sudah resolve dengan benar di Jakarta, tapi masih mengarah ke IP lama di Singapura atau Amerika. Untungnya, ada tool ringan bernama DNSGlobe yang bisa membantu developer memantau propagasi DNS secara real-time dari terminal.

Dalam tutorial ini, kita akan membahas cara install, menjalankan, dan memanfaatkan DNSGlobe untuk debugging jaringan. Tool ini ditulis dalam Rust dan menawarkan antarmuka TUI yang responsif tanpa perlu membuka browser. Kita juga akan melihat bagaimana mengintegrasikannya ke dalam workflow DevOps modern.

Apa itu DNSGlobe?

DNSGlobe adalah aplikasi terminal berbasis Rust yang menampilkan status propagasi DNS di berbagai lokasi global secara simultan. Dibangun oleh tim 514 Labs, tool ini menggunakan resolver DNS publik dari berbagai benua untuk memberikan gambaran menyeluruh tentang bagaimana record DNS kamu tersebar di seluruh dunia.

Beberapa fitur utama yang ditawarkan:

  • Tampilan real-time dengan color coding: hijau untuk propagated, merah untuk belum

  • Dukungan untuk berbagai tipe record: A, AAAA, MX, TXT, CNAME, dan NS

  • Ringan dan tidak memerlukan runtime tambahan setelah dikompilasi

  • Open source dan bisa dikembangkan lebih lanjut sesuai kebutuhan

Cara Kerja DNSGlobe di Balik Layar

DNSGlobe bekerja dengan mengirimkan query DNS ke beberapa resolver publik yang tersebar di berbagai wilayah geografis. Resolver-resolver ini mencakup layanan seperti Google DNS, Cloudflare DNS, OpenDNS, serta resolver lokal di Asia, Eropa, Amerika, dan Australia. Hasil dari setiap query kemudian dikumpulkan dan ditampilkan dalam tabel yang mudah dibaca.

Perbedaan nilai antar resolver menunjukkan bahwa propagasi belum merata. Ini bisa terjadi karena TTL cache yang masih aktif di beberapa ISP atau karena adanya anycast routing yang belum sinkron. Memahami mekanisme ini membantu developer mengambil keputusan yang lebih tepat saat troubleshooting.

Prasyarat

Sebelum mulai, pastikan sistem kamu sudah memiliki:

  1. Rust toolchain (rustc dan cargo) versi stabil terbaru

  2. Terminal dengan dukungan Unicode dan warna

  3. Koneksi internet untuk mengakses resolver DNS global

Jika belum install Rust, kunjungi rustup.rs dan ikuti instruksi untuk platform kamu. Proses install Rust biasanya hanya memerlukan satu perintah dan berjalan dalam beberapa menit.

Langkah 1: Install DNSGlobe

Cara termudah adalah menginstall dari source melalui cargo. Buka terminal dan jalankan perintah berikut:

cargo install dnsglobe

Atau jika ingin build dari source untuk mendapatkan versi paling baru:

git clone https://github.com/514-labs/dnsglobe.git
cd dnsglobe
cargo build --release

Binary hasil kompilasi akan berada di target/release/dnsglobe. Kamu bisa menambahkan ke PATH atau langsung menjalankannya dari direktori tersebut. Jika menggunakan sistem berbasis Debian, pastikan package build-essential sudah terinstall agar proses kompilasi berjalan lancar.

Langkah 2: Menjalankan DNSGlobe untuk Pertama Kali

Setelah install, jalankan DNSGlobe dengan domain yang ingin kamu periksa. Contohnya:

dnsglobe example.com A

DNSGlobe akan menampilkan tabel dengan kolom lokasi resolver dan status resolve. Setiap baris merepresentasikan resolver DNS di negara atau region tertentu. Jika semua resolver menunjukkan IP yang sama, artinya propagasi sudah selesai.

Untuk record MX:

dnsglobe example.com MX

Kamu juga bisa memeriksa record TXT yang biasa digunakan untuk konfigurasi SPF atau DKIM:

dnsglobe example.com TXT

Langkah 3: Memahami Tampilan dan Warna

DNSGlobe menggunakan color coding untuk memudahkan interpretasi hasil:

  • Hijau: Record sudah terpropagasi dengan benar di resolver tersebut

  • Merah: Record belum terupdate atau mengarah ke nilai lama

  • Kuning: Terdapat perbedaan nilai yang mungkin perlu diperhatikan

Dengan visualisasi ini, kamu tidak perlu lagi mengecek satu per satu menggunakan dig atau nslookup ke server DNS spesifik. Tampilan yang responsif juga memudahkan monitoring saat sedang melakukan perubahan infrastruktur besar.

Langkah 4: Tips Monitoring Record Spesifik

Untuk hasil yang lebih akurat, gunakan tipe record yang spesifik. Jika kamu baru saja mengubah nameserver, periksa record NS terlebih dahulu. Jika hanya mengubah A record untuk pointing ke server baru, fokus pada tipe A.

Beberapa tips praktis:

  1. Gunakan TTL rendah (300-600 detik) sebelum melakukan perubahan besar untuk mempercepat propagasi

  2. Periksa resolver utama di wilayah target audiens kamu. Jika mayoritas pengguna dari Asia Tenggara, pastikan resolver di Singapura dan Jakarta sudah update

  3. Gabungkan DNSGlobe dengan script monitoring untuk mendapatkan notifikasi otomatis saat propagasi selesai

Langkah 5: Integrasi dengan Workflow CI/CD

DNSGlobe bisa diintegrasikan ke pipeline deployment untuk memastikan DNS sudah siap sebelum aplikasi dianggap deploy sukses. Contoh sederhana dalam GitHub Actions:

steps:
  - name: Verify DNS Propagation
    run: |
      cargo install dnsglobe
      dnsglobe devmode.id A --expect 192.0.2.1

Dengan integrasi ini, deployment tidak akan dilanjutkan ke tahap smoke test jika DNS belum siap, mengurangi risiko downtime yang tidak perlu. Pendekatan ini sangat berguna untuk tim yang menerapkan praktik blue-green deployment atau canary release.

Troubleshooting Umum

Saat pertama kali menggunakan DNSGlobe, beberapa masalah mungkin muncul. Jika hasil menunjukkan banyak resolver merah padahal kamu yakin record sudah benar, coba periksa apakah ada firewall yang memblokir query DNS keluar. Beberapa resolver juga memerlukan waktu lebih lama karena load balancing internal mereka.

Jika DNSGlobe tidak bisa dikompilasi, pastikan versi Rust kamu sudah di atas 1.70. Jalankan rustc --version untuk memastikan. Update Rust dengan rustup update jika diperlukan.

Kesimpulan

DNSGlobe adalah tool praktis yang menghemat waktu developer saat menangani masalah propagasi DNS. Dengan antarmuka terminal yang bersih dan data real-time dari resolver global, kamu bisa dengan cepat menentukan apakah perubahan DNS sudah efektif atau masih perlu ditunggu.

Sebagai next step, coba eksplorasi repository DNSGlobe di GitHub untuk melihat fitur-fitur tambahan dan berkontribusi ke proyek open source ini.