Sljedeći dio Prethodni dio Sadržaj

5. Primjer prave domene

(u kojem ćemo pokazati neke prave datoteke zone)

Korisnici su predložili da uključim pravi primjer radeće domene kao i školski primjer.

Koristim ovaj primjer sa dozvolom Davida Bullocka iz LAND-5. Ove datoteke su bile aktualne 24. rujna 1996., i uređivane su da se uklope u bind-8 ograničenja i koriste moje nadopune. Tako da ovo što vidite ovdje se razlikuje ponešto od onoga što ćete dobiti ako postavite upit LAND-5-ovim imenskim serverima sada.

5.1 /etc/named.conf (ili /var/named/named.conf)

Ovdje nalazimo master zone sekcije za dvije potrebne obrnute zone: mreža 127.0.0, kao i LAND-5-ova 206.6.177 podmreža. I primary liniju za LAND-5-ovu forward zonu land-5.com. Također primijeti da se umjesto stavljanja datoteka u direktorij zvan 'pz', kako ja to radim u ovom KAKO-u, on ih stavlja u direktorij zvan 'zone'.


// Boot file for LAND-5 name server

options {
        directory "/var/named";
};

zone "." {
        type hint;
        file "root.hints";
};

zone "0.0.127.in-addr.arpa" {
        type master;
        file "zone/127.0.0";
};

zone "land-5.com" {
        type master;
        file "zone/land-5.com";
};

zone "177.6.206.in-addr.arpa" {
        type master;
        file "zone/206.6.177";
};

Ako ovo staviš u svoju named.conf datoteku za igru, MOLIM TE stavi: 'notify no;' u zone sekcije za dvije land-5 zone, tako da izbjegnemo nezgode.

5.2 /var/named/root.hints

Ne zaboravi da je ova datoteka dinamička, i da je ova navedena ovdje stara. Bolje ti je da koristiš onu napravljenu sada, sa dig-om, kao što je to objašnjeno prije.


; <<>> DiG 8.1 <<>> @A.ROOT-SERVERS.NET.
; (1 server found)
;; res options: init recurs defnam dnsrch
;; got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 10
;; flags: qr aa rd; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 13
;; QUERY SECTION:
;;      ., type = NS, class = IN

;; ANSWER SECTION:
.                     6D IN NS        G.ROOT-SERVERS.NET.
.                     6D IN NS        J.ROOT-SERVERS.NET.
.                     6D IN NS        K.ROOT-SERVERS.NET.
.                     6D IN NS        L.ROOT-SERVERS.NET.
.                     6D IN NS        M.ROOT-SERVERS.NET.
.                     6D IN NS        A.ROOT-SERVERS.NET.
.                     6D IN NS        H.ROOT-SERVERS.NET.
.                     6D IN NS        B.ROOT-SERVERS.NET.
.                     6D IN NS        C.ROOT-SERVERS.NET.
.                     6D IN NS        D.ROOT-SERVERS.NET.
.                     6D IN NS        E.ROOT-SERVERS.NET.
.                     6D IN NS        I.ROOT-SERVERS.NET.
.                     6D IN NS        F.ROOT-SERVERS.NET.

;; ADDITIONAL SECTION:
G.ROOT-SERVERS.NET.     5w6d16h IN A    192.112.36.4
J.ROOT-SERVERS.NET.     5w6d16h IN A    198.41.0.10
K.ROOT-SERVERS.NET.     5w6d16h IN A    193.0.14.129
L.ROOT-SERVERS.NET.     5w6d16h IN A    198.32.64.12
M.ROOT-SERVERS.NET.     5w6d16h IN A    202.12.27.33
A.ROOT-SERVERS.NET.     5w6d16h IN A    198.41.0.4
H.ROOT-SERVERS.NET.     5w6d16h IN A    128.63.2.53
B.ROOT-SERVERS.NET.     5w6d16h IN A    128.9.0.107
C.ROOT-SERVERS.NET.     5w6d16h IN A    192.33.4.12
D.ROOT-SERVERS.NET.     5w6d16h IN A    128.8.10.90
E.ROOT-SERVERS.NET.     5w6d16h IN A    192.203.230.10
I.ROOT-SERVERS.NET.     5w6d16h IN A    192.36.148.17
F.ROOT-SERVERS.NET.     5w6d16h IN A    192.5.5.241

