Product SiteDocumentation Site

10.6. Domain Name Servers (DNS)

10.6.1. Prinsip dan Mekanisme

Layanan Nama Domain (Domain Name Service, DNS) adalah komponen fundamental dari Internet: itu memetakan nama host ke alamat IP (dan sebaliknya), yang memungkinkan penggunaan www.debian.org daripada 5.153.231.4 atau 2001:41c8:1000:21::21:4.
Record-record DNS disusun dalam zona; setiap zona cocok dengan suatu domain (atau subdomain) atau suatu rentang alamat IP (karena alamat IP umumnya dialokasikan dalam rentang berturutan). Sebuah server adalah otoritatif atas isi suatu zona; server sekunder, sering diwadahi pada mesin terpisah, menyediakan salinan zona utama yang diperbarui secara teratur.
Setiap zona dapat berisi record dari berbagai jenis (Record Sumber Daya):
  • A: Alamat IPv4.
  • CNAME: alias (nama kanonis).
  • MX: pertukaran surat, server surel. Informasi ini digunakan oleh server surel lain untuk menemukan tempat mengirim surel yang ditujukan ke alamat yang diberikan. Setiap data MX memiliki prioritas. Server prioritas tertinggi (dengan angka terendah) dicoba terlebih dahulu (lihat bilah sisi KEMBALI KE DASAR SMTP ); server lain dihubungi dalam prioritas menurun jika yang pertama tidak membalas.
  • PTR: pemetaan alamat IP ke suatu nama. Record semacam itu disimpan dalam zona "reverse DNS" yang diberi nama sesuai dengan rentang alamat IP. Sebagai contoh, 1.168.192.in-addr.arpa adalah zona yang berisi pemetaan balik untuk semua alamat di rentang 192.168.1.0/24.
  • AAAA: Alamat IPv6.
  • NS: memetakan suatu nama ke sebuah server nama. Setiap domain harus punya paling tidak satu record NS. Record ini menunjuk ke suatu server DNS yang dapat menjawab kueri-kueri menyangkut domain ini; mereka biasanya menunjuk ke server primer dan sekunder bagi domain tersebut. Record ini juga mengizinkan delegasi DNS; sebagai contoh, zona falcot.com bisa termasuk suatu record NS bagi internal.falcot.com, yang berarti bahwa zona internal.falcot.com ditangani oleh server lain. Tentu saja, server ini mesti mendeklarasikan zona internal.falcot.com.
Server nama referensi, Bind, dikembangkan dan dikelola oleh ISC (Internet Software Consortium). Disediakan di Debian oleh paket bind9. Versi 9 membawa dua perubahan besar dibandingkan dengan versi sebelumnya. Pertama, server DNS sekarang dapat dijalankan di bawah pengguna tanpa hak khusus, sehingga kerentanan keamanan di server tidak memberikan hak akses root ke penyerang (seperti yang terlihat berkali-kali dengan versi 8.x).
Selain itu, Bind mendukung standar DNSSEC untuk penandatanganan (dan karena itu otentikasi) record DNS, yang memungkinkan memblokir setiap spoofing data ini selama serangan man-in-the-middle.

10.6.2. Mengkonfigurasi

Berkas konfigurasi untuk bind, terlepas dari versi, memiliki struktur yang sama.
Para administrator Falcot menciptakan sebuah zona utama falcot.com untuk menyimpan informasi yang terkait dengan domain ini, dan zona 168.192.in-addr.arpa untuk pemetaan balik alamat IP pada jaringan lokal.
Kutipan-kutipan konfigurasi berikut, diambil dari berkas Falcot, dapat berfungsi sebagai titik awal untuk mengkonfigurasi sebuah server DNS:

Contoh 10.12. Kutipan dari /etc/bind/named.conf.local

zone "falcot.com" {
        type master;
        file "/etc/bind/db.falcot.com";
        allow-query { any; };
        allow-transfer {
                195.20.105.149/32 ; // ns0.xname.org
                193.23.158.13/32 ; // ns1.xname.org
        };
};

zone "internal.falcot.com" {
        type master;
        file "/etc/bind/db.internal.falcot.com";
        allow-query { 192.168.0.0/16; };
};

zone "168.192.in-addr.arpa" {
        type master;
        file "/etc/bind/db.192.168";
        allow-query { 192.168.0.0/16; };
};

Contoh 10.13. Kutipan dari /etc/bind/db.falcot.com

; falcot.com Zone 
; admin.falcot.com. => zone contact: admin@falcot.com
$TTL    604800
@       IN      SOA     falcot.com. admin.falcot.com. (
                        20040121        ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
; The @ refers to the zone name ("falcot.com" here)
; or to $ORIGIN if that directive has been used
;
@       IN      NS      ns
@       IN      NS      ns0.xname.org.

internal IN      NS      192.168.0.2

@       IN      A       212.94.201.10
@       IN      MX      5 mail
@       IN      MX      10 mail2

ns      IN      A       212.94.201.10
mail    IN      A       212.94.201.10
mail2   IN      A       212.94.201.11
www     IN      A       212.94.201.11

dns     IN      CNAME   ns

Contoh 10.14. Kutipan dari /etc/bind/db.192.168

; Reverse zone for 192.168.0.0/16
; admin.falcot.com. => zone contact: admin@falcot.com
$TTL    604800
@       IN      SOA     ns.internal.falcot.com. admin.falcot.com. (
                        20040121        ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL

        IN      NS      ns.internal.falcot.com.

; 192.168.0.1 -> arrakis
1.0     IN      PTR     arrakis.internal.falcot.com.
; 192.168.0.2 -> neptune
2.0     IN      PTR     neptune.internal.falcot.com.

; 192.168.3.1 -> pau
1.3     IN      PTR     pau.internal.falcot.com.