Menghubungkan Domain ke Server Dengan DNS Cloudflare
Cloudflare selain memiliki service sebagai CDN juga memiliki service sebagai DNS hosting. Kita bisa menonaktifkan fitur CDN dan hanya mengaktifkan fitur DNS-nya saja. DNS Hosting berperan sebagai DNS server atau nameserver yang menyimpan semua domain record. Misalnya IP address, subdomain, MX dan semua data domain lainnya. Keberadaan nameserver sangatlah penting pada website kita.
Analoginya seperti ini:
- Saat itkoding.com dibuka melalui internet browser dari laptop maka browser akan bertanya pada DNS resolver yang digunakan laptop. Misalnya yang digunakan adalah DNS Server Publik dari google yaitu 8.8.8.8 dan 8.8.4.4. Ataupun yang digunakan adalah DNS resolver dari provider internet kita misalnya IndiHome, Indosat dan lainnya.
- DNS Resolver akan bertanya secara rekursif (berulang) dan bertahap ke Root Server tentang lokasi TLD Server dari dot com (.com) berada.
- Setelah mendapatkan lokasi TLD Server dari .com maka DNS Resolver akan bertanya pada TLD Server .com tentang lokasi Nameserver dari itkoding.com.
- Setelah dapat lokasi atau IP Nameserver dari itkoding.com maka DNS Resolver bertanya pada Nameserver tentang lokasi atau IP dari itkoding.com. Maka nameserver akan menjawab berupa IP address dari itkoding.com berdasarkan record data yang ada pada nameserver tersebut.
- Terakhir, DNS resolver menjawab browser di laptop kita berupa IP address itkoding.com yang didapat dari proses yang cukup panjang itu. Lalu browser akan meminta tampilan website dari IP itkoding.com lalu menampilkannya di layar.
Nah, setelah mengetahui fungsi dan pentingnya nameserver selanjutnya saya akan share bagaimana cara menghubungkan domain ke server menggunakan DNS Hosting pada Cloudflare.
Pastinya kita harus sudah memiliki domain terlebih dahulu. Domain tersebut bisa dibeli dari idwebhost, jagoanhosting, niagahoster, Godaddy, Namecheap dan lainnya.
Cara Menghubungkan Domain ke Server / VPS Menggunakan DNS Hosting Cloudflare
- Pertama, silahkan mendaftar dan login pada website resmi cloudflare.com.
- Klik Add Site untuk menambahkan domain.
- Ketik nama domain misalnya
itkoding.com
lalu klik Add Site. - Pilih Free untuk Plan yang akan digunakan. Lalu klik Confirm plan. Maka secara otomatis Cloudflare akan melakukan query pada domain.
- Hapus semua record yang ada di sana dengan cara mengklik tombol silang
X
masing-masing. - Setelah terhapus semua hingga kosong, maka kita harus membuat record dari awal.
- Record yang pertama berisi domain utama: pilih A, lalu isikan
@
pada Name, masukkan IP Address dari server anda (VPS, Dedicated server, dll) lalu klik Add Record. - Record kedua berisi subdomain www: pilih A, lalu isikan
www
pada Name, masukkan IP Address server anda, lalu klik Add Record. - Tambahkan subdomain lain sesuai kebutuhan dengan cara seperti sebelumnya yang berbeda hanya pada kolom Name saja. Pada contoh kali ini saya menambahkan subdomain
itkodingserver
yang saya jadikan sebagai hostname server utama. - Record selanjutnya berisi MX (mail exchanger) untuk keperluan email nantinya: pilih MX, isikan
@
pada Name. Pada Mail Server isikan subdomain atau hostname dari server yang akan digunakan sebagai mail server. Misalnya saya membuat mail server pada serveritkodingserver
maka saya isiitkodingserver.itkoding.com
. Lalu Priority isikan10
klik Save.
- Record yang pertama berisi domain utama: pilih A, lalu isikan
- Setelah selesai maka tampilan akan seperti gambar di bawah ini.
Pada contoh di atas saya meletakkan semua service (web, email dan lainnya) dalam 1 server yaituitkodingserver
. Jika anda memisahkan setiap service pada server tersendiri misalnya web diitkodingserver
, lalu email dimailserver
maka anda harus membuat subdomain sesuai dengan hostname server masing-masing dan diarahkan ke IP server masing-masing. - Matikan fitur CDN dengan klik gambar awan berwarna orange pada semua record. Jika sudah nonaktif maka akan menjadi awan berwarna abu-abu.
- Klik Continue yang berada di bagian kiri bawah halaman. Lalu pilih Default method jika ada pertanyaan Select a method for moving domain.
- Ubah nameserver 1 dan 2 untuk domain anda dengan nameserver yang tertera pada halaman tersebut. Anda dapat mengubahnya pada tempat anda membeli domain (idwebhost, niagahoster, jagoanhosting, Namecheap, Godaddy dan lainnya). Pada contoh di bawah ini saya harus mengubahnya menjadi
achiel.ns.cloudflare.com
danaitana.ns.cloudflare.com
.- Untuk Godaddy: Login ke member area godaddy anda > klik My Products > klik DNS pada domain anda > scroll ke bawah lalu pada pada nameserver klik Change > klik Enter my own nameserver > isikan masing-masing nameserver.
- Untuk Namecheap: Login ke akun namecheap anda > klik menu Domain List > klik tombol Manage di samping domain anda > pada nameserver pilih Custom DNS > isikan nameserver dari cloudflare > klik centang.
- Untuk yang lainnya silahkan cari pada website tempat domain anda. Atau tanyakan pada Customer Support domain anda.
- Klik Done, check nameserver pada halaman Cloudflare. Lalu klik Done pada halaman set up security yang tampil karena tidak menggunakan CDN.
- Klik Re-check now. Biasanya saya hanya butuh waktu paling lama 1 jam hingga proses pointing domain ke nameserver cloudflare berhasil.
Langkah yang paling menentukan keberhasilan mengubah nameserver dan DNS record pada cloudflare berada pada langkah ke-10. Pada langkah 10 kita harus benar-benar mengubah nameserver di tempat register domain sesuai dengan nameserver yang diberi Cloudflare.
Setelah berhasil maka tampilan Complete your nameserver setup di Cloudflare akan hilang. Silahkan refresh browser anda setelah mengklik tombol Re-check now.
Mengapa tidak membuat DNS server atau nameserver sendiri?
Sebenarnya kita bisa membuat sendiri DNS server jika menggunakan VPS atau dedicate server dengan menginstall BIND9 pada server. Namun jika kita membuat sendiri DNS server maka tentunya memerlukan resource yang lebih banyak.
Website yang baik sangat direkomendasikan untuk memiliki minimal 2 nameserver dalam class IP yang berbeda. Setiap nameserver tersebut harus memiliki downtime yang sangat rendah (harus selalu online tanpa trouble). Artinya kita harus mempunyai 2 server lain yang tangguh hanya untuk membuat DNS server sendiri.
Nah, bila kita memiliki resource yang terbatas untuk proyek yang tidak terlalu besar maka DNS Hosting dari Cloudflare adalah solusinya. Misalnya hanya dalam VPS atau dedicated server seperti web itkoding.com ini. Kita tidak perlu keluar biaya tambahan hanya untuk DNS server. Di lain sisi, Cloudflare memiliki kualitas jaringan yang sangat baik dengan downtime yang sangat minim.
Hal di atas tidak berlaku jika kita menggunakan webhosting. Kita bisa memanfaatkan nameserver dari webhosting tersebut tanpa harus menggunakan DNS dari Cloudflare atau lainnya.
NS 1 dan 2 saja? Yang 3, 4 dan seterusnya dibiarkan saja memakai NS VPS-nya?
Kalau ingin menggunakan Cloudflare, NS 1 dan 2 harus menggunakan NS dari cloudflare tersebut tanpa menambahkan NS lainnya. Jadi 3, 4 dan seterusnya dikosongkan atau tidak perlu ditambahkan.