Naprej Nazaj Kazalo

7. Zgled prave domene

Tu je nekaj pravih datotek `zone'

Uporabniki so predlagali, da poleg učnih zgledov dodam tudi datoteke prave in delujoče domene.

Te zglede uporabljam z dovoljenjem Davida Bullocka z LAND-5. Datoteke so bile posnete 24. septembra 1996 in sem jih nato nekoliko popravil, da delujejo z BIND-8, zato se to, kar vidite tu, nekoliko razlikuje od rezultatov, ki jih dobite, če poizvedujete pri imenskih strežnikih LAND-5.

7.1 /etc/named.conf (ali /var/named/named.conf)

Tu najdemo poglavitne razdelke `zone' za dvoje obratnih vnosov: omrežje 127.0.0 in omrežje LAND-5 206.6.177. Tu je tudi primarni razdelek za land-5.com. Bodite pozorni na to, da datoteke niso shranjene v mapi pz, kot v tem HOWTO, temveč v mapi 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";
};

Če boste to datoteko prekopirali v svoj named.conf, da bi se igrali, PROSIM, vpišite še vrstico ``notify no;'' v razdelke `zone' za obe land-5 in tako preprečite nesrečo.

7.2 /var/named/root.hints

Zapomnite si, da je ta datoteka dinamična in zato tale ni več veljavna. Svojo lahko naredite z digom, kot sem razložil.


; <<>> 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

7.3 /var/named/zone/127.0.0

Samo osnove; nujen zapis SOA in zapis, ki preslika 127.0.0.1 v localhost. Oba sta potrebna. Ni treba, da je v tej datoteki še kaj. Verjetno je ne bo nikoli treba popravljati, razen če se spremeni imenski strežnika ali e-naslov upravitelja DNS.


@               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.

Če si ogledate naključno namestitev BIND, boste najbrž ugotovili, da manjka $TTL, tako kakor tu. Prej ni bila uporabljena in šele različica BIND 8.2 je začela opozarjati na to, da je ni. Svetujem, da v vsako območno datoteko vstavite vrstico $TTL.

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

Tu vidimo zapis SOA in potrebni zapis NS. Kot lahko opazite, ima LAND-5 tudi sekundarni imenski strežnik na ns2.psi.net. Tako tudi mora biti: vedno mora biti zunaj določene strani še sekundarni imenski strežnik, za vsak primer. Vidimo lahko, da je glavni računalnik, land-5, ki skrbi za veliko različnih internetnih storitev in ima tudi nekaj alternativnih imen, narejenih s CNAME (druga možnost je uporaba zapisov A).

Iz zapisa SOA je razvidno, da domena izvira iz land-5.com, kontaktna oseba je root@land-5.com. Tudi hostmaster je pogosto uporabljeni naslov za kontaktno osebo. Serijska številka je v formatu yyyymmdd (leto, mesec, dan) s pripeto dnevno serijsko številko; to je verjetno šesta različica te datoteke na dan 20. septembra 1996. Zapomnite si, da se serijska številka mora povečevati monotono, in ker je današnja serijska številka omejena na eno cifro, mora po 9 popravkih počakati do naslednjega dne, da lahko spet popravlja datoteko. Premislite, ali ne bi uporabili dveh številk.


@       IN      SOA     land-5.com. root.land-5.com. (
                        199609206       ; serial, todays date + todays serial #
                        8H              ; refresh, seconds
                        2H              ; retry, seconds
                        4W              ; expire, seconds
                        1D )            ; minimum, seconds
                NS      land-5.com.
                NS      ns2.psi.net.
                MX      10 land-5.com.  ; Primary Mail Exchanger
                TXT     "LAND-5 Corporation"

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

;
;       Workstations
;
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
; {Many repetitive definitions deleted - 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

Če si ogledate imenski strežnik land-5, boste ugotovili, da so imena računalnikov v obliki ws_številka. Po BIND-4 je named namreč začel zahtevati, da se točno držite znakov, ki se smejo uporabiti v imenih. BIND-8 s tem sploh ne bi deloval več, zato sem zamenjal `_' s pomišljajem (-).

Zanimivo je tudi to, da delovne postaje nimajo individualnih imen, temveč so le-ta sestavljena iz predpone in zadnjih delov številk IP. Uporaba takega sistema lahko zelo olajša vzdrževanje, vendar je precej neosebna in utegne vznejevoljiti vaše stranke.

Vidimo tudi, da je funn.land-5.com alternativno ime za land-5.com, vendar z uporabo zapisa A in ne CNAME. To je dobra politika, kot sem povedal že prej.

7.5 /var/named/zone/206.6.177

Komentarji za to datoteko sledijo.


@               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.
;
;       Servers
;
1       PTR     router.land-5.com.
2       PTR     land-5.com.
2       PTR     funn.land-5.com.
;
;       Workstations
;
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.
; {Many repetitive definitions deleted - 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.

Obratni vnosi so del nastavitev, ki povzroča največ težav. Uporabljajo se za iskanje imena računalnika, če imate njegovo številko IP. Zgled: ste strežnik IRC in sprejemate povezave odjemalcev IRC. A ker ste norveški strežnik IRC, želite sprejemati le povezave odjemalcev na Norveškem in v drugih skandinavskih državah. Ko se na vas priključi odjemalec, vam lahko vaša knjižnica C pove številko IP računalnika, ki se je priključil, ker je napisana v vsakem paketu podatkov, ki pride po internetu. Zdaj lahko pokličete funkcijo gethostbyaddr, ki preslika številko IP v ime računalnika. Gethostbyaddr bo vprašal strežnik DNS in ta bo prevzel iskanje imena. Predpostavimo, da se je poskusil priključiti odjemalec z ws-177200.land-5.com. Številka IP, ki vam jo pove knjižnica C, je 206.6.177.200. Da bi ugotovili ime računalnika, moramo najti 200.177.6.206.in-addr.arpa. Strežnik DNS bo najprej našel strežnike za arpa., nato strežnike za in-addr.arpa. in sledil po številkah 206 in 6 ter končno našel strežnik za 177.6.206.in-addr.arpa. na LAND-5. Od njega bo dobil odgovor, da ima za 200.177.6.206.in-addr.arpa zapis ``PTR ws-177200.land-5.com'', kar pomeni, da k naslovu 206.6.177.200 sodi ime ws-177200.land-5.com. Tako kakor opis poizvedbe za prep.ai.mit.edu je tudi ta malce fiktiven.

Vrnimo se k zgledu strežnika IRC. Strežnik sprejema samo povezave iz skandinavskih dežel, to je *.no, *.se in *.dk. Ime ws-177200.land-5.com vsekakor ne ustreza nobeni od teh možnosti, zato bo strežnik zavrnil povezavo. Če ne bi bilo obratnih preslikav za 206.6.177.200 skozi in-addr.arpa, strežnik sploh ne bi mogel najti imena računalnika in vse, kar bi imel za primerjati z *.no, *.se in *.dk, bi bilo 206.2.177.200 - to pa se seveda ne bi ujemalo.

Rekli vam bodo, da so obratne poizvedbe pomembne samo za strežnike, oziroma da sploh niso pomembne. Ni res: številni strežniki ftp, novičarski strežniki, strežniki IRC in celo nekateri http (WWW) se vam ne bodo dovolili priključiti iz računalnika, katerega imena ne morejo izvedeti. Zato so obratne poizvedbe v resnici obvezne.


Naprej Nazaj Kazalo