;; Total query time: 215 msec
;; FROM: roke.uio.no to SERVER: A.ROOT-SERVERS.NET.  198.41.0.4
;; WHEN: Sun Feb 15 01:22:51 1998
;; MSG SIZE  sent: 17  rcvd: 436

5.3 /var/named/zone/127.0.0

Samo osnove, obavezni SOA zapis, i zapis koji određuje 127.0.0.1 kao localhost. Oba su nužna. Ništa više ne treba biti u ovoj datoteci. Ona se vjerojatno nikad neće morati mijenjati, osim ako se adresa tvog imenskog servera ili hostmastera promijeni.


@               IN      SOA     land-5.com. root.land-5.com. (
                                199609203       ; Serial
                                28800   ; Refresh
                                7200    ; Retry
                                604800  ; Expire
                                86400)  ; Minimum TTL
                        NS      land-5.com.

1                       PTR     localhost.

5.4 /var/named/zone/land-5.com

Ovdje vidimo obavezni SOA zapis, i potrebne NS zapise. Možemo vidjeti da on ima sekundarni name server na ns2.psi.net. Ovo je kako treba biti, uvijek treba imati vanjski site za sekundarni server kao rezervnu kopiju. Možemo također vidjeti da on ima glavni stroj zvan land-5 koji se brine o mnogim Internet uslugama, i da je to napravio sa CNAME-ovima (alternativa je korištenje A zapisa).

Kao što vidiš iz SOA zapisa, datoteka zone dolazi iz land-5.com, osoba za kontakt je root@land-5.com. 'hostmaster' je još jedna često korištena adresa za odgovornu osobu. Serijski broj je u suglasnom ggggmmdd formatu sa današnjom revizijom dodanom; ovo je vjerojatno šesta inačica datoteke zone dana 20. rujna 1996.g. Zapamti da se serijski broj mora monotono povećavati, ovdje je samo jedna brojka za današnji serijski broj, tako da nakon 9 uređivanja on mora čekati do sutra prije nego što promijeni datoteku ponovo. Razmisli o korištenju dvije brojke.


@       IN      SOA     land-5.com. root.land-5.com. (
                        199609206       ; serial, danasnji datum + danasnja revizija
                        8H              ; refresh, sekundi
                        2H              ; retry, sekundi
                        1W              ; expire, sekundi
                        1D )            ; minimum, sekundi
                NS      land-5.com.
                NS      ns2.psi.net.
                MX      10 land-5.com.  ; primarni Mail eXchanger

localhost       A       127.0.0.1

router          A       206.6.177.1

land-5.com.     A       206.6.177.2
ns              A       206.6.177.3
www             A       207.159.141.192

ftp             CNAME   land-5.com.
mail            CNAME   land-5.com.
news            CNAME   land-5.com.

funn            A       206.6.177.2
@               TXT     "LAND-5 Corporation"

;
;       Radne stanice
;
ws-177200       A       206.6.177.200
                MX      10 land-5.com.   ; Primary Mail Host
ws-177201       A       206.6.177.201
                MX      10 land-5.com.   ; Primary Mail Host
ws-177202       A       206.6.177.202
                MX      10 land-5.com.   ; Primary Mail Host
ws-177203       A       206.6.177.203
                MX      10 land-5.com.   ; Primary Mail Host
ws-177204       A       206.6.177.204
                MX      10 land-5.com.   ; Primary Mail Host
ws-177205       A       206.6.177.205
                MX      10 land-5.com.   ; Primary Mail Host
; {Puno ponovljenih definicija obrisano - SNIP}
ws-177250       A       206.6.177.250
                MX      10 land-5.com.   ; Primary Mail Host
ws-177251       A       206.6.177.251
                MX      10 land-5.com.   ; Primary Mail Host
ws-177252       A       206.6.177.252
                MX      10 land-5.com.   ; Primary Mail Host
ws-177253       A       206.6.177.253
                MX      10 land-5.com.   ; Primary Mail Host
ws-177254       A       206.6.177.254
                MX      10 land-5.com.   ; Primary Mail Host

Ako pregledaš land-5 imenski server naći ćeš da su imena strojeva u obliku ws_broj. Nakon kasnijih bind 4 verzija named je počeo uvoditi ograničenja u znakovima koji se smiju koristiti u imenima strojeva. Tako da to uopće ne radi sa bind-8, i '_' (podvlaka) se zamjenjuje sa '-' (crta).

