Tutorial Setting DNS di Cloudflare untuk Pemula
Pendahuluan
Kamu baru saja membeli domain pertama dan ingin mengarahkannya ke server atau hosting? Atau mungkin kamu ingin memindahkan DNS domain ke Cloudflare agar lebih cepat dan aman? Artikel ini akan memandu kamu langkah demi langkah dalam mengatur DNS di Cloudflare — mulai dari konsep dasar hingga konfigurasi nyata.
Jangan khawatir jika kamu belum pernah menyentuh pengaturan DNS sebelumnya. Kita akan belajar bersama dengan bahasa yang sederhana dan analogi yang mudah dipahami.
Apa Itu DNS dan Kenapa Penting?
DNS (Domain Name System) adalah sistem yang menerjemahkan nama domain yang mudah dibaca manusia (seperti kamusngoding.com) menjadi alamat IP yang dipahami komputer (seperti 104.21.45.67).
Bayangkan DNS seperti buku telepon raksasa di internet. Ketika kamu mengetik google.com di browser, komputer kamu bertanya ke DNS server: “Hei, alamat IP untuk google.com itu berapa?” — lalu DNS menjawab dengan alamat IP yang tepat, sehingga browser bisa terhubung ke server yang benar.
Tanpa DNS, kamu harus hafal ribuan alamat IP hanya untuk browsing internet sehari-hari. Tidak praktis, kan?
Jenis-Jenis Record DNS yang Wajib Kamu Tahu
| Record | Fungsi | Contoh |
|---|---|---|
| A | Mengarahkan domain ke alamat IPv4 | kamusngoding.com → 104.21.45.67 |
| AAAA | Mengarahkan domain ke alamat IPv6 | kamusngoding.com → 2606:4700::... |
| CNAME | Alias — mengarahkan subdomain ke domain lain | www → kamusngoding.com |
| MX | Menentukan server email | mail.kamusngoding.com |
| TXT | Data teks bebas (verifikasi, SPF, DKIM) | v=spf1 include:... |
| NS | Nameserver — siapa yang mengurus DNS domain ini | ns1.cloudflare.com |
Persiapan Sebelum Pindah ke Cloudflare
Sebelum memulai konfigurasi, siapkan beberapa hal berikut:
1. Daftar Akun Cloudflare
Kunjungi cloudflare.com dan buat akun gratis. Paket Free Cloudflare sudah mencakup DNS management, CDN, dan proteksi DDoS dasar — lebih dari cukup untuk pemula.
2. Catat Konfigurasi DNS Lama
Sebelum migrasi, catat semua record DNS yang sudah ada di registrar lama kamu (GoDaddy, Niagahoster, Domainesia, dll). Ini penting agar tidak ada layanan yang putus saat proses migrasi.
Kamu bisa menggunakan tool online seperti dig atau nslookup untuk mengecek record DNS yang ada:
# Cek semua record DNS untuk domain kamu
dig kamusngoding.com ANY
# Atau menggunakan nslookup
nslookup -type=ANY kamusngoding.com
# Cek record A saja
dig A kamusngoding.com
# Cek record MX (email)
dig MX kamusngoding.com
3. Pastikan Kamu Punya Akses ke Registrar Domain
Kamu perlu login ke tempat kamu membeli domain (registrar) untuk mengubah nameserver. Ini adalah langkah kunci dalam migrasi DNS ke Cloudflare.
Panduan Langkah-demi-Langkah Konfigurasi DNS di Cloudflare
Langkah 1: Tambahkan Domain ke Cloudflare
- Login ke dashboard Cloudflare
- Klik tombol “Add a Site”
- Masukkan nama domain kamu (contoh:
kamusngoding.com) - Pilih paket Free → klik Continue
Cloudflare akan otomatis melakukan DNS scan dan mengimpor semua record yang sudah ada. Periksa hasilnya dengan teliti!
Langkah 2: Review dan Tambahkan Record DNS
Setelah scan selesai, kamu akan melihat daftar record DNS yang ditemukan. Pastikan semua record penting sudah tercatat. Berikut contoh konfigurasi umum untuk website:
# Contoh konfigurasi DNS untuk website sederhana
Type Name Content TTL Proxy
A kamusngoding 104.21.45.67 Auto Proxied (oranye)
A www 104.21.45.67 Auto Proxied (oranye)
CNAME blog kamusngoding.com Auto Proxied (oranye)
MX @ mail.example.com Auto DNS only (abu-abu)
TXT @ v=spf1 include:_spf.google.com ~all
Untuk menambahkan record baru, klik tombol “Add Record” di halaman DNS management:
# Contoh: Menambahkan subdomain untuk API server
Type: A
Name: api
IPv4: 203.0.113.50
TTL: Auto
Proxy: DNS only (untuk API server, lebih baik non-proxy dulu)
Langkah 3: Pahami Proxy Status (Ikon Awan)
Ini adalah fitur unik Cloudflare yang sering membingungkan pemula:
- Ikon awan oranye (Proxied): Traffic melewati Cloudflare terlebih dahulu. Kamu mendapat proteksi DDoS, CDN, dan IP asli server kamu tersembunyi.
- Ikon awan abu-abu (DNS only): Cloudflare hanya sebagai DNS biasa. Traffic langsung ke server kamu tanpa proteksi tambahan.
Aturan umum:
✅ Website/blog → Proxied (oranye)
✅ Subdomain www → Proxied (oranye)
⚠️ Mail server (MX) → DNS only (abu-abu) ← WAJIB
⚠️ FTP server → DNS only (abu-abu)
⚠️ Game server → DNS only (abu-abu)
Perhatian: Jangan aktifkan proxy untuk record MX atau mail server. Email bisa gagal terkirim!
Langkah 4: Ganti Nameserver di Registrar
Ini adalah langkah paling krusial. Cloudflare akan memberimu dua nameserver khusus, misalnya:
ns1.cloudflare.com
ns2.cloudflare.com
# Atau nameserver custom Cloudflare seperti:
ada.ns.cloudflare.com
leo.ns.cloudflare.com
Masuk ke panel registrar domain kamu dan ganti nameserver lama dengan nameserver dari Cloudflare. Proses ini berbeda-beda tergantung registrar, tapi biasanya ada di menu “Manage Domain” → “Nameservers”.
Langkah 5: Tunggu Propagasi DNS
Setelah nameserver diubah, butuh waktu 24-48 jam untuk propagasi DNS ke seluruh dunia. Kamu bisa memantau statusnya:
# Cek apakah nameserver sudah berubah
dig NS kamusngoding.com
# Cek dari nameserver tertentu
dig @8.8.8.8 kamusngoding.com A
# Tool online: whatsmydns.net untuk cek propagasi global
Contoh Kasus Nyata
Kasus: Deploy Aplikasi Web ke VPS
Bayangkan kamu sedang membangun aplikasi web dan sudah meng-deploy-nya ke VPS dengan IP 203.0.113.100. Kamu ingin domain aplikasiku.com mengarah ke server tersebut, lengkap dengan subdomain api.aplikasiku.com untuk backend.
Konfigurasi DNS yang kamu butuhkan:
# Record untuk domain utama
Type: A
Name: aplikasiku.com (atau '@' untuk root domain)
Content: 203.0.113.100
Proxy: Proxied ✅
# Record untuk www
Type: CNAME
Name: www
Content: aplikasiku.com
Proxy: Proxied ✅
# Record untuk subdomain API
Type: A
Name: api
Content: 203.0.113.100
Proxy: DNS only ⚠️ (jika API perlu IP asli untuk autentikasi)
# Record verifikasi Google (contoh Google Search Console)
Type: TXT
Name: @
Content: google-site-verification=abc123xyz
Proxy: DNS only
Jika kamu menggunakan CI/CD untuk deploy otomatis (misalnya dengan GitHub Actions), kamu bisa mengintegrasikan pengecekan DNS propagation dalam pipeline deployment kamu:
# .github/workflows/deploy.yml
- name: Verify DNS propagation
run: |
for i in {1..5}; do
RESOLVED=$(dig +short A aplikasiku.com @8.8.8.8)
if [ "$RESOLVED" = "203.0.113.100" ]; then
echo "DNS sudah propagasi!"
break
fi
echo "Menunggu propagasi... ($i/5)"
sleep 60
done
Setelah DNS aktif dan aplikasi di-deploy, kamu bisa mulai membangun API yang lebih kompleks — misalnya seperti yang dicontohkan dalam tutorial Membangun RESTful API Sederhana dengan Go yang bisa kamu akses via subdomain API yang sudah kamu konfigurasi.
Troubleshooting: Error yang Sering Muncul
Website Tidak Bisa Diakses Setelah Ganti Nameserver
Penyebab: Record DNS tidak diimpor dengan benar saat scanning, atau ada record yang terlewat saat migrasi ke Cloudflare.
Solusi:
# Cek apakah domain sudah resolve ke IP yang benar
dig A namadomain.com
# Bandingkan dengan record di Cloudflare dashboard
# Jika berbeda, tambahkan record yang hilang secara manual
# Cek juga apakah nameserver sudah berubah
dig NS namadomain.com
# Harusnya menampilkan ns*.cloudflare.com
Error “SSL Handshake Failed” atau “ERR_SSL_PROTOCOL_ERROR”
Penyebab: Mode SSL/TLS di Cloudflare tidak cocok dengan konfigurasi server. Misalnya, Cloudflare di-set ke mode Full (Strict) tapi server tidak punya SSL certificate yang valid.
Solusi:
Langkah perbaikan di Cloudflare Dashboard:
1. Buka menu SSL/TLS → Overview
2. Ubah mode SSL ke salah satu yang sesuai:
- "Flexible" → jika server tidak punya SSL (HTTP only)
- "Full" → jika server punya SSL (bisa self-signed)
- "Full Strict" → jika server punya SSL dari CA resmi (Let's Encrypt, dll)
Rekomendasi untuk produksi: Full (Strict) dengan Let's Encrypt
Email Tidak Masuk Setelah Migrasi DNS
Penyebab: Record MX tidak ditambahkan ke Cloudflare, atau record MX di-set ke mode Proxied (awan oranye) yang tidak didukung.
Solusi:
Cek dan perbaiki record MX di Cloudflare:
1. Buka DNS Management di Cloudflare
2. Pastikan record MX ada dan BENAR:
Type: MX
Name: @ (untuk domain utama)
Mail server: mail.namadomain.com (atau sesuai provider email)
Priority: 10
Proxy status: DNS only (awan ABU-ABU) ← WAJIB!
3. Verifikasi via terminal:
dig MX namadomain.com
Record CNAME Konflik dengan Record A di Root Domain
Penyebab: Kamu mencoba membuat CNAME untuk root domain (@), tapi DNS standar tidak mengizinkan CNAME di root domain (ini batasan standar DNS, bukan Cloudflare).
Solusi:
Cloudflare punya fitur khusus bernama "CNAME Flattening".
Untuk root domain, gunakan:
Opsi 1 - CNAME Flattening (Cloudflare otomatis menangani ini):
Type: CNAME
Name: @
Content: target.example.com
→ Cloudflare akan otomatis flatten menjadi A record
Opsi 2 - Gunakan A record langsung:
Type: A
Name: @
Content: [IP address dari target.example.com]
→ Lebih eksplisit dan tidak bergantung fitur Cloudflare
Pertanyaan yang Sering Diajukan (FAQ)
Apa perbedaan TTL “Auto” dan TTL manual di Cloudflare?
TTL (Time To Live) menentukan berapa lama record DNS di-cache oleh server lain di internet. Nilai Auto di Cloudflare biasanya diset ke 300 detik (5 menit) untuk record yang di-proxy, dan 3600 detik (1 jam) untuk DNS only. Kamu bisa mengubah TTL manual jika sedang dalam proses migrasi dan ingin propagasi lebih cepat — set ke nilai rendah seperti 60 detik sebelum migrasi, lalu naikkan kembali setelahnya.
Bagaimana cara memindahkan domain ke Cloudflare tanpa downtime?
Kunci utamanya adalah impor semua record DNS terlebih dahulu sebelum mengubah nameserver. Cloudflare melakukan scan otomatis saat kamu menambahkan domain, tapi verifikasi manual tetap diperlukan. Setelah semua record terkonfirmasi di Cloudflare, baru ubah nameserver di registrar. Dengan cara ini, transisi berjalan mulus karena semua record sudah siap.
Apakah Cloudflare gratis bisa dipakai untuk production?
Ya! Paket Free Cloudflare sudah mencakup: DNS management unlimited, CDN global, proteksi DDoS dasar, SSL/TLS gratis, dan firewall rules dasar. Ini lebih dari cukup untuk website personal, blog, hingga aplikasi startup tahap awal. Paket berbayar diperlukan jika kamu butuh fitur seperti advanced analytics, load balancing, atau Workers (serverless).
Mengapa IP asli server saya perlu disembunyikan?
Ketika kamu mengaktifkan proxy Cloudflare (awan oranye), pengunjung dan penyerang hanya melihat IP Cloudflare, bukan IP server kamu. Ini melindungi server dari serangan DDoS langsung. Bayangkan kamu sedang membangun layanan berskala besar — menyembunyikan IP server produksi adalah lapisan keamanan pertama yang penting untuk melindungi infrastruktur dari serangan targeted.
Berapa lama proses propagasi DNS biasanya berlangsung?
Secara teknis, propagasi DNS bisa berlangsung antara beberapa menit hingga 48 jam. Namun, dengan Cloudflare dan TTL rendah (misalnya 300 detik), sebagian besar pengguna akan melihat perubahan dalam 15-30 menit. Faktor yang mempengaruhi adalah TTL lama record sebelumnya dan seberapa cepat DNS resolver di seluruh dunia memperbarui cache mereka.
Kesimpulan
Mengatur DNS di Cloudflare mungkin terlihat rumit di awal, tapi setelah kamu memahami konsep dasar — record A, CNAME, MX, dan cara kerja proxy — semuanya menjadi jauh lebih masuk akal. Langkah kuncinya adalah: impor record lama → verifikasi di Cloudflare → ganti nameserver → tunggu propagasi.
Dengan DNS yang benar di Cloudflare, website atau aplikasimu akan lebih cepat, lebih aman, dan lebih mudah dikelola. Ini adalah fondasi penting sebelum kamu mulai mengeksplorasi fitur-fitur Cloudflare lainnya seperti Workers, R2 Storage, atau Pages.
Selamat belajar dan terus bereksperimen! Jika ada pertanyaan atau kamu menemukan kasus DNS yang membingungkan, jangan ragu untuk kembali ke artikel ini sebagai referensi — dan eksplorasi artikel-artikel lainnya di KamusNgoding untuk terus mengasah kemampuanmu.