5
Ilmu Komputer Informatika P151700008 Adi Hartanto, ST.,M.Kom
Abstract Kompetensi
sebuah sistem yang menghubungkan Mahasiswa diharapkan mampu
Uniform Resource Locator (URL) Memahami DNS server
dengan Internet Protocol Address (IP
Address)
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.
Domain Name Server atau DNS adalah sebuah sistem yang menghubungkan Uniform
Resource Locator (URL) dengan Internet Protocol Address (IP Address).
Normalnya, untuk mengakses internet, Anda perlu mengetikkan IP Address 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.
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 DNS:
Itulah ketiga fungsi DNS yang bekerja secara otomatis ketika anda sedang mengakses
internet.
Berikut ini adalah beberapa manfaat penggunaan DNS dalam aktivitas berinternet:
3. 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.
4. 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.
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.
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.
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.
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 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).
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.
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.
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.
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:
PTR Record ─ memberikan izin pada DNS resolver untuk menyediakan informasi
soal IP Address dan menampilkan hostname (reverse DNS lookup).
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.
Untuk dapat melakukan setting DNS Domain, Anda perlu membuka fitur Zone Editor di
cPanel. Berikut adalah langkah-langkah yang perlu Anda lakukan untuk melakukan setting
DNS:
1. Login ke cPanel.
2. Cari bagian Domains.
3. Klik Zone Editor.
5. Tambahkan record sesuai yang dibutuhkan (A, AAAA, CAA, CNAME, MX, SRV, atau
TXT)
6. Simpan record.
Lewat artikel ini, Anda jadi tahu apa sebenarnya DNS itu. Intinya, DNS adalah sistem yang
memudahkan Anda dalam melakukan browsing di internet. Anda tidak perlu mengingat
alamat website dalam angka. Anda cukup menuliskan nama domain yang ingin Anda buka
dan DNS akan menerjemahkannya ke alamat IP tujuan Anda.
Di artikel ini, Anda juga belajar apa saja fungsi DNS dan bagian-bagian di dalamnya. Tak
kalah penting, Anda jadi paham bagaimana DNS dan internet bekerja. Semua proses di atas
bisa berjalan dalam waktu sepersekian milidetik. Ajaib, bukan?
# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 10 (buster)
Release: 10
Codename: buster
1. Update & Upgrade Sistem
Langkah awal untuk memulai instalasi DNS Server adalah update dan Upgrade
terlebih dahulu sistem anda.
# cd /etc/bind
# ls
bind.keys db.255 named.conf named.conf.options
db.0 db.empty named.conf.default-zones rndc.key
db.127 db.local named.conf.local zones.rfc1918
# cp db.local db.domain
# cp db.127 db.ip
# ls
bind.keys db.255 db.ip named.conf.default-zones rndc.key
Edit file db.domain dan konfigurasi sesuai dengan domain yang kita inginkan dan
jangan lupa untuk memasukan alamat ip address yang nantinya akan di translasikan
ke domain yang kamu ingin. Sebagai contoh saya akan membuat
domain zonabiner.dev dengan ip address saya yaitu 10.100.69.18 dan
subdomain www dan blog. Sebagai catatan jika server subdomain sama dengan
salah satu alamat server yang dituju maka anda bisa gunakana CNAME (canonical
name). Saya menggunakan text editor nano sebagai catatan setelah mengedit, untuk
keluar dan menyimpan tekan ctrl+x.
# nano db.domain
;
; BIND data file for local loopback interface
;
$TTL 604800
@ IN SOA zonabiner.dev. root.zonabiner.dev. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS zonabiner.dev.
@ IN A 10.100.69.18
www IN A 10.100.69.18
blog IN CNAME www
Kemudian kita edit file db.ip. Pada file ini kita ganti angka 1.0.0 menjadi angka akhiran
dari ip address kita misal saya mempunyai ip address 10.100.69.18 maka saya akan
mengganti angka 1.0.0 menjadi 18.
# nano db.ip
;
; BIND reverse data file for local loopback interface
;
$TTL 604800
@ IN SOA zonabiner.dev. root.zonabiner.dev. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS zonabiner.dev.
18 IN PTR zonabiner.dev.
# nano named.conf.local
//
// Do any local configuration here
//
// Consider adding the 1918 zones here, if they are not used in your
// organization
// include "/etc/bind/zones.rfc1918";
zone "zonabiner.dev"{
type master;
file "/etc/bind/db.domain";
};
zone "69.100.10.in-addr.arpa"{
type master;
file "/etc/bind/db.ip";
};
# nano named.conf.options
options {
directory "/var/cache/bind";
forwarders {
8.8.8.8;
};
//========================================================================
// If BIND logs error messages about the root key being expired,
// you will need to update your keys. See https://www.isc.org/bind-keys
//========================================================================
dnssec-validation no;
# nano /etc/resolv.conf
nameserver 10.100.69.18
Jangan lupa untuk merestart service BIND9 agar konfigurasi yang baru kita terapkan
bisa digunakan.
4. Pengujian
# nslookup zonabiner.dev
Server: 10.100.69.18
Address: 10.100.69.18#53
Name: zonabiner.dev
Address: 10.100.69.18
# nslookup www.zonabiner.dev
Server: 10.100.69.18
Address: 10.100.69.18#53
Name: www.zonabiner.dev
Address: 10.100.69.18