Još jednu stvar treba primijetiti, a ta je da radne stanice nemaju individualna imena, već prefiks popraćen sa zadnja dva dijela IP broja. Koristeći takav sustav možeš znatno pojednostaviti održavanje, ali to može biti neosobno, i ustvari izvor nezadovoljstva među tvojim korisnicima.

Također vidimo da je funn.land-5.com alias za land-5.com, ali koristeći A zapis, ne CNAME zapis.

5.5 /var/named/zone/206.6.177

Ovu datoteku ću komentirati nakon nje.


@               IN      SOA     land-5.com. root.land-5.com. (
                                199609206       ; Serial
                                28800   ; Refresh
                                7200    ; Retry
                                604800  ; Expire
                                86400)  ; Minimum TTL
                        NS      land-5.com.
                        NS      ns2.psi.net.
;
;       Serveri
;
1       PTR     router.land-5.com.
2       PTR     land-5.com.
2       PTR     funn.land-5.com.
;
;       Radne stanice
;
200     PTR     ws-177200.land-5.com.
201     PTR     ws-177201.land-5.com.
202     PTR     ws-177202.land-5.com.
203     PTR     ws-177203.land-5.com.
204     PTR     ws-177204.land-5.com.
205     PTR     ws-177205.land-5.com.
; {Puno ponovljenih definicija obrisano - SNIP}
250     PTR     ws-177250.land-5.com.
251     PTR     ws-177251.land-5.com.
252     PTR     ws-177252.land-5.com.
253     PTR     ws-177253.land-5.com.
254     PTR     ws-177254.land-5.com.

Obrnuta zona je dio podešavanja koji izgleda uzrokuje najviše nevolja. Koristi se da se nađe ime stroja ako imaš IP broj istog. Primjer: ti si IRC server i prihvaćaš veze od IRC klijenata. Ipak, ti si norveški IRC server tako da želiš prihvatiti veze samo iz Norveške i ostalih skandinavskih zemalja. Kada uspostaviš vezu s klijentom, C library može ti reći IP broj drugog stroja zato što se IP broj klijenta pojavljuje u svim paketima koji prolaze mrežom. Sada možeš pozvati funkciju 'gethostbyaddr' koja pogleda ime stroja određenog IP brojem. gethostbyaddr će pitati DNS server, koji će onda pregledati DNS tražeći stroj.

Pretpostavimo da se klijent spaja sa adrese ws-177200.land-5.com. IP broj kojeg C library daje IRC serveru jest 206.6.177.200. Da bismo saznali ime tog stroja, moramo naći 200.177.6.206.in-addr.arpa. DNS server će prvo naći arpa. servere, pa in-addr.arpa. servere, prateći obrnuti trag kroz 206, pa 6, i na kraju će naći server za 177.6.206.in-addr.arpa zonu na land-5. Iz toga će finalno dobiti odgovor da za 200.177.6.206.in-addr.arpa imamo 'PTR ws-177200.land-5.com' zapis, što znači da ime koje ide uz 206.6.177.200 jest ws-177200.land-5.com. Kao i objašnjenje kako se pogleda prep.ai.mit.edu, i ovo je malo fiktivno.

Da se vratimo na primjer IRC servera. IRC server prihvaća samo veze iz skandinavskih zemalja, odn. *.no, *.se, i *.dk, pa ime ws-177200.land-5.com očito ne zadovoljava nijedan uvjet, i server će se odbiti povezati. Kad ne bi postojalo reverzno mapiranje IP-a 206.2.177.200 kroz in-addr.arpa zonu, server ne bi nikako mogao naći ime stroja, i morao bi usporediti 206.2.177.200 sa *.no, *.se, i *.dk, što naravno ne bi uspjelo.

Neki ljudi će ti reći da je reverzno mapiranje važno samo za servere, ili nije uopće. Nije tako, jer puno FTP, NNTP (news), IRC pa čak i neki HTTP (www) serveri neće prihvatiti veze sa strojevima čije ime ne mogu pronaći. Tako da je reverzno mapiranje za strojeve obavezno.


Sljedeći dio Prethodni dio Sadržaj