Apa Itu DNS? Pengertian, Fungsi, Cara Kerja, dan Cara Settingnya
Apa itu DNS server? Singkatnya, DNS adalah sebuah sistem yang mengubah URL website ke dalam bentuk IP Address. Tanpa DNS, Anda harus mengetikkan IP Address secara lengkap ketika ingin mengunjungi sebuah website.
Jika Anda penasaran penjelasan lebih lengkapnya, jangan beranjak dari artikel ini ya. Sebab di sini, kami akan jelaskan lengkap pengertian DNS dan fungsinya, bagian-bagian dari DNS, cara kerja DNS, dan cara melakukan setting DNS domain.
Apa Itu DNS?
Domain Name Server atau DNS adalah sebuah sistem yang menghubungkan Uniform Resource Locator atau URL dengan Internet Protocol Address atau IP Address.
Dalam sejarah domain tercatat, awalnya Anda perlu mengetikkan IP Address untuk mengakses sebuah website. Cara ini cukup merepotkan. Sebab, ini artinya, Anda perlu punya daftar lengkap IP Address website yang dikunjungi dan memasukkannya secara manual.
DNS adalah sistem yang meringkas pekerjaan ini untuk Anda. Kini, Anda tinggal mengingat nama domain dan memasukkannya dalam address bar. DNS kemudian akan menerjemahkan domain tersebut ke dalam IP Address yang komputer pahami.
Misalkan, Anda ingin mengakses Google. Alih-alih menulis 172.217.0.142 ke dalam address bar, Anda tinggal memasukkan alamat Google.com.
Fungsi DNS
Dari penjelasan apa itu DNS, Anda pasti sudah bisa mengira-ngira bagaimana sebetulnya DNS berfungsi. Namun, supaya lebih jelas, berikut kami jabarkan tiga fungsi dan cara kerja DNS:
- Meminta informasi IP Address sebuah website berdasarkan nama domain;
- Meminta informasi URL sebuah website berdasarkan IP Address yang dimasukkan;
- Mencari server yang tepat untuk mengirimkan email.
Itulah ketiga fungsi DNS yang bekerja secara otomatis ketika anda sedang mengakses internet.
Nah, sebelum masuk ke penjelasan cara kerja DNS, Anda tentu bertanya kenapa harus menggunakan DNS?
Kelebihan DNS
Berikut ini adalah beberapa manfaat penggunaan DNS dalam aktivitas berinternet:
- Lebih Mudah untuk Berinternet. Dibanding mengingat deretan angka IP address, tentu akan lebih nyaman untuk mengingat nama website. Hadinya DNS telah berhasil menjembatani komunikasi antara pengguna internet dengan komputer. Apalagi jika Anda juga menggunakan DDNS. DDNS adalah metode untuk memperbarui IP Address secara otomatis di layanan DNS Anda.
- Lebih Konsisten dalam Penggunaan. Anda bisa menggunakan nama DNS yang sama meskipun ada perubahan pada IP Address yang digunakan. Dengan demikian, akses pengunjung ke salah satu website tetap bisa dilakuakan meskipun telah terjadi penggantian IP Address.
- Lebih Mudah Dikonfigurasi. Saat terjadi kendala pada IP Address yang digunakan, Anda bisa mengganti dengan IP yang berbeda dengan mudah. Cukup dengan melakukan update data pencocokan DNS dan IP Address. Hal ini akan dijelaskan lebih lanjut pada Cara Kerja DNS.
- Lebih Aman. Ketika menggunakan sistem DNS, semua aktivitas transfer data online akan melalui server DNS yang terjaga keamanannya. Sistem tersebut akan mencegah upaya peretasan yang coba dilakukan oleh pihak tidak bertanggung jawab. Jadi, website akan menjadi lebih aman. Ingin lebih aman? Gunakan DNSSEC. Simak artikel apa itu DNSSEC untuk tahu penjelasan lengkapnya.
Setelah mengetahui kelebihannya, mari belajar lebih lanjut tentang bagian dari DNS.
Bagian-Bagian DNS
Prinsip dasar cara kerja DNS adalah dengan cara mencocokkan nama komponen URL dengan komponen IP Address. Setiap URL dan IP Address memiliki bagian-bagian yang saling menjelaskan satu dengan yang lain.
Jika Anda sulit membayangkan teknisnya, anggap saja ini seperti kegiatan mencari buku di perpustakaan. Ketika Anda mencari buku di perpustakaan, biasanya Anda akan diberi kode yang menjelaskan letak buku tersebut.
Kode buku perpustakaan tersebut dinamai Dewey Decimal System (DDS). Biasanya ia terdiri atas kode topik buku, kode nama belakang penulis, dan kode tahun buku diterbitkan.
Kira-kira prinsip yang sama diterapkan dalam DNS. Untuk memahaminya lebih dalam, Anda perlu mengetahui bagian-bagian URL yang tersusun dalam hierarki DNS. Sama seperti kode buku perpustakaan, setiap bagiannya menjelaskan bagian domain.
Satu perbedaan kentara ialah kode perpustakaan mulai dari depan. Di sisi lain, kode yang berlaku pada DNS diurutkan dari belakang. Maka dari itu, kita akan runut bagian-bagian DNS ini dari belakang. Berikut penjelasan lengkapnya:
- Root-Level Domain merupakan bagian tertinggi dari hirarki DNS. Biasanya ia berwujud tanda titik (.) di bagian paling belakang sebuah URL.
- Top Level Domain adalah ekstensi yang berada di bagian depan root-level domain. Terdapat dua jenis TLD yang umumnya dipakai. Keduanya, yaitu Generic Top-Level Domain (GTLD) dan Country Code Top Level Domain (CCLTD).
GTLD biasanya menjelaskan sifat institusi dari pemilik web. Katakanlah, website untuk tujuan komersial biasanya memiliki ekstensi .COM. Lalu, .EDU untuk institusi pendidikan dan .GOV untuk lembaga pemerintahan.
Di sisi lain, CCLTD merupakan ekstensi yang menjelaskan asal negara dari pemilik situs. Misalnya, akhiran .ID untuk website Indonesia, .AU untuk Australia, .UK untuk Inggris, dan sebagainya.
- Second Level Domain ialah nama lain untuk domain itu sendiri. Ia sering digunakan sebagai identitas institusi atau branding. Dalam kasus URL en.wikipedia.org, yang dimaksud SLD adalah wikipedia.
- Third-Level Domain atau subdomain merupakan bagian dari domain utama yang berdiri sendiri. Apabila domain diibaratkan sebagai rumah, subdomain adalah salah satu ruang khusus di rumah itu sendiri.
- Hostname atau bisa disebut juga dengan scheme. Ini merupakan bagian yang mengawali sebuah URL. Bagian ini menunjukkan sebuah fungsi dari sebuah website atau halamannya. Contoh paling banyak digunakan, yaitu HTTPS atau Hypertext Transfer Protocol Secure.
Cara Kerja DNS
DNS bekerja dalam tahapan-tahapan. Dimulai proses meminta informasi atau DNS query. Kemudian dilanjutkan dengan tahapan-tahapan lain seperti DNS recursion, root nameserver, TLD nameserver, hingga authoritative nameserver.
Tanpa perlu basa-basi lagi, berikut adalah penjelasan soal cara kerja DNS. Semuanya diurutkan tahap per tahap.
DNS Query
DNS Query merupakan istilah teknis untuk meminta informasi soal IP Address. Tahapan ini dimulai ketika Anda mengetikkan URL ke address bar.
DNS server kemudian mencari informasi di filehosts. Jika informasi yang dicari tidak ditemukan, server akan berusaha mencari kepingan informasi atau rekam informasi yang pernah tercatat di sistem (cache).
Dalam tahapan awal ini sendiri, terdapat tiga jenis DNS Query. Ketiganya adalah recursive query, iterative query, dan non-recursive query. Di bawah ini, Anda bisa temukan pengertiannya:
Recursive query
User memberikan hostname yang mana kemudian DNS Resolver harus berikan jawaban. Ada dua kemungkinan jawaban yang diberikan. Pertama, DNS akan menyediakan informasi relevan setelah mencari di Root Server ataupun Authoritative Name Server. Kedua, browser akan menampilkan pesan error karena informasi tak bisa ditemukan.
Iterative query
User memasukkan hostname. DNS resolver akan mencari cache yang relevan di memori. Jika tidak berhasil, DNS resolver akan mencari informasi di Root Server dan Authoritative Name Server yang paling dekat dan relevan dengan DNS zone.
Non-recursive query
Ini merupakan proses pencarian informasi yang tercepat. Tipe ini tidak memerlukan pencarian di Root Server atau Authoritative Name Server karena data yang dicari tersimpan dalam cache.
DNS Recursor / DNS Recursive Resolver
DNS recursor merupakan tahapan pertama pencarian informasi. Ketika user memasukkan URL dan tidak menemukan hasil yang valid di cache, sistem akan mencari informasi dalam cache penyedia internet atau internet service provider (ISP).
Root Name Server
Katakanlah informasi yang Anda cari tak bisa ditemukan di ISP. Maka kemudian, sistem akan mencari informasi yang Anda butuhkan ke root name server.
Root name server merupakan semacam database yang menjawab pertanyaan soal nama domain dan IP Address. Server ini tidak memiliki jawaban tepat untuk informasi yang dicari.
Akan tetapi, server ini bisa meneruskan permintaan informasi ke pihak yang lebih mengetahui. Di dunia ini, terdapat 13 root server yang bekerja. Root server tersebut diurutkan secara alfabetis dari A sampai M.
Root server semacam ini dikelola organisasi seperti Internet Systems Consortium, Verisign, ICANN, the University of Maryland, and the U.S. Army Research Lab.
TLD Name Server
Dari root name server, sistem akan membaca jenis informasi yang dicari dari top-level domain. Setiap TLD seperti .COM, .ORG, .EDU, .ID, .AU, dan sebagainya memiliki server yang spesifik.
Dengan membaca informasi ini, sistem bisa meneruskan pencarian informasi ke server yang benar-benar memiliki data yang dicari.
Authoritative Name Server
Setelah menemukan klu di mana server yang diinginkan, sampailah kita pada authoritative name server. Jenis server satu ini memiliki semua informasi lengkap soal situs web yang dituju.
Ketika informasi yang diminta sesuai dengan hasilnya, maka browser akan menampilkan situs web atau halaman yang Anda minta di awal. Tentu saja hasil pencarian ini memiliki masa waktu tertentu.
Proses pencarian ini akan diulang untuk memastikan informasi yang ditampilkan tetap up-to-date. Namun, tentu saja, beberapa informasi ini disimpan dalam bentuk cache di device untuk berjaga-jaga agar proses query berjalan cepat.
Macam-Macam DNS
Informasi yang diminta user dalam sistem DNS disebut dengan DNS record. Ada beberapa jenis informasi yang bisa diminta dalam sistem DNS. Berikut adalah 10 DNS record yang paling sering dijumpai:
- A Record atau Address record ─ menyimpan informasi soal hostname, time to live (TTL), dan IPv4 Address.
- AAA Record ─ menyimpan informasi hostname dan hubungannya dengan IPv6 address.
- MX Record ─ merekam server SMTP yang khusus digunakan untuk saling berkirim email di suatu domain.
- CNAME Record ─ digunakan untuk me-redirect domain atau subdomain ke sebuah IP Address. Lewat fungsi satu ini, Anda tak perlu memperbarui DNS record.
- NS Record ─ merujuk subdomain pada authoritative name server yang diinginkan. Record ini berguna jika subdomain Anda di web hosting berbeda dengan domain.
- PTR Record ─ memberikan izin pada DNS resolver untuk menyediakan informasi soal IP Address dan menampilkan hostname (reverse DNS lookup).
- CERT Record ─ menyimpan sertifikat enkripsi atau sertifikat keamanan.
- SRV Record ─ menyimpan informasi terkait lokasi komunikasi, semacam Priority, Name, Weight, Port, Points, dan TTL
- TXT Record ─ membawa dan menyalurkan data yang hanya bisa dibaca oleh mesin.
- SOA Record ─ bagian yang muncul di awal dokumen DNS zone. Bagian yang sama juga merujuk pada Authoritative Name Server serta informasi lengkap sebuah domain.
Selain macam-macam DNS, Anda juga bisa menggunakan berbagai layanan DNS tercepat pihak ketiga yang pastinya lebih praktis. referensi : niagahoster
Setting DNS Di Linux Fedora
1. Pertama kita menginstall bind terlebih dahulu dengan perintah berikut :
~# dnf install bind bind-utils
2. Setelah selesai menginstall, kita lanjut mengubah file konfigurasi sistem kita dengan perintah berikut :
~# nano /etc/named/named.conf
kemudian kita ubah isinya menjadi seperti dibawah ini :
- Konfigurasi "listen-on port 53" dan "allow-query" menjadi any
- kemudian masih di file yang sama, kita pergi ke paling bawah file untuk mengatur zona nya, yaitu zona forwarding dan zona reverse nya.
contoh penulisannya :
zone "namaserver.com" {
type master;
file "/var/named/db.nameserver.com";
};
zone "[3 oktet IP kebalik].in-addr.arpa" {
type master;
file "/var/named/rev.namaserver.com";
};
3. Setelah itu kita edit atau buka /etc/sysconfig/named.
~# nano /etc/sysconfig/named
- Kemudian kita tambahkan file ini dengan :
OPTIONS="-4"
- Kemudian setelah kita ubah configurasi sistem DNS nya, kita test configurasi kita apakah ada error atau tidak dengan perintah berikut :
~# named-checkconf
-Jika tidak muncul suatu output/tulisan maka tidak ada error/kesalahan yang kita buat
4. Setelah itu kita buat file "db/database" yang telah kita buat di file configurasi tadi dengan perintah berikut :
~# nano /var/named/db.[nama domain] -contoh syntax
~# nano /var/named/db.arief.org
- setelah itu kita akan masuk ke dalam file kosong yg secera otomatis terbuat oleh perintah tadi (meskipun sebenarnya "nano" utk mengedit file , atau bisa juga kita buat dulu filenya baru di edit), setelah itu kita isi file kosongnya seperti di bawah ini(arief.org nya bisa di isi dengan domain kalian).
- lalu ketik Ctrl+X, lalu ketik y(utk save), lalu enter
5. Setelah itu kita buat lagi(file) untuk "rev/reserve" zonenya dengan perintah berikut :
~# nano /var/named/rev.[nanadomain] - contoh syntax
~# nano /var/named/rev.arief.org
- lalu seperti tadi kita isi file kosongnya, seperti dibawah ini :
- lalu ketik Ctrl+X, lalu ketik y(utk save), lalu enter
6. Lalu setelah itu kita cek zona kita apakah sudah benar cara kita menulis configurasi tersebut.
-Menggunakan perintah berikut :
contoh syntax :
~ named-checkzone [nama domain] [nama file db nya]
~ named-checkzone [nama domain] [nama file rev nya]
~# named-checkzone arief.org /var/named/db.arief.org
~# named-checkzone arief.org /var/named/rev.arief.org
- Jika tulisannya [zone ... : loaded serial ...] maka sudah benar.
7. Oke kita menuju proses akhir, karna semua file sudah dikonfigurasi dengan benar. Kita nyalakan dan mulai program dari DNS ini, kalau di Ubuntu bind, sedangkan karena saya menggunakan fedora namanya adalah named.
- 8. Lalu kita buka port 53, dan jika firewall berjalan maka kita akan menambahkan dns dan menyetelnya agar berjalan seterusnya.
~# firewall-cmd --runtime-to-permanent
9. Setelah itu kita masukan IP yang telah kita buat berserta domain nya di /etc/hosts
~# nano /etc/hosts
- kemudian kita akan masuk kedalam file nya untuk mengedit, lalu masukan IP dan Domain kita
10. Oke setelah itu kita bisa mengecek DNS kita dengan perintah berikut :
A. Mengecek DNS
~ dig [nama domain]
~# dig arief.org
- Jika ANSWER SECTION nya sudah sesuai domain dan ip yang kita inginkan maka telah berhasil/berfungsi dgn baik
B. Mengecek reverse zone nya apakah error atau tidak dengan perintah berikut :
~ dig -x [IP nya]
~# dig -x 10.20.30.15
C. Mengecek dengan nslookup, dan disini kita telah berhasil membuat DNS Server lokal
Tidak ada komentar:
Posting Komentar