home *** CD-ROM | disk | FTP | other *** search
/ Underground / Underground CD1.iso / other / how-to.pl / DNS-HOWTO.pl.txt < prev    next >
Encoding:
Text File  |  1998-08-04  |  70.3 KB  |  2,311 lines

  1.   DNS HOWTO
  2.   Autor: Nicolai Langfeldt janl@math.uio.no
  3.   v2.0.6, 22 Lipca 1998
  4.   Wersja polska: Leszek Urba±ski tygrys@fidonet.org.pl
  5.   v2.1, 4 Sierpnia 1998
  6.  
  7.  
  8.   Jak zostaµ ma│oetatowym administratorem DNS. Dokument ten zosta│
  9.   napisany w standardzie ISO-8859-2. Orygina│ tego dokumentu znajduje
  10.   siΩ pod adresem ftp.icm.edu.pl/pub/Linux/sunsite/docs/HOWTO/.
  11.   ______________________________________________________________________
  12.  
  13.   Table of Contents
  14.  
  15.  
  16.   1. Preambu│a
  17.  
  18.      1.1 Legalno╢µ
  19.      1.2 Osoby pracuj▒ce nad tym dokumentem; pro╢ba o pomoc
  20.      1.3 Dedykacja
  21.  
  22.   2. Wprowadzenie
  23.  
  24.   3. Serwer nazw z pamiΩci▒ podrΩczn▒ (cache)
  25.  
  26.      3.1 Uruchamianie named
  27.  
  28.   4. (EM
  29.  
  30.      4.1 Ale najpierw trochΩ czystej teorii
  31.      4.2 W│asna domena
  32.      4.3 Strefa odwrotna
  33.  
  34.   5. Prawdziwa domena
  35.  
  36.      5.1 /etc/named.conf (lub /var/named/named.conf)
  37.      5.2 /var/named/root.hints
  38.      5.3 /var/named/zone/127.0.0
  39.      5.4 /var/named/zone/land-5.com
  40.      5.5 /var/named/zone/206.6.177
  41.  
  42.   6. Nadz≤r
  43.  
  44.   7. Przej╢cie z wersji 4 na wersjΩ 8
  45.  
  46.   8. FAQ
  47.  
  48.   9. Jak zostaµ pe│noetatowym administratorem DNS
  49.  
  50.   10. Od t│umacza
  51.  
  52.  
  53.  
  54.   ______________________________________________________________________
  55.  
  56.   1.  Preambu│a
  57.  
  58.  
  59.   S│owa kluczowe: DNS, bind, bind-4, bind-8, named, dialup, ppp, slip,
  60.   isdn, Internet, domain, name, hosts, resolving
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.   1.1.  Legalno╢µ
  68.  
  69.  
  70.   (C)opyright 1995 Nicolai Langfeldt. Nie zmieniaµ bez zachowania praw
  71.   autorskich. Dokument ten mo┐e byµ dowolnie rozpowszechniany dot▒d,
  72.   dok▒d zostanie zachowana wiadomo╢µ o prawach autorskich.
  73.  
  74.  
  75.  
  76.  
  77.   1.2.  Osoby pracuj▒ce nad tym dokumentem; pro╢ba o pomoc
  78.  
  79.  
  80.   Chcia│bym podziΩkowaµ Arntowi Gulbrandsenowi, kt≤ry przeczyta│ szkice
  81.   tej pracy niezliczon▒ ilo╢µ razy i dostarczy│ wielu przydatnych
  82.   sugestii.  ChcΩ te┐ podziΩkowaµ ludziom, kt≤rzy wysy│ali mi e-mailem
  83.   sugestie i uwagi.
  84.  
  85.   Ten dokument nigdy nie bΩdzie uko±czony - wysy│aj mi listy o twoich
  86.   problemach i sukcesach, mo┐e to sprawiµ, ┐e HOWTO bΩdzie
  87.   dok│adniejsze.  Pieni▒dze, komentarze i/lub pytania mo┐esz wysy│aµ do
  88.   janl@math.uio.no.  Je┐eli wy╢lesz mi e-mail i bΩdziesz ┐▒da│
  89.   odpowiedzi, upewnij siΩ, ┐e adres zwrotny jest poprawny i dzia│aj▒cy.
  90.   ProszΩ,  przeczytaj sekcjΩ ``FAQ'' przed wys│aniem do mnie listu.
  91.  
  92.   Je╢i chcesz przet│umaczyµ to HOWTO, zawiadom mnie, abym m≤g│ ╢ledziµ,
  93.   w jakich jΩzykach zosta│em opublikowany, mogΩ te┐ zawiadamiaµ ciΩ,
  94.   kiedy HOWTO bΩdzie uaktualniane.
  95.  
  96.  
  97.  
  98.  
  99.   1.3.  Dedykacja
  100.  
  101.  
  102.   To HOWTO jest dedykujΩ dla Anne Line Norheim Langfeldt. Zreszt▒ pewnie
  103.   nigdy tego nie przeczyta, bo nie jest tego rodzaju dziewczyn▒.
  104.  
  105.  
  106.  
  107.  
  108.   2.  Wprowadzenie
  109.  
  110.  
  111.   Czym ten dokument jest, a czym nie.
  112.  
  113.   Dla pocz▒tkuj▒cych: DNS to System Nazw Domen (Domain Name System).
  114.   DNS przekszta│ca nazwy maszyn na numery IP, kt≤re s▒ ich adresami,
  115.   mapuje z nazwy na adres i odwrotnie. To HOWTO opisuje, jak zdefiniowaµ
  116.   takie mapowanie u┐ywaj▒c systemu Linux. Mapowanie to po prostu zwi▒zek
  117.   jednej rzeczy z drug▒, w tym przypadku nazwy maszyny, jak
  118.   ftp.linux.org i jej adresu IP, 199.249.150.4.
  119.  
  120.   DNS jest dla pocz▒tkuj▒cych (ciebie ;-)) jednym z najtrudniejszych
  121.   zagadnie± administracji sieci. To HOWTO wyja╢nia parΩ rzeczy -
  122.   opisuje jak postawiµ prosty serwer nazw DNS, zaczynaj▒c z serwerem
  123.   cache i przechodz▒c do ustawiania podstawowego (primary) serwera DNS
  124.   dla domeny. »eby uzyskaµ informacjΩ o bardziej z│o┐nonych
  125.   konfiguracjach, zobacz sekcjΩ ``FAQ'' tego dokumentu.  Je┐eli i tam
  126.   nie znajdziesz potrzebnego opisu, bedziesz musia│ przeczytaµ Prawdziw▒
  127.   DokumentacjΩ. Powr≤cΩ do jej sk│adnik≤w w ``ostatnim rodziale''.
  128.  
  129.   Zanim zaczniesz, powiniene╢ tak skonfigurowaµ swoj▒ maszynΩ, ┐eby╢
  130.   m≤g│ telnetowaµ siΩ na ni▒ i z niej, oraz z powodzeniem przeprowadziµ
  131.   wszystkie rodzaje po│▒cze± z sieci▒, a zw│aszcza m≤c wykonaµ telnet
  132.   127.0.0.1 i uzyskaµ po│▒czenie z w│asnym komputerem (przetestuj to
  133.   teraz!).  Potrzebne bΩd▒ te┐ poprawne: /etc/nsswitch.conf (lub
  134.   /etc/host.conf), /etc/resolv.conf i /etc/hosts, jako punkt startowy,
  135.   poniewa┐ nie bΩdΩ wyja╢nia│ tu ich funkcji.  Je╢li nie masz tego
  136.   wszystkiego ustawionego i dzia│aj▒cego, NET-3 HOWTO i/lub PPP-HOWTO
  137.   wyja╢niaj▒ jak to ustawiµ. Przeczytaj je.
  138.  
  139.   Kiedy m≤wiΩ ,,twoja maszyna'', mam na my╢li komputer, na kt≤rym chcesz
  140.   ustawiµ DNS, a nie ┐adn▒ inn▒ maszynΩ, jak▒ mo┐esz mieµ, kt≤ra jest
  141.   zwi▒zana z twoj▒ sieci▒.
  142.  
  143.   PrzyjmujΩ, ┐e nie jeste╢ za ┐adnym rodzajem ╢ciany ognia (firewall),
  144.   kt≤ra blokuje zapytania (queries) o nazwy. Je┐eli jeste╢, bΩdziesz
  145.   potrzebowa│ specjalnej konfiguracji, przeczytaj sekcjΩ ``FAQ''.
  146.  
  147.   Serwerem nazw w Unixie jest program nazywany named.  Jest on czΩ╢ci▒
  148.   pakietu bind, kt≤ry jest koordynowana przez Paula Vixie z Internet
  149.   Software Consortium. Named jest za│▒czony w wiΩkszo╢ci dystrybucji
  150.   Linuxa i zazwyczaj zainstalowany jako /usr/sbin/named.  Je┐eli masz
  151.   ju┐ named, mo┐esz go prawdopodobnie u┐ywaµ; je╢li nie, mo┐esz wzi▒µ
  152.   binaria z jakiego╢ Linuxowego serwera ftp, lub najnowsze i najlepsze
  153.   ╝r≤d│a z ftp.isc.org/isc/bind/src/cur/bind-8/.  To HOWTO opisuje
  154.   wersjΩ 8 bind'a. Stara wersja tego HOWTO (o bind 4) jest dostΩpna na
  155.   http://www.math.uio.no/~janl/DNS/.  Je┐eli strona man named'a m≤wi o
  156.   named.conf masz bind'a 8, a je┐eli o named.boot, bind 4. Je╢li masz 4
  157.   i obchodzi ciΩ bezpiecze±stwo, naprawdΩ powiniene╢ dokonaµ
  158.   rozszerzenia do nowego 8.
  159.  
  160.   DNS to baza danych szeroka jak sama sieµ. Uwa┐aj, co do niej wk│adasz.
  161.   Je┐eli w│o┐ysz do niej ╢mieci, ty i inni wyjm▒ tak┐e ╢mieci.  Je┐eli
  162.   utrzymasz sw≤j DNS w czysto╢ci i ci▒g│o╢ci, bΩdzie ci dobrze s│u┐y│.
  163.   Naucz siΩ go u┐ywaµ, administrowaµ i znajdowaµ b│Ωdy, a zostaniesz
  164.   kolejnym dobrym administratorem, utrzymuj▒cym sieµ przed upadniΩciem
  165.   na kolana z powodu prze│adowania niedobrym zarz▒dzaniem.
  166.  
  167.   W tym dokumencie napisa│em parΩ wyja╢nie±, kt≤re nie s▒ ca│kowicie
  168.   prawdziwe (jednak┐e s▒ przynajmniej w po│owie prawd▒). Wszystko w
  169.   interesie uproszczenia.  Wszystko bΩdzie (prawdopodobnie ;-)) dzia│aµ,
  170.   je┐eli uwierzysz w to, co m≤wiΩ.
  171.  
  172.   Podpowied╝: Zr≤b kopie zapasowe wszystkich plik≤w, kt≤re bΩdziesz
  173.   zmieniaµ, ┐eby╢ m≤g│ wr≤ciµ do starej, dzia│aj▒cej konfiguracji,
  174.   je┐eli nic siΩ nie powiedzie.
  175.  
  176.  
  177.   3.  Serwer nazw z pamiΩci▒ podrΩczn▒ (cache)
  178.  
  179.  
  180.   Pierwszy krok w konfigurowaniu DNS'u, bardzo przydatny dla
  181.   korzystaj▒cych z modemu.
  182.  
  183.   Serwer z pamiΩci▒ podrΩczn▒ bΩdzie szuka│ odpowiedzi na zapytania o
  184.   nazwy i pamiΩta│ odpowied╝, ┐eby╢ m≤g│ jej u┐yµ nastΩpnym razem, kiedy
  185.   bΩdziesz jej potrzebowa│.  To skr≤ci czas oczekiwania za drugim razem
  186.   kiedy bΩdziesz potrzebowa│ nazwy, zw│aszcza je┐eli korzystasz z
  187.   wolnego po│▒czenia.
  188.  
  189.   Po pierwsze, potrzebujesz pliku /etc/named.conf. Jest on czytany,
  190.   kiedy named zostaje uruchamiany. Narazie powinien po prostu zawieraµ:
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.   ______________________________________________________________________
  200.   // Plik konfiguracyjny dla serwera nazw ,,caching''
  201.  
  202.   options {
  203.           directory "/var/named";
  204.  
  205.           // Odkomentowanie tego mo┐e pom≤c, je┐eli musisz przej╢µ przez
  206.           // ╢cianΩ ognia (firewall), a co╢ nie dzia│a:
  207.  
  208.           // query-source address * port 53;
  209.   };
  210.  
  211.   zone "." {
  212.           type hint;
  213.           file "root.hints";
  214.   };
  215.  
  216.   zone "0.0.127.in-addr.arpa" {
  217.           type master;
  218.           file "pz/127.0.0";
  219.   };
  220.   ______________________________________________________________________
  221.  
  222.  
  223.  
  224.   Linia directory m≤wi named'owi, gdzie szukaµ plik≤w. Wszystkie pliki w
  225.   podkatalogach bΩd▒ odpowiada│y tej zmiennej. A wiΩc pz jest
  226.   podkatalogiem w /var/named, czyli /var/named/pz. /var/named to
  227.   odpowiedni katalog, zgodnie z Linux File system Standard.
  228.  
  229.   Plik o nazwie /var/named/root.hints jest zdefiniowany w named.conf.
  230.   Powinien on zawieraµ nastΩpuj▒ce rekordy:
  231.  
  232.  
  233.   ______________________________________________________________________
  234.   .                     6D IN NS        G.ROOT-SERVERS.NET.
  235.   .                     6D IN NS        J.ROOT-SERVERS.NET.
  236.   .                     6D IN NS        K.ROOT-SERVERS.NET.
  237.   .                     6D IN NS        L.ROOT-SERVERS.NET.
  238.   .                     6D IN NS        M.ROOT-SERVERS.NET.
  239.   .                     6D IN NS        A.ROOT-SERVERS.NET.
  240.   .                     6D IN NS        H.ROOT-SERVERS.NET.
  241.   .                     6D IN NS        B.ROOT-SERVERS.NET.
  242.   .                     6D IN NS        C.ROOT-SERVERS.NET.
  243.   .                     6D IN NS        D.ROOT-SERVERS.NET.
  244.   .                     6D IN NS        E.ROOT-SERVERS.NET.
  245.   .                     6D IN NS        I.ROOT-SERVERS.NET.
  246.   .                     6D IN NS        F.ROOT-SERVERS.NET.
  247.  
  248.   G.ROOT-SERVERS.NET.     5w6d16h IN A    192.112.36.4
  249.   J.ROOT-SERVERS.NET.     5w6d16h IN A    198.41.0.10
  250.   K.ROOT-SERVERS.NET.     5w6d16h IN A    193.0.14.129
  251.   L.ROOT-SERVERS.NET.     5w6d16h IN A    198.32.64.12
  252.   M.ROOT-SERVERS.NET.     5w6d16h IN A    202.12.27.33
  253.   A.ROOT-SERVERS.NET.     5w6d16h IN A    198.41.0.4
  254.   H.ROOT-SERVERS.NET.     5w6d16h IN A    128.63.2.53
  255.   B.ROOT-SERVERS.NET.     5w6d16h IN A    128.9.0.107
  256.   C.ROOT-SERVERS.NET.     5w6d16h IN A    192.33.4.12
  257.   D.ROOT-SERVERS.NET.     5w6d16h IN A    128.8.10.90
  258.   E.ROOT-SERVERS.NET.     5w6d16h IN A    192.203.230.10
  259.   I.ROOT-SERVERS.NET.     5w6d16h IN A    192.36.148.17
  260.   F.ROOT-SERVERS.NET.     5w6d16h IN A    192.5.5.241
  261.   ______________________________________________________________________
  262.  
  263.  
  264.  
  265.   BARDZO WA»NE: W niekt≤rych wersjach tego dokumentu zawarto╢µ
  266.   powy┐szego pliku bΩdzie posiadaµ kilka spacji albo tab przed pierwszym
  267.   wype│nionym (non blank) znakiem. Nie powinny siΩ one znale╝µ w pliku.
  268.   Skasuj ka┐d▒ poprzedzaj▒c▒ spacjΩ w plikach, kt≤re wycinasz i wklejasz
  269.   z tego HOWTO.
  270.  
  271.   PamiΩtaj, co powiedzia│em o poprzedzaj▒cych spacjach!
  272.  
  273.   Plik opisuje g│≤wne serwery (root servers) na ╢wiecie. Dane zmieniaj▒
  274.   siΩ z biegiem czasu i musz▒ byµ nadzorowane. Przeczytaj ``sekcjΩ o
  275.   nadzorze'', ┐eby uzyskaµ informacje o uaktualnianiu serwera.
  276.  
  277.   NastΩpna linia w named.conf to linia primary. Wyja╢niΩ jej funkcjΩ w
  278.   nastΩpnym rozdziale, a teraz tylko utw≤rz plik 127.0.0 w podkatalogu
  279.   pz:
  280.  
  281.  
  282.   ______________________________________________________________________
  283.   @               IN      SOA     linux.bogus. hostmaster.linux.bogus. (
  284.                                   1       ; Numer seryjny
  285.                                   8H      ; Od╢wie┐enie
  286.                                   2H      ; Powt≤rzenie
  287.                                   1W      ; Przedawnienie
  288.                                   1D)     ; Minimalny TTL
  289.                           NS      ns.linux.bogus.
  290.   1                       PTR     localhost.
  291.   ______________________________________________________________________
  292.  
  293.  
  294.  
  295.   NastΩpnie, potrzebujesz pliku /etc/resolv.conf, wygl▒daj▒cego
  296.   nastΩpuj▒co:
  297.  
  298.  
  299.   ______________________________________________________________________
  300.   search poddomena.twoja-domena.edu twoja-domena.edu
  301.   nameserver 127.0.0.1
  302.   ______________________________________________________________________
  303.  
  304.  
  305.  
  306.  
  307.   Linia ,,search'' ustala, kt≤re domeny powinny byµ przeszukane dla
  308.   jakichkolwiek nazw wΩz│≤w, z jakimi chcesz siΩ po│▒czyµ. Linia
  309.   nameserver definiuje adres twojego serwera nazw, w tym przypadku twoj▒
  310.   w│asn▒ maszynΩ, poniewa┐ tu pracuje named (127.0.0.1 wystarczy, nie ma
  311.   znaczenia, czy tw≤j komputer ma inny adres). Je╢li chcesz wyznaczyµ
  312.   kilka serwer≤w nazw, wstaw oddzieln▒ liniΩ ,,nameserver'' dla ka┐dego.
  313.   (Zauwa┐: Named nigdy nie czyta tego pliku, robi to resolver, kt≤ry
  314.   u┐ywa named.)
  315.  
  316.   »eby zilustrowaµ, co ten plik robi: Je╢li klient pr≤buje znale╝µ foo,
  317.   wtedy jako pierwsze pr≤bowane jest foo.poddomena.twoja-domena.edu,
  318.   potem foo.twoja-domena.edu, a w ko±cu foo. Je┐eli klient pr≤buje
  319.   szukaµ sunsite.unc.edu, najpierw pr≤bowane jest
  320.   sunsite.unc.edu.poddomena.twoja-domena.edu (tak, to jest g│upie, ale w
  321.   ten spos≤b dzia│a), potem sunsite.unc.edu.twoja-domena.edu, a w ko±cu
  322.   sunsite.unc.edu.  Nie wpisuj za wielu domen w linii search, poniewa┐
  323.   zabiera to trochΩ czasu, ┐eby je wszystkie przeszukaµ.
  324.  
  325.   Przyk│ad przyjmuje, ┐e nale┐ysz do domeny poddomena.twoja-domena.edu,
  326.   tw≤j komputer jest wtedy prawdopodownie nazwany tw≤j-
  327.   komputer.poddomena.twoja-domena.edu. Linia search nie powinna zawieraµ
  328.   twojej TLD (Top Level Domain, Domena Najwy┐szego Poziomu, w tym
  329.   przypadku edu). Je┐eli czΩsto │▒czysz siΩ z wΩz│ami w innej domenie,
  330.   mo┐esz dodaµ t▒ domenΩ do linii search w ten spos≤b:
  331.   ______________________________________________________________________
  332.   search poddomena.twoja-domena.edu twoja-domena.edu inna-domena.com
  333.   ______________________________________________________________________
  334.  
  335.  
  336.  
  337.   i tak dalej. Oczywi╢cie musisz wpisaµ prawdziwe nazwy domen zamiast
  338.   podanych.  Zauwa┐ brak kropek na ko±cach nazw domen.
  339.  
  340.   NastΩpnie, zale┐nie od twojej wersji libc, musisz poprawiaµ albo
  341.   /etc/nsswitch.conf, albo /etc/host.conf. Je┐eli ju┐ masz
  342.   nsswitch.conf, bΩdziemy poprawiaµ w│a╢nie ten plik, a je╢li nie,
  343.   host.conf. (NAPRAWD╩ zalecam poprawianie host.conf we wszystkich
  344.   systemach, w kt≤rych istnieje, np. u mnie jest i jeden i drugi -
  345.   przyp. t│um.)
  346.  
  347.   /etc/nsswitch.conf
  348.  
  349.   Jest to d│ugi plik, kt≤ry ustala, sk▒d wzi▒µ r≤┐ne rodzaje typ≤w
  350.   danych, z jakiego pliku lub bazy. Zazwyczaj zawiera on na g≤rze
  351.   pomocne komentarze, kt≤re powiniene╢ teraz przeczytaµ. Potem znajd╝
  352.   liniΩ zaczynaj▒c▒ siΩ na ,,hosts:'' - powinna zawieraµ:
  353.  
  354.  
  355.   ______________________________________________________________________
  356.   hosts:      files dns
  357.   ______________________________________________________________________
  358.  
  359.  
  360.  
  361.   Je┐eli nie ma linii zaczynaj▒cej siΩ na ,,hosts:'', wpisz powy┐sz▒.
  362.   M≤wi, ┐e programy powinny najpierw spojrzeµ do pliku /etc/hosts, potem
  363.   sprawdziµ DNS zgodnie z resolv.conf.
  364.  
  365.   /etc/host.conf
  366.  
  367.   Prawdopodobnie zawiera kilka linii, jedna powinna zaczynaµ siΩ na
  368.   order i wygl▒daµ nastΩpuj▒co:
  369.  
  370.  
  371.   ______________________________________________________________________
  372.   order hosts,bind
  373.   ______________________________________________________________________
  374.  
  375.  
  376.  
  377.   Je┐eli nie ma linii ,,order'' powiniene╢ j▒ dopisaµ. M≤wi ona
  378.   procedurom szukaj▒cym nazw, ┐eby najpierw zajrzeµ do /etc/hosts, a
  379.   potem spytaµ serwer nazw (kt≤ry ustali│e╢ w pliku resolv.conf jako
  380.   127.0.0.1).
  381.  
  382.   Te dwa pliki s▒ om≤wione w podrΩczniku man resolv(8) (wykonaj
  383.   polecenie ,,man 8 resolv'') w wiΩkszo╢ci dystrybucji Linuxa.  Ta
  384.   strona man jest wed│ug mnie ca│kiem mo┐liwa do zrozumienia, a ka┐dy,
  385.   zw│aszcza administratorzy DNS, powinni j▒ przeczytaµ. Zr≤b to teraz -
  386.   je┐eli powiesz sobie ,,p≤╝niej'', nigdy nie bΩdziesz mia│ okazji ich
  387.   przeczytaµ.
  388.  
  389.  
  390.  
  391.  
  392.   3.1.  Uruchamianie named
  393.  
  394.  
  395.   Po tym wszystkim nadszed│ czas, aby uruchomiµ named. Je┐eli u┐ywasz
  396.   po│▒czenia modemowego, po│▒cz siΩ najpierw. Wpisz ,,ndc start'', bez
  397.   opcji, i naci╢nij enter. Je┐eli to nie dzia│a, spr≤buj ,,/usr/sbin/ndc
  398.   start''.  Je╢li to te┐ nie dzia│a, zobacz sekcjΩ ``FAQ''.  Teraz
  399.   mo┐esz przetestowaµ swoj▒ konfiguracjΩ. Je┐eli obejrzysz plik z
  400.   komunikatami sysloga (zazwyczaj /var/adm/messages, inny katalog w
  401.   kt≤rym mo┐na ich szukaµ to /var/log, inn▒ nazw▒ pliku jest syslog)
  402.   kiedy uruchamiasz named (wykonaj tail -f /var/log/messages),
  403.   powiniene╢ ujrzeµ co╢ takiego:
  404.  
  405.   (linie ko±cz▒ce siΩ na \ s▒ kontynuowane w nastΩpnej linii)
  406.  
  407.  
  408.  
  409.  
  410.        Feb 15 01:26:17 roke named[6091]: starting.  named 8.1.1 Sat Feb 14 \
  411.          00:18:20 MET 1998 ^Ijanl@roke.uio.no:/var/tmp/bind-8.1.1/src/bin/named
  412.        Feb 15 01:26:17 roke named[6091]: cache zone "" (IN) loaded (serial 0)
  413.        Feb 15 01:26:17 roke named[6091]: master zone "0.0.127.in-addr.arpa" \
  414.          (IN) loaded (serial 1)
  415.        Feb 15 01:26:17 roke named[6091]: listening [127.0.0.1].53 (lo)
  416.        Feb 15 01:26:17 roke named[6091]: listening [129.240.230.92].53 (ippp0)
  417.        Feb 15 01:26:17 roke named[6091]: Forwarding source address is [0.0.0.0].1040
  418.        Feb 15 01:26:17 roke named[6092]: Ready to answer queries.
  419.  
  420.  
  421.  
  422.  
  423.   Je┐eli pojawi▒ siΩ jakie╢ komunikaty o b│Ωdach, pope│ni│e╢ jaki╢.
  424.   Named powie, w kt≤rym pliku jest b│▒d (mam nadziejΩ, ┐e jest to
  425.   named.conf albo root.hints :-)).  Zabij named i sprawd╝ plik. (jest
  426.   te┐ bardziej ,,humanitarny'' :-) od zabijania spos≤b - napisz ,,ndc
  427.   stop'', odczekaj d│u┐sz▒ chwilΩ i nameserver zostanie wy│▒czony -
  428.   przyp. t│um.)
  429.  
  430.   Teraz uruchom nslookup, ┐eby sprawdziµ twoje rob≤tki rΩczne.
  431.  
  432.  
  433.  
  434.        $ nslookup
  435.        Default Server:  localhost
  436.        Address:  127.0.0.1
  437.  
  438.        >
  439.  
  440.  
  441.  
  442.  
  443.   Je┐eli otrzyma│e╢ takie co╢, to znaczy, ┐e dzia│a. Miejmy nadziejΩ.
  444.   Je╢li co innego, sprawd╝ wszystko od pocz▒tku. Za ka┐dym razem, kiedy
  445.   zmienisz plik named.conf musisz ponownie uruchomiµ named komend▒ ndc
  446.   restart.
  447.  
  448.   Teraz mo┐esz wprowadziµ zapytanie. Spr≤buj poszukaµ jakiego╢ komputera
  449.   blisko ciebie. pat.uio.no jest blisko mnie, na Uniwersytecie w Oslo:
  450.  
  451.  
  452.  
  453.        > pat.uio.no
  454.        Server:  localhost
  455.        Address:  127.0.0.1
  456.  
  457.        Name:    pat.uio.no
  458.        Address:  129.240.130.16
  459.  
  460.  
  461.  
  462.  
  463.   Nslookup poprosi│ twojego named'a o poszukanie maszyny pat.uio.no.
  464.   Po│▒czy│ siΩ wtedy z jednym z serwer≤w nazw w twoim pliku root.hints i
  465.   zapyta│ stamt▒d o drogΩ.  Mo┐e to zaj▒µ troszeczkΩ czasu, zanim
  466.   otrzymasz wynik, poniewa┐ szuka we wszystkich domenach, kt≤re
  467.   wymieni│e╢ w /etc/resolv.conf.
  468.  
  469.   Je┐eli zapytasz znowu o to samo, otrzymasz co╢ takiego:
  470.  
  471.  
  472.  
  473.        > pat.uio.no
  474.        Server:  localhost
  475.        Address:  127.0.0.1
  476.  
  477.        Non-authoritative answer:
  478.        Name:    pat.uio.no
  479.        Address:  129.240.2.50
  480.  
  481.  
  482.  
  483.  
  484.   Zwr≤µ uwagΩ na liniΩ ,,Non-authoritative answer:'', kt≤ra pojawi│a siΩ
  485.   tym razem. Znaczy to, ┐e named nie szuka│ nazwy w sieci, tylko
  486.   popatrzy│ w swojej pamiΩci podrΩcznej i tam j▒ znalaz│. Ale informacja
  487.   z pamiΩci podrΩcznej mo┐e byµ przedawniona. Zostajesz wiΩc
  488.   poinformowany o tym (bardzo niewielkim) niebezpiecze±stwie, poprzez
  489.   komunikat ,,Non-authorative answer:''. Kiedy nslookup m≤wi to za
  490.   drugim razem, kiedy pytasz o komputer, jest to pewny znak, ┐e named
  491.   zapamiΩtuje informacje i dzia│a. Mo┐esz wyj╢µ z nslookup wydaj▒c
  492.   komendΩ exit.
  493.  
  494.   Teraz ju┐ wiesz, jak postawiµ przyspieszaj▒cy (caching) named. Wypij
  495.   piwo, mleko, lub cokolwiek innego, ┐eby to uczciµ.
  496.  
  497.  
  498.   4.  Prosta  domena
  499.  
  500.  
  501.   Jak skonfigurowaµ w│asn▒ domenΩ.
  502.  
  503.  
  504.  
  505.  
  506.   4.1.  Ale najpierw trochΩ czystej teorii
  507.  
  508.  
  509.   Zanim naprawdΩ zaczniemy ten rozdzia│, zamierzam podaµ ci trochΩ
  510.   teorii o dzia│aniu DNSu. A ty to przeczytasz, poniewa┐ jest to
  511.   przydatne.  Je╢li nie chcesz, powiniene╢ przynajmniej przej╢µ przez to
  512.   bardzo szybko. Przesta± przegl▒daµ, kiedy dojdziesz do opisu,
  513.   m≤wi▒cego co powiniene╢ wstawiµ do pliku named.conf.
  514.  
  515.   DNS to system hierarchiczny. Najwy┐sza pozycja to ,,.'', nazywa siΩ
  516.   ,,root''. Pod . istnieje kilka Domen Najwy┐szego Poziomu (Top Level
  517.   Doamins, TLD), najpopularniejsze to ORG, COM, EDU i NET, ale jest
  518.   jeszcze wiele innych.  (np. MIL, GOV, ART, NOM, PRIV - przyp. t│um.)
  519.  
  520.   Kiedy poszukiwany jest komputer, zapytanie jest przeprowadzane
  521.   rekursywnie, zgodnie z hierarchi▒, pocz▒wszy od g≤ry. Je┐eli chcesz
  522.   znale╝µ adres komputera prep.ai.mit.edu, tw≤j serwer nazw musi znale╝µ
  523.   serwer obs│uguj▒cy domenΩ edu. Pyta serwer . (zna ju┐ serwery . - po
  524.   to jest plik root.hints), serwer . zwraca listΩ serwer≤w edu:
  525.  
  526.  
  527.  
  528.  
  529.   $ nslookup
  530.   Default Server:  localhost
  531.   Address:  127.0.0.1
  532.  
  533.  
  534.  
  535.  
  536.   Zacznij pytaµ server root:
  537.  
  538.  
  539.  
  540.        > server c.root-servers.net.
  541.        Default Server:  c.root-servers.net
  542.        Address:  192.33.4.12
  543.  
  544.  
  545.  
  546.  
  547.   Ustaw typ zapytania na NS (rekordy serwer≤w nazw):
  548.  
  549.  
  550.  
  551.        %gt; set q=ns
  552.  
  553.  
  554.  
  555.  
  556.   Spytaj o edu:
  557.  
  558.  
  559.  
  560.        > edu.
  561.  
  562.  
  563.  
  564.  
  565.   Ko±cowa kropka jest wymagana, m≤wi serwerowi, ┐e edu jest pod . (to
  566.   zawΩ┐a obszar poszukiwa±).
  567.  
  568.  
  569.  
  570.        edu     nameserver = A.ROOT-SERVERS.NET
  571.        edu     nameserver = H.ROOT-SERVERS.NET
  572.        edu     nameserver = B.ROOT-SERVERS.NET
  573.        edu     nameserver = C.ROOT-SERVERS.NET
  574.        edu     nameserver = D.ROOT-SERVERS.NET
  575.        edu     nameserver = E.ROOT-SERVERS.NET
  576.        edu     nameserver = I.ROOT-SERVERS.NET
  577.        edu     nameserver = F.ROOT-SERVERS.NET
  578.        edu     nameserver = G.ROOT-SERVERS.NET
  579.        A.ROOT-SERVERS.NET      internet address = 198.41.0.4
  580.        H.ROOT-SERVERS.NET      internet address = 128.63.2.53
  581.        B.ROOT-SERVERS.NET      internet address = 128.9.0.107
  582.        C.ROOT-SERVERS.NET      internet address = 192.33.4.12
  583.        D.ROOT-SERVERS.NET      internet address = 128.8.10.90
  584.        E.ROOT-SERVERS.NET      internet address = 192.203.230.10
  585.        I.ROOT-SERVERS.NET      internet address = 192.36.148.17
  586.        F.ROOT-SERVERS.NET      internet address = 192.5.5.241
  587.        G.ROOT-SERVERS.NET      internet address = 192.112.36.4
  588.  
  589.  
  590.  
  591.  
  592.   Wynik m≤wi nam, ┐e *.root-servers.net podaje edu., mo┐emy wiΩc dalej
  593.   pytaµ c. Teraz chcemy wiedzieµ, kto obs│uguje nastΩpny poziom nazwy
  594.   domeny: mit.edu.:
  595.        > mit.edu.
  596.        Server:  c.root-servers.net
  597.        Address:  192.33.4.12
  598.  
  599.        Non-authoritative answer:
  600.        mit.edu nameserver = W20NS.mit.edu
  601.        mit.edu nameserver = BITSY.mit.edu
  602.        mit.edu nameserver = STRAWB.mit.edu
  603.  
  604.        Authoritative answers can be found from:
  605.        W20NS.mit.edu   internet address = 18.70.0.160
  606.        BITSY.mit.edu   internet address = 18.72.0.3
  607.        STRAWB.mit.edu  internet address = 18.71.0.151
  608.  
  609.  
  610.  
  611.  
  612.   STRAWB, W20NS i BITSY obs│uguj▒ mit, wybierz jeden i pytaj o
  613.   ai.mit.edu:
  614.  
  615.  
  616.  
  617.        > server W20NS.mit.edu.
  618.  
  619.  
  620.  
  621.  
  622.   Serwery nazw nie rozr≤┐niaj▒ wielko╢ci liter, ale u┐ywam myszki do
  623.   wycinania i wklejania, wiΩc kopiuje wynik prosto z ekranu.
  624.  
  625.  
  626.  
  627.  
  628.  
  629.  
  630.  
  631.  
  632.  
  633.  
  634.  
  635.  
  636.  
  637.  
  638.  
  639.  
  640.  
  641.  
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661.   Server:  W20NS.mit.edu
  662.   Address:  18.70.0.160
  663.  
  664.   > ai.mit.edu.
  665.   Server:  W20NS.mit.edu
  666.   Address:  18.70.0.160
  667.  
  668.   Non-authoritative answer:
  669.   ai.mit.edu      nameserver = ALPHA-BITS.AI.MIT.EDU
  670.   ai.mit.edu      nameserver = GRAPE-NUTS.AI.MIT.EDU
  671.   ai.mit.edu      nameserver = TRIX.AI.MIT.EDU
  672.   ai.mit.edu      nameserver = MUESLI.AI.MIT.EDU
  673.   ai.mit.edu      nameserver = LIFE.AI.MIT.EDU
  674.   ai.mit.edu      nameserver = BEET-CHEX.AI.MIT.EDU
  675.   ai.mit.edu      nameserver = MINI-WHEATS.AI.MIT.EDU
  676.   ai.mit.edu      nameserver = COUNT-CHOCULA.AI.MIT.EDU
  677.   ai.mit.edu      nameserver = MINTAKA.LCS.MIT.EDU
  678.  
  679.   Authoritative answers can be found from:
  680.   AI.MIT.EDU      nameserver = ALPHA-BITS.AI.MIT.EDU
  681.   AI.MIT.EDU      nameserver = GRAPE-NUTS.AI.MIT.EDU
  682.   AI.MIT.EDU      nameserver = TRIX.AI.MIT.EDU
  683.   AI.MIT.EDU      nameserver = MUESLI.AI.MIT.EDU
  684.   AI.MIT.EDU      nameserver = LIFE.AI.MIT.EDU
  685.   AI.MIT.EDU      nameserver = BEET-CHEX.AI.MIT.EDU
  686.   AI.MIT.EDU      nameserver = MINI-WHEATS.AI.MIT.EDU
  687.   AI.MIT.EDU      nameserver = COUNT-CHOCULA.AI.MIT.EDU
  688.   AI.MIT.EDU      nameserver = MINTAKA.LCS.MIT.EDU
  689.   ALPHA-BITS.AI.MIT.EDU   internet address = 128.52.32.5
  690.   GRAPE-NUTS.AI.MIT.EDU   internet address = 128.52.36.4
  691.   TRIX.AI.MIT.EDU internet address = 128.52.37.6
  692.   MUESLI.AI.MIT.EDU       internet address = 128.52.39.7
  693.   LIFE.AI.MIT.EDU internet address = 128.52.32.80
  694.   BEET-CHEX.AI.MIT.EDU    internet address = 128.52.32.22
  695.   MINI-WHEATS.AI.MIT.EDU  internet address = 128.52.54.11
  696.   COUNT-CHOCULA.AI.MIT.EDU        internet address = 128.52.38.22
  697.   MINTAKA.LCS.MIT.EDU     internet address = 18.26.0.36
  698.  
  699.  
  700.  
  701.  
  702.   A wiΩc muesli.ai mit.edu jest serwerem nazw dla ai.mit.edu:
  703.  
  704.  
  705.  
  706.        > server MUESLI.AI.MIT.EDU
  707.        Default Server:  MUESLI.AI.MIT.EDU
  708.        Address:  128.52.39.7
  709.  
  710.  
  711.  
  712.  
  713.   Teraz zmieniamy typ zapytania - znale╝li╢my serwer nazw, wiΩc teraz
  714.   zapytajmy go o wszystko, co wie o prep.ai.mit.edu.
  715.  
  716.  
  717.  
  718.  
  719.  
  720.  
  721.  
  722.  
  723.  
  724.  
  725.  
  726.  
  727.   > set q=any
  728.   > prep.ai.mit.edu.
  729.   Server:  MUESLI.AI.MIT.EDU
  730.   Address:  128.52.39.7
  731.  
  732.   prep.ai.mit.edu CPU = dec/decstation-5000.25    OS = unix
  733.   prep.ai.mit.edu
  734.           inet address = 18.159.0.42, protocol = tcp
  735.             ftp  telnet  smtp  finger
  736.   prep.ai.mit.edu preference = 1, mail exchanger = gnu-life.ai.mit.edu
  737.   prep.ai.mit.edu internet address = 18.159.0.42
  738.   ai.mit.edu      nameserver = beet-chex.ai.mit.edu
  739.   ai.mit.edu      nameserver = alpha-bits.ai.mit.edu
  740.   ai.mit.edu      nameserver = mini-wheats.ai.mit.edu
  741.   ai.mit.edu      nameserver = trix.ai.mit.edu
  742.   ai.mit.edu      nameserver = muesli.ai.mit.edu
  743.   ai.mit.edu      nameserver = count-chocula.ai.mit.edu
  744.   ai.mit.edu      nameserver = mintaka.lcs.mit.edu
  745.   ai.mit.edu      nameserver = life.ai.mit.edu
  746.   gnu-life.ai.mit.edu     internet address = 128.52.32.60
  747.   beet-chex.ai.mit.edu    internet address = 128.52.32.22
  748.   alpha-bits.ai.mit.edu   internet address = 128.52.32.5
  749.   mini-wheats.ai.mit.edu  internet address = 128.52.54.11
  750.   trix.ai.mit.edu internet address = 128.52.37.6
  751.   muesli.ai.mit.edu       internet address = 128.52.39.7
  752.   count-chocula.ai.mit.edu        internet address = 128.52.38.22
  753.   mintaka.lcs.mit.edu     internet address = 18.26.0.36
  754.   life.ai.mit.edu internet address = 128.52.32.80
  755.  
  756.  
  757.  
  758.  
  759.   Zaczynaj▒c od ., znale╝li╢my sukcesywne serwery nazw dla nastΩpnych
  760.   poziom≤w w nazwie domeny. Je┐eli u┐ywa│by╢ w│asnego serwera DNS
  761.   zamiast wszystkich innych, tw≤j named zapisa│by wszystkie informacje w
  762.   czasie poszukiwa±, nie musia│by╢ wiΩc znowu ich pytaµ przez jaki╢
  763.   czas.
  764.  
  765.   O wiele mniej m≤wi siΩ o, tak samo wa┐nej domenie in-addr.arpa.  Jest
  766.   ona te┐ podzielona jak normalne domeny.  in-addr.arpa pozwala
  767.   otrzymywaµ nazwy maszyn kiedy posiadamy ich adresy.  Wa┐ne: numery IP
  768.   w domenie in-addr.arpa s▒ pisane w odwrotnej kolejno╢ci. Je┐eli adres
  769.   maszyny to 192.128.52.43, named poszukuje tak, jak dla przyk│adu z
  770.   prep.ai.mit.edu: znale╝µ serwery arpa..  Znale╝µ seerwery in-
  771.   addr.arpa., znale╝µ serwery 192.in-addr.arpa., znale╝µ serwery
  772.   128.192.in-addr.arpa., znale╝µ serwery 52.128.192.in-addr.arpa..
  773.   Znale╝µ potrzebne rekordy dla 43.52.128.192.in-addr.arpa..  Sprytne,
  774.   no nie? (Powiedz ,,tak''.) Odwracanie numer≤w IP mo┐e sprawiaµ k│opoty
  775.   przez pierwsze dwa lata.
  776.  
  777.   W│a╢nie sk│ama│em. DNS nie dzia│a dok│adnie tak jak przedstawi│em.
  778.   Ale by│em wystarczaj▒co blisko.
  779.  
  780.  
  781.  
  782.  
  783.   4.2.  W│asna domena
  784.  
  785.  
  786.   Teraz zdefiniujemy nasz▒ w│asn▒ domenΩ. Nazwijmy j▒ linux.bogus
  787.   (,,bogus'', to po angielsku co╢ fa│szywego, bzdurnego - przyp. t│um.)
  788.   i zdefiniujemy w niej maszyny. U┐ywam ca│kowicie bzdurnej (bogus)
  789.   nazwy domeny, ┐eby upeniµ siΩ, ┐e nie przeszkadzamy nikomu Gdzie╢ Tam.
  790.  
  791.   Jeszcze jedna rzecz zanim zaczniemy: Nie wszystkie znaki mog▒ wchodziµ
  792.   w sk│ad nazw komputer≤w. Jeste╢my ograniczeni do znak≤w angielskiego
  793.   alfabetu, tzn.  a-z, numer≤w 0-9 i znaku ,,-'' (│▒cznika). Trzymajmy
  794.   siΩ tych znak≤w. Wielkie i ma│e litery nie s▒ rozr≤┐niane przez DNS, a
  795.   wiΩc pat.uio.no jest identyczne z Pat.UiO.No.
  796.  
  797.   Ju┐ zaczeli╢my czΩ╢µ z lini▒ 0.0.127 w pliku named.conf:
  798.  
  799.  
  800.   ______________________________________________________________________
  801.   zone "0.0.127.in-addr.arpa" {
  802.           type master;
  803.           file "pz/127.0.0";
  804.   };
  805.   ______________________________________________________________________
  806.  
  807.  
  808.  
  809.   Zauwa┐ brak kropki na ko±cu nazw domen w tym pliku - definiujemy
  810.   strefΩ 0.0.127.in-addr.arpa, ┐e jeste╢my g│≤wnym jej serwerem i jest
  811.   zapisana w pliku pz/127.0.0. Mamy ju┐ ten plik, zawiera on:
  812.  
  813.  
  814.   ______________________________________________________________________
  815.   @               IN      SOA     ns.linux.bogus. hostmaster.linux.bogus. (
  816.                                   1       ; Serial
  817.                                   8H      ; Refresh
  818.                                   2H      ; Retry
  819.                                   1W      ; Expire
  820.                                   1D)     ; Minimum TTL
  821.                           NS      ns.linux.bogus.
  822.   1                       PTR     localhost.
  823.   ______________________________________________________________________
  824.  
  825.  
  826.  
  827.   Zauwa┐ znak ,,.'' na ko±cu wszystkich pe│nych nazw domen w tym pliku,
  828.   kontrastuje to z plikiem named.conf powy┐ej. Niekt≤rzy ludzie lubi▒
  829.   rozpocz▒µ ka┐d▒ strefΩ z dyrektyw▒ $ORIGIN, ale to ju┐ ekstrawagancja.
  830.   Origin (pochodzenie - gdzie znajduje siΩ w hierarchii DNS), pliku
  831.   strefy jest zdefiniowany w linii strefy w pliku named.conf, w tym
  832.   przypadku 0.0.127.in-addr.arpa.
  833.  
  834.   Ten ,,plik strefy'' zawiera 3 ,,rekordy zasob≤w'' (resource records,
  835.   RR): RR SOA, RR NS i RR PTR. SOA to skr≤t od Start of Authority. Znak
  836.   ,,@'' jest specjaln▒ notacj▒ znacz▒c▒ pochodzenie (origin), a je┐eli
  837.   kolumna domeny dla tego pliku to ,,0.0.127.in-addr.arpa'', pierwsza
  838.   linia tak naprawdΩ znaczy
  839.  
  840.  
  841.  
  842.        0.0.127.in-addr.arpa.   IN      SOA ...
  843.  
  844.  
  845.  
  846.  
  847.   NS to RR Name Server - rekord serwera nazw. Nie jest potrzebne ,,@''
  848.   na ko±cu tej linii, poniewa┐ ostatnia linia zaczΩ│a sie na ,,@''.
  849.   OszczΩdza to trochΩ pisania. A wiΩc linia NS tak naprawdΩ znaczy
  850.  
  851.  
  852.  
  853.        0.0.127.in-addr.arpa.   IN      NS      ns.linux.bogus
  854.  
  855.  
  856.  
  857.  
  858.  
  859.   M≤wi DNS'owi, kt≤ra maszyna jest serwerem nazw domeny 0.0.127.in-
  860.   addr.arpa - jest to ns.linux.bogus. ,,ns'' to zazwyczaj stosowana
  861.   nazwa serwera nazw, ale skoro serwery www s▒ nazywane www.co╢tam,
  862.   nazw▒ mo┐e byµ cokolwiek.
  863.  
  864.   I w ko±cu rekord PTR. M≤wi, ┐e komputer o adresie 1 w podsieci
  865.   0.0.127.in-addr.arpa, np. 127.0.0.1, nazywa siΩ localhost.
  866.  
  867.   Rekord SOA jest pocz▒tkiem wszystkich plik≤w stref. W ka┐dym pliku
  868.   musi byµ dok│adnie jeden, jako pierwszy rekord. Opisuje strefΩ, z
  869.   kt≤rej pochodzi (z maszyny nazwanej ns.linux.bogus), osobΩ, kt≤ra jest
  870.   za ni▒ odpowiedzialna (hostmaster@linux.bogus), wersjΩ pliku strefy
  871.   (numer seryjny: 1) i inne rzeczy maj▒ce zwi▒zek z zapamiΩtywaniem
  872.   (caching) i drugorzΩdnymi (secondary) serwerami DNS. Dla reszty p≤l:
  873.   od╢wie┐enia, powt≤rzenia, przedawnienia i minimalnego TTL u┐ycie
  874.   warto╢ci podanych w tym HOWTO powinno byµ bezpieczne.  Teraz uruchom
  875.   ponownie named'a (komend▒ ndc restart) i u┐yj nslookup, ┐eby
  876.   sprawdziµ, co zrobi│e╢:
  877.  
  878.  
  879.  
  880.        $ nslookup
  881.  
  882.        Default Server:  localhost
  883.        Address:  127.0.0.1
  884.  
  885.        > 127.0.0.1
  886.        Server:  localhost
  887.        Address:  127.0.0.1
  888.  
  889.        Name:    localhost
  890.        Address:  127.0.0.1
  891.  
  892.  
  893.  
  894.  
  895.   a wiΩc udaje mu siΩ otrzymaµ localhost ze 127.0.0.1, to dobrze.  Teraz
  896.   nasze g│≤wne zadanie, domena linux.bogus. Wstaw now▒ sekcjΩ ,,zone'' w
  897.   pliku named.conf:
  898.  
  899.  
  900.   ______________________________________________________________________
  901.   zone "linux.bogus" {
  902.           notify no;
  903.           type master;
  904.           file "pz/linux.bogus";
  905.   };
  906.   ______________________________________________________________________
  907.  
  908.  
  909.  
  910.   Zauwa┐ dalszy brak ko±cz▒cej kropki w nazwie domeny w pliku
  911.   named.conf.
  912.  
  913.   W pliku strefy linux.bogus umie╢cimy pewne ca│kowicie bzdurne (bogus)
  914.   dane:
  915.  
  916.  
  917.  
  918.  
  919.  
  920.  
  921.  
  922.  
  923.  
  924.  
  925.   ______________________________________________________________________
  926.   ;
  927.   ; Plik strefy dla linux.bogus
  928.   ;
  929.   ; Pe│ny plik strefy
  930.   ;
  931.   @       IN      SOA     ns.linux.bogus. hostmaster.linux.bogus. (
  932.                           199802151       ; numer seryjny, dzisiejsza data i numer zmiany
  933.                           8H              ; od╢wie┐anie, w sekundach
  934.                           2H              ; powt≤rzenie, w sekundach
  935.                           1W              ; przedawnienie, w sekundach
  936.                           1D )            ; minimum, w sekundach
  937.   ;
  938.                   NS      ns              ; Adres Internetowy serwera nazw
  939.                   MX      10 mail.linux.bogus     ; Podstawowy serwer poczty
  940.                   MX      20 mail.friend.bogus.   ; DrugorzΩdny serwer poczty
  941.   ;
  942.   localhost       A       127.0.0.1
  943.   ns              A       192.168.196.2
  944.   mail            A       192.168.196.4
  945.   ______________________________________________________________________
  946.  
  947.  
  948.  
  949.   Nale┐y zwr≤ciµ uwagΩ na dwie rzeczy w rekordzie SOA. ns.linux.bogus
  950.   musi byµ prawdziw▒ maszyna z rekordem A. Nie jest dozwolone wpisaanie
  951.   rekordu CNAME dla maszyny w rekordzie SOA. Jej nazw▒ nie musi byµ
  952.   ,,ns'', mo┐e byµ jak▒kolwiek dozwolon▒ nazw▒ komputera. Po drugie,
  953.   hostmaster.linux.bogus powinien byµ odczytany jako
  954.   hostmaster@linux.bogus, a powinien byµ to alias pocztowy lub oddzielna
  955.   skrzynka, gdzie osoba(y) nadzoruj▒ce DNS powinny czΩsto czytaµ pocztΩ.
  956.   Jakikolwiek list w sprawie domeny bΩdzie wys│any na adres podany w tej
  957.   linii. Nazw▒ nie musi byµ ,,hostmaster'', mo┐e to byµ jakikolwiek
  958.   dozwolony adres e-mail, ale adres ,,hostmaster'' bΩdzie r≤wnie┐
  959.   dzia│a│.
  960.  
  961.   Jest jeden nowy typ RR w tym pliku, MX czyli Mail eXchanger.  M≤wi
  962.   systemom pocztowym gdzie wysy│aµ pocztΩ zaadresowan▒ do
  963.   kto╢tam@linux.bogus, odpowiednio do mail.linux.bogus lub
  964.   mail.friend.bogus. Liczba przed ka┐d▒ nazw▒ maszyny oznacza priorytet
  965.   MX'≤w. RR z najmniejsz▒ liczb▒ (10) jest tym, do kt≤rego poczta
  966.   powinna byµ wysy│ana najpierw. Je┐eli to siΩ nie uda, mo┐e byµ wys│ana
  967.   do serwera z wy┐sz▒ liczb▒, drugorzΩdnego serwera poczty, np.
  968.   mail.friend.bogus, kt≤ry ma tu priorytet 20.
  969.  
  970.   Uruchom ponownie named, u┐ywaj▒c komendy ndc restart. Sprawd╝ wynik z
  971.   nslookup:
  972.  
  973.  
  974.  
  975.  
  976.  
  977.  
  978.  
  979.  
  980.  
  981.  
  982.  
  983.  
  984.  
  985.  
  986.  
  987.  
  988.  
  989.  
  990.  
  991.   $ nslookup
  992.   > set q=any
  993.   > linux.bogus
  994.   Server:  localhost
  995.   Address:  127.0.0.1
  996.  
  997.   linux.bogus
  998.           origin = ns.linux.bogus
  999.           mail addr = hostmaster.linux.bogus
  1000.           serial = 199802151
  1001.           refresh = 28800 (8 hours)
  1002.           retry   = 7200 (2 hours)
  1003.           expire  = 604800 (7 days)
  1004.           minimum ttl = 86400 (1 day)
  1005.   linux.bogus     nameserver = ns.linux.bogus
  1006.   linux.bogus     preference = 10, mail exchanger = mail.linux.bogus.linux.bogus
  1007.   linux.bogus     preference = 20, mail exchanger = mail.friend.bogus
  1008.   linux.bogus     nameserver = ns.linux.bogus
  1009.   ns.linux.bogus  internet address = 192.168.196.2
  1010.   mail.linux.bogus        internet address = 192.168.196.4
  1011.  
  1012.  
  1013.  
  1014.  
  1015.   Przy dok│adnym sprawdzaniu, odkryjesz b│▒d. Linia
  1016.  
  1017.  
  1018.  
  1019.        linux.bogus     preference = 10, mail exchanger = mail.linux.bogus.linux.bogus
  1020.  
  1021.  
  1022.  
  1023.  
  1024.   jest niepoprawna. Powinno byµ
  1025.  
  1026.  
  1027.  
  1028.        linux.bogus     preference = 10, mail exchanger = mail.linux.bogus
  1029.  
  1030.  
  1031.  
  1032.  
  1033.   Specjalnie pope│ni│em b│▒d, ┐eby╢ m≤g│ siΩ z niego uczyµ :-) Patrz▒c
  1034.   na plik strefy zobaczymy, ┐e w linii
  1035.  
  1036.  
  1037.  
  1038.                        MX      10 mail.linux.bogus     ; Podstawowy serwer poczty
  1039.  
  1040.  
  1041.  
  1042.  
  1043.   brakuje kropki. Mo┐na te┐ powiedzieµ, ┐e ma o jeden cz│on
  1044.   ,,linux.bogus'' za du┐o. Je┐eli nazwa komputera nie ko±czy siΩ kropk▒
  1045.   w pliku strefy, pochodzenie (origin) zostaje dodane do niej, powoduj▒c
  1046.   podw≤jny linux.bogus.linux.bogus. WiΩc piszemy albo
  1047.  
  1048.  
  1049.   ______________________________________________________________________
  1050.                   MX      10 mail.linux.bogus.    ; Podstawowy serwer poczty
  1051.   ______________________________________________________________________
  1052.  
  1053.  
  1054.  
  1055.   albo
  1056.  
  1057.   ______________________________________________________________________
  1058.                   MX      10 mail                 ; Podstawowy serwer poczty
  1059.   ______________________________________________________________________
  1060.  
  1061.  
  1062.  
  1063.   Oba s▒ poprawne. WolΩ ostatni▒ formΩ, mniej pisania. S▒ znani
  1064.   u┐ytkownicy bind'a kt≤rzy nie zgadzaj▒ siΩ z tym, s▒ te┐ tacy, kt≤rzy
  1065.   zgadzaj▒ siΩ z t▒ regu│▒. W pliku strefy domena powinna b▒d╝ to byµ
  1066.   ca│kowita i zako±czona kropk▒, b▒d╝ to nie powinna byµ wog≤le
  1067.   za│▒czona, w tym przypadku zawiera domy╢lne pochodzenie (origin).
  1068.  
  1069.   MuszΩ zaznaczyµ, ┐e w pliku named.conf nie powinno byµ kropek po
  1070.   nazwach domen. Nie masz pojΩcia, jak czΩsto ludzie g│upieli i klΩli na
  1071.   czym ╢wiat stoi z powodu znaku ,,.''.
  1072.  
  1073.   A wiΩc po wyja╢nieniu mojej uwagi, mamy nowy plik strefy, zawieraj▒cy
  1074.   trochΩ dodatkowych informacji:
  1075.  
  1076.  
  1077.  
  1078.  
  1079.  
  1080.  
  1081.  
  1082.  
  1083.  
  1084.  
  1085.  
  1086.  
  1087.  
  1088.  
  1089.  
  1090.  
  1091.  
  1092.  
  1093.  
  1094.  
  1095.  
  1096.  
  1097.  
  1098.  
  1099.  
  1100.  
  1101.  
  1102.  
  1103.  
  1104.  
  1105.  
  1106.  
  1107.  
  1108.  
  1109.  
  1110.  
  1111.  
  1112.  
  1113.  
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119.  
  1120.  
  1121.  
  1122.  
  1123.   ______________________________________________________________________
  1124.   ;
  1125.   ; Plik strefy dla linux.bogus
  1126.   ;
  1127.   ; Pe│ny plik strefy
  1128.   ;
  1129.   @       IN      SOA     ns.linux.bogus. hostmaster.linux.bogus. (
  1130.                           199802151       ; numer seryjny, dzisiejsza data + numer zmiany
  1131.                           8H              ; od╢wie┐anie, w sekundach
  1132.                           2H              ; powt≤rzenie, w sekundach
  1133.                           1W              ; przedawnienie, w sekundach
  1134.                           1D )            ; minimum, w sekundach
  1135.   ;
  1136.                   TXT     "Linux.Bogus, twoi konsultanci DNS"
  1137.                   NS      ns              ; Adresy Internetowe serwer≤w nazw
  1138.                   NS      ns.friend.bogus.
  1139.                   MX      10 mail         ; Podstawowy MX
  1140.                   MX      20 mail.friend.bogus. ;  DrugorzΩdny MX
  1141.  
  1142.   localhost       A       127.0.0.1
  1143.  
  1144.   gw              A       192.168.196.1
  1145.                   HINFO   "Cisco" "IOS"
  1146.                   TXT     "Router"
  1147.  
  1148.   ns              A       192.168.196.2
  1149.                   MX      10 mail
  1150.                   MX      20 mail.friend.bogus.
  1151.                   HINFO   "Pentium" "Linux 2.0"
  1152.   www             CNAME   ns
  1153.  
  1154.   donald          A       192.168.196.3
  1155.                   MX      10 mail
  1156.                   MX      20 mail.friend.bogus.
  1157.                   HINFO   "i486"      "Linux 2.0"
  1158.                   TXT     "DEK"
  1159.  
  1160.   mail            A       192.168.196.4
  1161.                   MX      10 mail
  1162.                   MX      20 mail.friend.bogus.
  1163.                   HINFO   "386sx" "Linux 1.2"
  1164.  
  1165.   ftp             A       192.168.196.5
  1166.                   MX      10 mail
  1167.                   MX      20 mail.friend.bogus.
  1168.                   HINFO   "P6" "Linux 2.1.86"
  1169.   ______________________________________________________________________
  1170.  
  1171.  
  1172.  
  1173.   Jest tu kilka nowych RR'≤w: HINFO (Host INFOrmation) ma dwie czΩ╢ci,
  1174.   dobrym zwyczajem jest branie ka┐dej w cudzys│owy. Pierwsza czΩ╢µ
  1175.   okre╢la nazwΩ sprzΩtow▒ lub procesor komputera, a druga oprogramowanie
  1176.   lub system operacyjny. Maszyna nazwana ,,ns'' ma procesor Pentium i
  1177.   Linuxa 2.0.  CNAME (Canonical NAME) jest sposobem nadawania ka┐dej
  1178.   maszynie kilku nazw.  Www jest wiΩc aliasem ns.
  1179.  
  1180.   U┐ywanie rekord≤w CNAME jest trochΩ kontrowesyjne. Ale bezpiecznie
  1181.   jest przestrzegaµ zasady, ┐e rekordy MX, CNAME lub SOA nigdy nie
  1182.   powinny odnosiµ siΩ do rekordu CNAME, powinny odnosiµ siΩ do czego╢ z
  1183.   rekordem A, wiΩc ╝le jest
  1184.  
  1185.  
  1186.  
  1187.  
  1188.  
  1189.   ______________________________________________________________________
  1190.   foobar          CNAME   www                     ; NIE!
  1191.   ______________________________________________________________________
  1192.  
  1193.  
  1194.  
  1195.   ale poprawnie
  1196.  
  1197.  
  1198.   ______________________________________________________________________
  1199.   foobar          CNAME   ns                      ; Tak!
  1200.   ______________________________________________________________________
  1201.  
  1202.  
  1203.  
  1204.   Jest te┐ bezpiecznie przyj▒µ, ┐e CNAME nie jest dozwolon▒ nazw▒
  1205.   komputera dla adresu e-mail: webmaster@www.linux.bogus jest
  1206.   niedozwolonym adresem, je┐eli przyj▒µ powy┐sze ustawienia. Mo┐esz siΩ
  1207.   spodziewaµ, ┐e wielu admin≤w Gdzie╢ Tam bΩdzie wymaga│o tej zasady,
  1208.   nawet je╢li to dzia│a u ciebie. Sposobem unikniΩcia tego jest u┐ywanie
  1209.   rekord≤w A (i mo┐e innych, takich jak MX) zamiast CNAME:
  1210.  
  1211.  
  1212.   ______________________________________________________________________
  1213.   www             A       192.168.196.2
  1214.   ______________________________________________________________________
  1215.  
  1216.  
  1217.  
  1218.   Kilku ,,czarodziej≤w'' bind'a radzi, aby nie u┐ywaµ CNAME.  Zastan≤w
  1219.   siΩ wiΩc nad tym bardzo powa┐nie.
  1220.  
  1221.   Ale jak widzisz, to HOWTO i wiele serwer≤w nie przestrzega tej zasady.
  1222.  
  1223.   Za│aduj now▒ bazΩ danych komend▒ ndc reload, sprawi to, ┐e named
  1224.   przeczyta ponownie swoje pliki.
  1225.  
  1226.  
  1227.  
  1228.        $ nslookup
  1229.        Default Server:  localhost
  1230.        Address:  127.0.0.1
  1231.  
  1232.        > ls -d linux.bogus
  1233.  
  1234.  
  1235.  
  1236.  
  1237.   Znaczy to, ┐e wszystkie rekordy powinny byµ wymienione. Wy╢wietli:
  1238.  
  1239.  
  1240.  
  1241.  
  1242.  
  1243.  
  1244.  
  1245.  
  1246.  
  1247.  
  1248.  
  1249.  
  1250.  
  1251.  
  1252.  
  1253.  
  1254.  
  1255.   [localhost]
  1256.   $ORIGIN linux.bogus.
  1257.   @                       1D IN SOA       ns hostmaster (
  1258.                                           199802151       ; numer seryjny
  1259.                                           8H              ; od╢wie┐anie
  1260.                                           2H              ; powt≤rzenie
  1261.                                           1W              ; przedawnienie
  1262.                                           1D )            ; minimum
  1263.  
  1264.                           1D IN NS        ns
  1265.                           1D IN NS        ns.friend.bogus.
  1266.                           1D IN TXT       "Linux.Bogus, twoi konsultanci DNS"
  1267.                           1D IN MX        10 mail
  1268.                           1D IN MX        20 mail.friend.bogus.
  1269.   gw                      1D IN A         192.168.196.1
  1270.                           1D IN HINFO     "Cisco" "IOS"
  1271.                           1D IN TXT       "Router"
  1272.   mail                    1D IN A         192.168.196.4
  1273.                           1D IN MX        10 mail
  1274.                           1D IN MX        20 mail.friend.bogus.
  1275.                           1D IN HINFO     "386sx" "Linux 1.0.9"
  1276.   localhost               1D IN A         127.0.0.1
  1277.   www                     1D IN CNAME     ns
  1278.   donald                  1D IN A         192.168.196.3
  1279.                           1D IN MX        10 mail
  1280.                           1D IN MX        20 mail.friend.bogus.
  1281.                           1D IN HINFO     "i486" "Linux 1.2"
  1282.                           1D IN TXT       "DEK"
  1283.   ftp                     1D IN A         192.168.196.5
  1284.                           1D IN MX        10 mail
  1285.                           1D IN MX        20 mail.friend.bogus.
  1286.                           1D IN HINFO     "P6" "Linux 1.3.59"
  1287.   ns                      1D IN A         192.168.196.2
  1288.                           1D IN MX        10 mail
  1289.                           1D IN MX        20 mail.friend.bogus.
  1290.                           1D IN HINFO     "Pentium" "Linux 1.2"
  1291.   @                       1D IN SOA       ns hostmaster (
  1292.                                           199802151       ; numer seryjny
  1293.                                           8H              ; od╢wie┐anie
  1294.                                           2H              ; powt≤rzenie
  1295.                                           1W              ; przedawnienie
  1296.                                           1D )            ; minimum
  1297.  
  1298.  
  1299.  
  1300.  
  1301.   To jest w porz▒dku. Jak widzisz, wygl▒da prawie jak plik strefy.
  1302.   Sprawd╝my co powie o samym www:
  1303.  
  1304.  
  1305.  
  1306.        > set q=any
  1307.        > www.linux.bogus.
  1308.        Server:  localhost
  1309.        Address:  127.0.0.1
  1310.  
  1311.        www.linux.bogus canonical name = ns.linux.bogus
  1312.        linux.bogus     nameserver = ns.linux.bogus
  1313.        linux.bogus     nameserver = ns.friend.bogus
  1314.        ns.linux.bogus  internet address = 192.168.196.2
  1315.  
  1316.  
  1317.  
  1318.  
  1319.   Inaczej m≤wi▒c, prawdziwa nazwa www.linux.bogus to ns.linux.bogus.
  1320.   Daje ci to te┐ trochΩ informacji, kt≤re ma o ns, wystarczj▒co du┐o,
  1321.   ┐eby siΩ z nim po│▒czyµ, je┐eli by│by╢ programem.
  1322.  
  1323.   Jeste╢my w po│owie drogi.
  1324.  
  1325.  
  1326.  
  1327.  
  1328.   4.3.  Strefa odwrotna
  1329.  
  1330.  
  1331.   Teraz programy mog▒ konwertowaµ nazwy w linux.bogus na adresy, z
  1332.   kt≤rymi mog▒ siΩ po│▒czyµ. Ale potrzebna jest te┐ strefa odwrotna,
  1333.   kt≤ra pozwala DNS'owi przekszta│caµ adresy na nazwy (FTP, IRC, WWW i
  1334.   inne), ┐eby zdecydowaµ, czy chc▒ z tob▒ rozmawiaµ, czy nie, a je┐eli
  1335.   tak, mo┐e nawet zdecyduj▒ jaki priorytet powinien byµ ci nadany.
  1336.   Strefa odwrotna jest wymagana dla pe│nego dostΩpu do wszystkich us│ug
  1337.   Internetu.
  1338.  
  1339.   Wstaw nastΩpuj▒ce linie w named.conf:
  1340.  
  1341.  
  1342.   ______________________________________________________________________
  1343.   zone "196.168.192.in-addr.arpa" {
  1344.           notify no;
  1345.           type master;
  1346.           file "pz/192.168.196";
  1347.   };
  1348.   ______________________________________________________________________
  1349.  
  1350.  
  1351.  
  1352.   Tak samo jak z 0.0.127.in-addr.arpa, zawarto╢µ tak┐e jest podobna:
  1353.  
  1354.  
  1355.   ______________________________________________________________________
  1356.   @       IN      SOA     ns.linux.bogus. hostmaster.linux.bogus. (
  1357.                           199802151 ; Numer seryjny, data + numer
  1358.                           8H      ; od╢wie┐anie
  1359.                           2H      ; powtarzanie
  1360.                           1W      ; przedawnienie
  1361.                           1D)     ; minimalny TTL
  1362.                   NS      ns.linux.bogus.
  1363.  
  1364.   1               PTR     gw.linux.bogus.
  1365.   2               PTR     ns.linux.bogus.
  1366.   3               PTR     donald.linux.bogus.
  1367.   4               PTR     mail.linux.bogus.
  1368.   5               PTR     donald.linux.bogus.
  1369.   ______________________________________________________________________
  1370.  
  1371.  
  1372.  
  1373.   Teraz uruchom ponownie named (ndc restart) i sprawd╝ swoj▒ pracΩ znowu
  1374.   korzystaj▒c z nslookup:
  1375.  
  1376.  
  1377.   ______________________________________________________________________
  1378.   > 192.168.196.4
  1379.   Server:  localhost
  1380.   Address:  127.0.0.1
  1381.  
  1382.   Name:    mail.linux.bogus
  1383.   Address:  192.168.196.4
  1384.   ______________________________________________________________________
  1385.  
  1386.  
  1387.   Wygl▒da w porz▒dku, spr≤buj wy╢wietliµ wszystko, ┐eby to sprawdziµ:
  1388.  
  1389.  
  1390.   ______________________________________________________________________
  1391.   > ls -d 196.168.192.in-addr.arpa
  1392.   [localhost]
  1393.   $ORIGIN 196.168.192.in-addr.arpa.
  1394.   @                       1D IN SOA       ns.linux.bogus. hostmaster.linux.bogus. (
  1395.                                           199802151       ; serial
  1396.                                           8H              ; refresh
  1397.                                           2H              ; retry
  1398.                                           1W              ; expiry
  1399.                                           1D )            ; minimum
  1400.  
  1401.                           1D IN NS        ns.linux.bogus.
  1402.   1                       1D IN PTR       gw.linux.bogus.
  1403.   2                       1D IN PTR       ns.linux.bogus.
  1404.   3                       1D IN PTR       donald.linux.bogus.
  1405.   4                       1D IN PTR       mail.linux.bogus.
  1406.   5                       1D IN PTR       donald.linux.bogus.
  1407.   @                       1D IN SOA       ns.linux.bogus. hostmaster.linux.bogus. (
  1408.                                           199802151       ; numer seryjny
  1409.                                           8H              ; od╢wie┐anie
  1410.                                           2H              ; powtarzanie
  1411.                                           1W              ; przedawnienie
  1412.                                           1D )            ; minimum
  1413.   ______________________________________________________________________
  1414.  
  1415.  
  1416.  
  1417.   Wygl▒da dobrze!
  1418.  
  1419.   Jest kilka rzeczy, kt≤re powinienem tu dodaµ. Numery IP u┐ywane w
  1420.   przyk│adach pochodz▒ z jednego z blok≤w ,,sieci prywatnych'', tzn. nie
  1421.   wolno u┐ywaµ ich publicznie w internecie. S▒ bezpieczne do pokazania
  1422.   jako przyk│ad w HOWTO.  Druga rzecz, to linia notify no;. M≤wi named,
  1423.   ┐eby nie zawiadamiaµ serwera drugorzΩdnego (secondary, slave), kiedy
  1424.   jeden z plik≤w stref zostanie uaktualniony. W bind'dzie-8 named mo┐e
  1425.   zawiadamiaµ inne serwery wymienione w rekordach NS w pliku strefy,
  1426.   kiedy strefa zostanie uaktualniona. Jest to przydatne do u┐ytku
  1427.   zwyk│ego, ale dla prywatnych eksperyment≤w ze strefami ta opcja
  1428.   powinna byµ wy│▒czona, nie chcemy przecie┐ chyba, ┐eby nasz
  1429.   eksperyment za╢mieca│ Internet, czy┐ nie tak?
  1430.  
  1431.   No i oczywi╢cie ta domena jest nieprawdziwa (bogus) i takie te┐ s▒
  1432.   wszystkie adresy w niej. Zobacz nastΩpny rozdzia│ dla przyk│adu z
  1433.   prawdziw▒ domen▒.
  1434.  
  1435.  
  1436.   5.  Prawdziwa domena
  1437.  
  1438.  
  1439.   Tutaj opisujemy trochΩ prawdziwych plik≤w stref.
  1440.  
  1441.   U┐ytkownicy zasugerowali, ┐ebym za│▒czy│ prawdziwy przyk│ad
  1442.   dzia│aj▒cej domeny razem z teoretycznym przyk│adem.
  1443.  
  1444.   U┐ywam tego przyk│adu z zezwoleniem Davida Bullock'a z LAND-5.  Te
  1445.   pliki by│y aktualne 24 Wrze╢nia  1996 i zosta│y zmienione przeze mnie,
  1446.   ┐eby pasowa│y do formatu bind-8, u┐ywaj▒ te┐ moich rozszerze±.  A
  1447.   wiΩc, to co tu widzisz r≤┐ni siΩ trochΩ od tego, co otrzymasz po
  1448.   wys│aniu zapytania do serwer≤w nazw LAND-5 obecnie.
  1449.  
  1450.  
  1451.  
  1452.  
  1453.   5.1.  /etc/named.conf (lub /var/named/named.conf)
  1454.  
  1455.  
  1456.   Tutaj znajdziemy linie g│≤wne dla dw≤ch potrzebnych stref odwrotnych:
  1457.   sieci 127.0.0, jak i sieci 206.6.177 nale┐▒cej do LAND-5, oraz liniΩ
  1458.   primary dla przedniej strefy land-5.com. Zauwa┐ tak┐e, ┐e zamiast
  1459.   umieszczaµ pliki w katalogu o nazwie pz, jak robiΩ to w tym HOWTO,
  1460.   znajduj▒ siΩ one w katalogu zone (strefa).
  1461.  
  1462.  
  1463.   ______________________________________________________________________
  1464.   // Plik │aduj▒cy dla serwera nazw LAND-5
  1465.  
  1466.   options {
  1467.           directory "/var/named";
  1468.   };
  1469.  
  1470.   zone "." {
  1471.           type hint;
  1472.           file "root.hints";
  1473.   };
  1474.  
  1475.   zone "0.0.127.in-addr.arpa" {
  1476.           type master;
  1477.           file "zone/127.0.0";
  1478.   };
  1479.  
  1480.   zone "land-5.com" {
  1481.           type master;
  1482.           file "zone/land-5.com";
  1483.   };
  1484.  
  1485.   zone "177.6.206.in-addr.arpa" {
  1486.           type master;
  1487.           file "zone/206.6.177";
  1488.   };
  1489.   ______________________________________________________________________
  1490.  
  1491.  
  1492.  
  1493.   Je┐eli wstawisz to do swojego named.conf, ┐eby siΩ pobawiµ, PROSZ╩,
  1494.   wstaw notify no; w sekcji stref dla dw≤ch stref land-5, ┐eby unikn▒µ
  1495.   wypadk≤w.
  1496.  
  1497.  
  1498.  
  1499.  
  1500.   5.2.  /var/named/root.hints
  1501.  
  1502.  
  1503.   PamiΩtaj, ┐e ten plik zmienia siΩ, a ten jest stary. Powiniene╢ u┐ywaµ
  1504.   nowszego pliku wyprodukowanego u┐ywaj▒c dig, bΩdzie to wyt│umaczone
  1505.   p≤╝niej.  (UWAGA: autor napisa│, ┐e by│o to wyt│umaczone wcze╢niej,
  1506.   ale jest to wyt│umaczone P╙¼NIEJ - przyp. t│um.)
  1507.  
  1508.  
  1509.  
  1510.  
  1511.  
  1512.  
  1513.  
  1514.  
  1515.  
  1516.  
  1517.  
  1518.  
  1519.   ______________________________________________________________________
  1520.   ; <<>> DiG 8.1 <<>> @A.ROOT-SERVERS.NET.
  1521.   ; (1 server found)
  1522.   ;; res options: init recurs defnam dnsrch
  1523.   ;; got answer:
  1524.   ;; ->>HEADER<<- opCODE: QUERY, status: NOERROR, id: 10
  1525.   ;; flags: qr aa rd; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 13
  1526.   ;; QUERY SECTION:
  1527.   ;;      ., type = NS, class = IN
  1528.  
  1529.   ;; ANSWER SECTION:
  1530.   .                     6D IN NS        G.ROOT-SERVERS.NET.
  1531.   .                     6D IN NS        J.ROOT-SERVERS.NET.
  1532.   .                     6D IN NS        K.ROOT-SERVERS.NET.
  1533.   .                     6D IN NS        L.ROOT-SERVERS.NET.
  1534.   .                     6D IN NS        M.ROOT-SERVERS.NET.
  1535.   .                     6D IN NS        A.ROOT-SERVERS.NET.
  1536.   .                     6D IN NS        H.ROOT-SERVERS.NET.
  1537.   .                     6D IN NS        B.ROOT-SERVERS.NET.
  1538.   .                     6D IN NS        C.ROOT-SERVERS.NET.
  1539.   .                     6D IN NS        D.ROOT-SERVERS.NET.
  1540.   .                     6D IN NS        E.ROOT-SERVERS.NET.
  1541.   .                     6D IN NS        I.ROOT-SERVERS.NET.
  1542.   .                     6D IN NS        F.ROOT-SERVERS.NET.
  1543.  
  1544.   ;; ADDITIONAL SECTION:
  1545.   G.ROOT-SERVERS.NET.     5w6d16h IN A    192.112.36.4
  1546.   J.ROOT-SERVERS.NET.     5w6d16h IN A    198.41.0.10
  1547.   K.ROOT-SERVERS.NET.     5w6d16h IN A    193.0.14.129
  1548.   L.ROOT-SERVERS.NET.     5w6d16h IN A    198.32.64.12
  1549.   M.ROOT-SERVERS.NET.     5w6d16h IN A    202.12.27.33
  1550.   A.ROOT-SERVERS.NET.     5w6d16h IN A    198.41.0.4
  1551.   H.ROOT-SERVERS.NET.     5w6d16h IN A    128.63.2.53
  1552.   B.ROOT-SERVERS.NET.     5w6d16h IN A    128.9.0.107
  1553.   C.ROOT-SERVERS.NET.     5w6d16h IN A    192.33.4.12
  1554.   D.ROOT-SERVERS.NET.     5w6d16h IN A    128.8.10.90
  1555.   E.ROOT-SERVERS.NET.     5w6d16h IN A    192.203.230.10
  1556.   I.ROOT-SERVERS.NET.     5w6d16h IN A    192.36.148.17
  1557.   F.ROOT-SERVERS.NET.     5w6d16h IN A    192.5.5.241
  1558.  
  1559.   ;; Total query time: 215 msec
  1560.   ;; FROM: roke.uio.no to SERVER: A.ROOT-SERVERS.NET.  198.41.0.4
  1561.   ;; WHEN: Sun Feb 15 01:22:51 1998
  1562.   ;; MSG SIZE  sent: 17  rcvd: 436
  1563.   ______________________________________________________________________
  1564.  
  1565.  
  1566.  
  1567.  
  1568.  
  1569.  
  1570.   5.3.  /var/named/zone/127.0.0
  1571.  
  1572.  
  1573.   Tylko podstawy, obowi▒zuj▒cy rekord SOA i rekord, kt≤ry mapuje
  1574.   127.0.0.1 na localhost. Oba s▒ wymagane. Nic wiΩcej nie powinno
  1575.   znajdowaµ siΩ w tym pliku. Prawdopodobnie nigdy nie bΩdzie musia│ byµ
  1576.   uaktualniany, chyba ┐e tw≤j serwer nazw lub hostmaster zmieni▒ adres.
  1577.  
  1578.  
  1579.  
  1580.  
  1581.  
  1582.  
  1583.  
  1584.  
  1585.   ______________________________________________________________________
  1586.   @               IN      SOA     land-5.com. root.land-5.com. (
  1587.                                   199609203       ; Serial
  1588.                                   28800   ; Refresh
  1589.                                   7200    ; Retry
  1590.                                   604800  ; Expire
  1591.                                   86400)  ; Minimum TTL
  1592.                           NS      land-5.com.
  1593.  
  1594.   1                       PTR     localhost.
  1595.   ______________________________________________________________________
  1596.  
  1597.  
  1598.  
  1599.  
  1600.  
  1601.  
  1602.   5.4.  /var/named/zone/land-5.com
  1603.  
  1604.  
  1605.   Widzimy tu obowi▒zuj▒cy rekord SOA i potrzebne rekordy NS. Mo┐emy
  1606.   zobaczyµ, ┐e drugorzΩdny serwer nazw ma adres ns2.psi.net. Jest tak,
  1607.   jak powinno byµ, zawsze musi byµ drugorzΩdny serwer w innym miejscu
  1608.   Internetu.  Jest tu komputer g│≤wny o nazwie land-5, kt≤ry zajmuje siΩ
  1609.   wieloma r≤┐nymi us│ugami Internetowymi, jest to za│atwione za pomoc▒
  1610.   rekord≤w CNAME (alternatywnie mo┐na u┐ywaµ rekord≤w A).
  1611.  
  1612.   Jak widzidsz z rekordu SOA, plik strefy pochodzi z land-5.com, osob▒
  1613.   kontaktow▒ jest root@land-5.com. hostmaster jest innym czΩsto u┐ywanym
  1614.   adresem.  Numer seryjny sk│ada siΩ z daty w formacie yyyymmdd i
  1615.   dziennego numeru seryjnego; jest to prawdopodobnie sz≤sta wersja pliku
  1616.   strefy z 20 Wrze╢nia 1996. PamiΩtaj, ┐e numer seryjny musi zwiΩkszaµ
  1617.   siΩ monotonicznie, tutaj jest tylko jedna cyfra numeru seryjnego, wiΩc
  1618.   po 9 zmianach trzeba czekaµ do nastΩpnego dnia z nastΩpnymi edycjami.
  1619.   Rozwa┐ u┐ycie dw≤ch cyfr.
  1620.  
  1621.  
  1622.  
  1623.  
  1624.  
  1625.  
  1626.  
  1627.  
  1628.  
  1629.  
  1630.  
  1631.  
  1632.  
  1633.  
  1634.  
  1635.  
  1636.  
  1637.  
  1638.  
  1639.  
  1640.  
  1641.  
  1642.  
  1643.  
  1644.  
  1645.  
  1646.  
  1647.  
  1648.  
  1649.  
  1650.  
  1651.   ______________________________________________________________________
  1652.   @       IN      SOA     land-5.com. root.land-5.com. (
  1653.                           199609206       ; serial, todays date + todays serial #
  1654.                           8H              ; refresh, seconds
  1655.                           2H              ; retry, seconds
  1656.                           1W              ; expire, seconds
  1657.                           1D )            ; minimum, seconds
  1658.                   NS      land-5.com.
  1659.                   NS      ns2.psi.net.
  1660.                   MX      10 land-5.com.  ; Primary Mail Exchanger
  1661.  
  1662.   localhost       A       127.0.0.1
  1663.  
  1664.   router          A       206.6.177.1
  1665.  
  1666.   land-5.com.     A       206.6.177.2
  1667.   ns              A       206.6.177.3
  1668.   www             A       207.159.141.192
  1669.  
  1670.   ftp             CNAME   land-5.com.
  1671.   mail            CNAME   land-5.com.
  1672.   news            CNAME   land-5.com.
  1673.  
  1674.   funn            A       206.6.177.2
  1675.   @               TXT     "LAND-5 Corporation"
  1676.  
  1677.   ;
  1678.   ;       Workstations
  1679.   ;
  1680.   ws-177200       A       206.6.177.200
  1681.                   MX      10 land-5.com.   ; Primary Mail Host
  1682.   ws-177201       A       206.6.177.201
  1683.                   MX      10 land-5.com.   ; Primary Mail Host
  1684.   ws-177202       A       206.6.177.202
  1685.                   MX      10 land-5.com.   ; Primary Mail Host
  1686.   ws-177203       A       206.6.177.203
  1687.                   MX      10 land-5.com.   ; Primary Mail Host
  1688.   ws-177204       A       206.6.177.204
  1689.                   MX      10 land-5.com.   ; Primary Mail Host
  1690.   ws-177205       A       206.6.177.205
  1691.                   MX      10 land-5.com.   ; Primary Mail Host
  1692.   ; {Many repetitive definitions deleted - SNIP}
  1693.   ws-177250       A       206.6.177.250
  1694.                   MX      10 land-5.com.   ; Primary Mail Host
  1695.   ws-177251       A       206.6.177.251
  1696.                   MX      10 land-5.com.   ; Primary Mail Host
  1697.   ws-177252       A       206.6.177.252
  1698.                   MX      10 land-5.com.   ; Primary Mail Host
  1699.   ws-177253       A       206.6.177.253
  1700.                   MX      10 land-5.com.   ; Primary Mail Host
  1701.   ws-177254       A       206.6.177.254
  1702.                   MX      10 land-5.com.   ; Primary Mail Host
  1703.   ______________________________________________________________________
  1704.  
  1705.  
  1706.  
  1707.   Je┐eli sprawdzisz serwer nazw land-5, zobaczysz, ┐e nazwy komputer≤w
  1708.   sk│adaj▒ siΩ z ws_numer. P≤╝ne wersje named'a w bind'dzie 4 zaczΩ│y
  1709.   wymagaµ ogranicze± znak≤w sk│adaj▒cych siΩ na nazwy komputer≤w.  A
  1710.   wiΩc wog≤le nie dzia│a│oby to z bind-8, zamieni│em ,,_'' na ,,-''.
  1711.  
  1712.   Inna rzecz warta zauwa┐enia to fakt, ┐e stacje robocze nie maj▒
  1713.   w│asnych nazw, a raczej prefiks i dwie ostatnie czΩ╢ci numeru IP.
  1714.   U┐ywanie takiej konwencji mo┐e znacznie upro╢ciµ nadz≤r, ale jest
  1715.   trochΩ bezosobowe i mo┐e byµ ╝r≤d│em niezadowolenia w╢r≤d twoich
  1716.   u┐ytkownik≤w.
  1717.   Mo┐emy tak┐e zobaczyµ, ┐e funn.land-5.com jest aliasem land-5.com, ale
  1718.   u┐ywaj▒cym rekordu A, a nie CNAME.
  1719.  
  1720.  
  1721.  
  1722.  
  1723.   5.5.  /var/named/zone/206.6.177
  1724.  
  1725.  
  1726.   SkomentujΩ ten plik na jego ko±cu.
  1727.  
  1728.  
  1729.   ______________________________________________________________________
  1730.   @               IN      SOA     land-5.com. root.land-5.com. (
  1731.                                   199609206       ; Serial
  1732.                                   28800   ; Refresh
  1733.                                   7200    ; Retry
  1734.                                   604800  ; Expire
  1735.                                   86400)  ; Minimum TTL
  1736.                           NS      land-5.com.
  1737.                           NS      ns2.psi.net.
  1738.   ;
  1739.   ;       Servers
  1740.   ;
  1741.   1       PTR     router.land-5.com.
  1742.   2       PTR     land-5.com.
  1743.   2       PTR     funn.land-5.com.
  1744.   ;
  1745.   ;       Workstations
  1746.   ;
  1747.   200     PTR     ws-177200.land-5.com.
  1748.   201     PTR     ws-177201.land-5.com.
  1749.   202     PTR     ws-177202.land-5.com.
  1750.   203     PTR     ws-177203.land-5.com.
  1751.   204     PTR     ws-177204.land-5.com.
  1752.   205     PTR     ws-177205.land-5.com.
  1753.   ; {Du┐o powtarzaj▒cych siΩ rekord≤w - usuniΩto}
  1754.   250     PTR     ws-177250.land-5.com.
  1755.   251     PTR     ws-177251.land-5.com.
  1756.   252     PTR     ws-177252.land-5.com.
  1757.   253     PTR     ws-177253.land-5.com.
  1758.   254     PTR     ws-177254.land-5.com.
  1759.   ______________________________________________________________________
  1760.  
  1761.  
  1762.  
  1763.   Strefa odwrotna jest kawa│kiem ustawie± wydaj▒cym siΩ sprawiaµ
  1764.   najwiΩcej k│opot≤w. Jest u┐ywany do znalezienia nazwy komputera,
  1765.   je┐eli masz jego numer IP. Przyk│ad: jeste╢ serwerem IRC i akceptujesz
  1766.   po│▒czenia od klient≤w IRC.  Jednak┐e jeste╢ serwerem norweskim, a
  1767.   wiΩc chcesz akceptowaµ po│▒czenia tylko z Norwegii i innych kraj≤w
  1768.   skandynawskich. Kiedy otrzymasz po│▒czenie od klienta, biblioteka C
  1769.   jest w stanie przekazaµ ci numer IP │▒cz▒cej siΩ maszyny, poniewa┐
  1770.   numer IP klienta jest zawarty we wszystkich pakietach przekazywanych
  1771.   przez sieµ. Teraz mo┐esz przywo│aµ funkcjΩ o nazwie gethostbyaddr,
  1772.   kt≤ra szuka nazwy komputera z podanym numerem IP. Gethostbyaddr spyta
  1773.   serwer DNS, kt≤ry wtedy przetrawersuje DNS, poszukuj▒c maszyny.
  1774.   Przyjmijmy, ┐e po│▒czenie nadesz│o z ws-177200.land-5.com. Numer IP
  1775.   podany przez bibliotekΩ C serwerowi IRC to 206.6.177.200. »eby poznaµ
  1776.   nazwΩ tej maszyny, musimy znale╝µ 200.177.6.206.in-addr.arpa. Serwer
  1777.   DNS najpierw odwr≤ci ╢cie┐kΩ przez 206, potem przez 6, a┐ w ko±cu
  1778.   znajdzie serwer dla strefy 177.6.206.in-addr.arpa na land-5, z kt≤rego
  1779.   na ko±cu dostanie odpowied╝, ┐e dla 200.177.6.206.in-addr.arpa mamy
  1780.   rekord ,,PTR ws-177200.land-5.com'', kt≤ry znaczy, ┐e nazwa
  1781.   206.6.177.20 to ws-177200.land-5.com.  Tak jak z wyja╢nieniem, jak
  1782.   zostaje znaleziony prep.ai.mit.edu, jest to trochΩ fikcyjne.
  1783.   Wracaj▒c do przyk│adu serwera IRC. Serwer IRC akceptuje po│▒czenia
  1784.   tylko z kraj≤w skandynawskich, tj. *.no, *.se, *.dk. Od razu widaµ, ┐e
  1785.   nazwa ws-177200.land-5.com nie pasuje do ┐adnego z nich, a wiΩc serwer
  1786.   odm≤wi po│▒czenia. Je┐eli nie by│o mapowania odwrotnego dla
  1787.   206.6.177.200 przez strefΩ in-addr.arpa, serwer nie m≤g│by znale╝µ
  1788.   nazwy i por≤wna│by 206.6.177.200 z *.no, *.se i *.dk, oczywi╢cie ┐adna
  1789.   z nich nie bΩdzie pasowa│a.
  1790.  
  1791.   Niekt≤rzy ludzie bΩd▒ m≤wili ci, ┐e odwrotne mapowanie jest wa┐ne
  1792.   tylko dla serwer≤w, albo wog≤le nie wa┐ne. Nie zawsze: wiele serwer≤w
  1793.   ftp, news, IRC i nawet niekt≤re http (WWW) nie bΩd▒ akceptowa│y
  1794.   po│▒cze± z maszyn, kt≤rych nazw nie bΩd▒ w stanie znale╝µ. A wiΩc
  1795.   mapowanie odwrotne jest obowi▒zkowe.
  1796.  
  1797.  
  1798.   6.  Nadz≤r
  1799.  
  1800.  
  1801.   Utrzymywanie w ci▒g│ym dzia│aniu
  1802.  
  1803.   Jest jedno zadanie nadzorcze, kt≤re musisz wykonywaµ z named'ami, inne
  1804.   ni┐ utrzymywanie ich w dzia│aniu, tzn. uaktualnianie pliku root.hints.
  1805.   Naj│atwiej jest to zrobiµ u┐ywaj▒c dig'a. Najpierw uruchom dig bez
  1806.   ┐adnych argument≤w, otrzymasz zawarto╢µ pliku root.hints zgodnie ze
  1807.   swoim w│asnym serwerem. Wtedy spytaj jeden z wymienionych serwer≤w
  1808.   g│≤wnych komend▒ dig @rootserver. Zauwa┐ysz, ┐e to co otrzymasz bΩdzie
  1809.   bardzo podobne do pliku root.hints. Zapisz to do pliku (dig @e.root-
  1810.   servers.net . ns >root.hints.new) i zamie± na niego stary plik
  1811.   root.hints.
  1812.  
  1813.   PamiΩtaj, ┐eby uruchomiµ ponownie named po zamianie pliku cache.
  1814.  
  1815.   Al Longyear wys│a│ mi ten skrypt. Mo┐e on byµ uruchamiany
  1816.   automatycznie w celu uaktualniania root.hints. Dodaj wpis do tablicy
  1817.   cron'a, ┐eby by│ uruchamiany raz na miesi▒c. Ten skrypt przyjmuje, ┐e
  1818.   masz dzia│aj▒cy system pocztowy i zdefniowany alias pocztowy
  1819.   ,,hostmaster''. Musisz zag│Ωbiµ siΩ w ten plik, ┐eby dostosowaµ go do
  1820.   twoich ustawie±.
  1821.  
  1822.  
  1823.  
  1824.  
  1825.  
  1826.  
  1827.  
  1828.  
  1829.  
  1830.  
  1831.  
  1832.  
  1833.  
  1834.  
  1835.  
  1836.  
  1837.  
  1838.  
  1839.  
  1840.  
  1841.  
  1842.  
  1843.  
  1844.  
  1845.  
  1846.  
  1847.  
  1848.  
  1849.   ______________________________________________________________________
  1850.   #!/bin/sh
  1851.   #
  1852.   # Uaktualnianie pliku cache raz na miesi▒c.
  1853.   # Ten skrypt jest uruchamiany automatycznie przez cron'a.
  1854.   #
  1855.   (
  1856.    echo "To: hostmaster <hostmaster>"
  1857.    echo "From: system <root>"
  1858.    echo "Subject: Automatyczne uaktualnienie pliku named.conf"
  1859.    echo
  1860.  
  1861.    export PATH=/sbin:/usr/sbin:/bin:/usr/bin:
  1862.    cd /var/named
  1863.  
  1864.    dig @rs.internic.net . ns >root.hints.new
  1865.  
  1866.    echo "Plik named.conf zosta│ uaktualniony i zawiera nastΩpuj▒ce informacje:"
  1867.    echo
  1868.    cat root.hints.new
  1869.  
  1870.    chown root.root root.hints.new
  1871.    chmod 444 root.hints.new
  1872.    rm -f root.hints.old
  1873.    mv root.hints root.hints.old
  1874.    mv root.hints.new root.hints
  1875.    ndc restart
  1876.    echo
  1877.    echo "Serwer nazw zosta│ uruchomiony ponownie, aby wprowadziµ zmiany"
  1878.    echo "Poprzedni plik nazywa siΩ teraz /var/named/root.hints.old."
  1879.   ) 2>&1 | /usr/lib/sendmail -t
  1880.   exit 0
  1881.   ______________________________________________________________________
  1882.  
  1883.  
  1884.  
  1885.   Niekt≤rzy z was mogli zauwa┐yµ, ┐e plik root.hints jest te┐ dostΩpny
  1886.   przez ftp z Internic'u. ProszΩ, nie u┐ywaj ftp do uaktualniania
  1887.   root.hints, powy┐sza metoda jest o wiele bardziej przyjazna dla sieci.
  1888.  
  1889.  
  1890.   7.  Przej╢cie z wersji 4 na wersjΩ 8
  1891.  
  1892.  
  1893.   Poprzednio by│a to sekcja o u┐ywaniu bind'a 8 napisana przez David'a
  1894.   E. Smith'a (dave@bureau42.ml.org). TrochΩ j▒ zmieni│em, ┐eby pasowa│a
  1895.   do nowej nazwy sekcji.
  1896.  
  1897.   Nie ma tego wiele. Poza u┐ywaniem named.conf zamiast named.boot,
  1898.   wszystko jest identyczne. Bind-8 jest dostarczany ze skryptem
  1899.   konwertuj▒cym pliki w ,,starym stylu'' na nowe. Przyk│adowy named.conf
  1900.   (stary) dla serwera cache:
  1901.  
  1902.  
  1903.   ______________________________________________________________________
  1904.   directory /var/named
  1905.   cache   .                                     root.hints
  1906.   primary 0.0.127.IN-ADDR.ARPA                    127.0.0.zone
  1907.   primary localhost                               localhost.zone
  1908.   ______________________________________________________________________
  1909.  
  1910.  
  1911.  
  1912.   W linii komend, w katalogu bind8/src/bin/named (PrzyjmujΩ, ┐e masz
  1913.   dystrybucjΩ ╝r≤d│ow▒. Je┐eli masz paczkΩ z binariami skrypt te┐ gdzie╢
  1914.   musi byµ, jednak┐e nie jestem pewien gdzie. -ed.), napisz:
  1915.   ______________________________________________________________________
  1916.   ./named-bootconf.pl < named.conf > named.conf
  1917.   ______________________________________________________________________
  1918.  
  1919.  
  1920.  
  1921.   Co stworzy named.conf:
  1922.  
  1923.  
  1924.   ______________________________________________________________________
  1925.   // generated by named-bootconf.pl
  1926.  
  1927.   options {
  1928.           directory "/var/named";
  1929.   };
  1930.  
  1931.   zone "." {
  1932.           type hint;
  1933.           file "root.hints";
  1934.   };
  1935.  
  1936.   zone "0.0.127.IN-ADDR.ARPA" {
  1937.           type master;
  1938.           file "127.0.0.zone";
  1939.   };
  1940.  
  1941.   zone "localhost" {
  1942.           type master;
  1943.           file "localhost.zone";
  1944.   };
  1945.   ______________________________________________________________________
  1946.  
  1947.  
  1948.  
  1949.   Metoda ta konwertuje wszystko, co mo┐na wpisaµ do named.conf, jednak┐e
  1950.   nie dodaje ┐adnych nowych rozszerze± i opcji konfiguracji, kt≤re mo┐na
  1951.   uzyskaµ w bind-8. Oto bardziej kompletny named.conf, kt≤ry robi te
  1952.   same rzeczy, ale trochΩ bardziej sprawnie.
  1953.  
  1954.  
  1955.  
  1956.  
  1957.  
  1958.  
  1959.  
  1960.  
  1961.  
  1962.  
  1963.  
  1964.  
  1965.  
  1966.  
  1967.  
  1968.  
  1969.  
  1970.  
  1971.  
  1972.  
  1973.  
  1974.  
  1975.  
  1976.  
  1977.  
  1978.  
  1979.  
  1980.  
  1981.   ______________________________________________________________________
  1982.   // To jest plik konfiguracyjny named (bind-8 lub p≤╝niejszy)
  1983.   // Powinien byµ zainstalowany jako /etc/named.conf.
  1984.   // Jedyna zmiana pliku ,,fabrycznego'' (poza tym komentarzem :))
  1985.   // to odkomentowanie linii directory, poniewa┐ mam ju┐ pliki stref
  1986.   // w /var/named.
  1987.  
  1988.   options {
  1989.           directory "/var/named";
  1990.           check-names master warn;                /* domy╢lne. */
  1991.           datasize 20M;
  1992.   };
  1993.  
  1994.   zone "localhost" IN {
  1995.           type master;
  1996.           file "localhost.zone";
  1997.           check-names fail;
  1998.           allow-update { none; };
  1999.           allow-transfer { any; };
  2000.   };
  2001.  
  2002.   zone "0.0.127.in-addr.arpa" IN {
  2003.           type master;
  2004.           file "127.0.0.zone";
  2005.           check-names fail;
  2006.           allow-update { none; };
  2007.           allow-transfer { any; };
  2008.   };
  2009.  
  2010.   zone "." IN {
  2011.           type hint;
  2012.           file "root.hints";
  2013.   };
  2014.   ______________________________________________________________________
  2015.  
  2016.  
  2017.  
  2018.   bind8/src/bin/named/test ma ten plik oraz kopie plik≤w stref, kt≤re
  2019.   wiele ludzi mo┐e skopiowaµ i od razu u┐ywaµ.
  2020.  
  2021.   Formaty plik≤w stref i root.hints s▒ identyczne, tak jak komendy ich
  2022.   uaktualniania.
  2023.  
  2024.  
  2025.   8.  FAQ
  2026.  
  2027.  
  2028.   W tej sekcji wymieniΩ kilka spo╢r≤d najczΩ╢ciej zadawanych pyta±
  2029.   zwi▒zanych z DNS'em i tym HOWTO, oraz odpowiedzi na nie. :-)
  2030.   Przeczytaj t▒ sekcjΩ przed wys│aniem do mnie listu.
  2031.  
  2032.  
  2033.   1. M≤j named ┐▒da pliku named.boot.
  2034.  
  2035.  
  2036.      Czytasz z│e HOWTO. Przeczytaj star▒ wersjΩ tego dokumentu, kt≤ra
  2037.      opisuje bind 4, na http://www.math.uio.no/~janl/DNS/.
  2038.  
  2039.  
  2040.  
  2041.  
  2042.   2. Jak u┐ywaµ DNS zza ╢ciany ognia (firewall)?
  2043.  
  2044.  
  2045.      Kilka podpowiedzi: ,,forwarders'', ,,slave'' oraz spojrzenie na
  2046.      listΩ literatury na ko±cu tego HOWTO.
  2047.   3. Jak sprawiµ, ┐eby DNS prze│▒cza│ siΩ miΩdzy adresami us│ugi, np.
  2048.      www.zajΩty.serwer, ┐eby uzyskaµ efekt wyr≤wnania obci▒┐enia, lub
  2049.      podobny?
  2050.  
  2051.  
  2052.      Utw≤rz kilka rekord≤w A dla www.zajΩty.serwer i u┐yj bind'a 4.9.3
  2053.      lub p≤╝niejszego. Wtedy bind bΩdzie pokolei prze│▒cza│ adresy.  Nie
  2054.      bΩdzie to dzia│aµ z wcze╢niejszymi wersjami bind'a.
  2055.  
  2056.  
  2057.  
  2058.  
  2059.   4. ChcΩ ustawiµ DNS w (zamkniΩtym) intranecie. Co mam zrobiµ?
  2060.  
  2061.  
  2062.      Nie zak│adaj pliku root.hints, tylko pliki stref. To znaczy tak┐e,
  2063.      ┐e nie bΩdziesz musia│ uaktualniaµ tego pliku.
  2064.  
  2065.  
  2066.  
  2067.  
  2068.   5. Jak ustawiµ drugorzΩdny (secondary, slave...) serwer DNS?
  2069.  
  2070.  
  2071.      Je┐eli podstawowy (primary) serwer ma adres 127.0.0.1 wstaw
  2072.      nastΩpuj▒c▒ liniΩ w named.conf drugorzΩdnego serwera:
  2073.  
  2074.  
  2075.      ___________________________________________________________________
  2076.        zone "linux.bogus" {
  2077.              type slave;
  2078.              file "sz/linux.bogus";
  2079.              masters { 127.0.0.1; };
  2080.        };
  2081.  
  2082.      ___________________________________________________________________
  2083.  
  2084.  
  2085.  
  2086.   Mo┐esz wymieniµ kilka alternatywnych serwer≤w g│≤wnych, z kt≤rych
  2087.   strefa mo┐e byµ kopiowana w li╢cie masters, oddzielone przez ,,;''.
  2088.  
  2089.  
  2090.  
  2091.  
  2092.   6. ChcΩ, ┐eby bind dzia│a│ nawet wtedy, kiedy jestem od│▒czony od
  2093.      sieci.
  2094.  
  2095.  
  2096.      Otrzyma│em taki list od Ian'a Clark'a <ic@deakin.edu.au>, gdzie
  2097.      wyja╢nia on jego spos≤b dokonania tego:
  2098.  
  2099.  
  2100.  
  2101.  
  2102.  
  2103.  
  2104.  
  2105.  
  2106.  
  2107.  
  2108.  
  2109.  
  2110.  
  2111.  
  2112.  
  2113.   Uruchamiam named na mojej ,,maskuj▒cej siΩ'' maszynie. Mam dwa pliki
  2114.   root.hints, jeden nazywa siΩ root.hints.real i zawiera prawdziwe nazwy serwer≤w
  2115.   nazw g│≤wnych, oraz drugi, root.hints.fake, kt≤ry zawiera...
  2116.  
  2117.   ----
  2118.   ; root.hints.fake
  2119.   ; ten plik nie zawiera ┐adnych informacji
  2120.   ----
  2121.  
  2122.   Kiedy roz│▒czam siΩ, kopiujΩ root.hints.fake do root.hints i uruchamiam
  2123.   named ponownie.
  2124.  
  2125.   Kiedy │▒czΩ siΩ, kopiujΩ root.hints.real do root.hints i restartujΩ named.
  2126.  
  2127.   To jest wykonywane odpowiednio przez ip-down i ip-up.
  2128.  
  2129.   Pierwszy raz, kiedy przeprowadzam zapytanie off-line o nazwΩ domeny, named
  2130.   nie ma szczeg≤│≤w, a wiΩc wstawia taki komunikat w pliku messgaes:
  2131.  
  2132.   Jan 28 20:10:11 hazchem named[10147]: No root nameserver for class IN
  2133.  
  2134.   z czym mo┐na ┐yµ.
  2135.  
  2136.   U mnie to dzia│a. MogΩ u┐ywaµ serwera nazw dla maszyn lokalnych bez op≤╝nienia,
  2137.   jak w przypadku zewnΩtrznych nazw domen, a kiedy jestem w sieci, zapytania
  2138.   o zewnΩtrzne domeny funkcjonuj▒ normalnie.
  2139.  
  2140.  
  2141.  
  2142.  
  2143.  
  2144.  
  2145.  
  2146.   7. Gdzie serwer przyspieszaj▒cy zapisuje swoj▒ pamiΩµ podrΩczn▒?  W
  2147.      jaki spos≤b mo┐na j▒ kontrolowaµ?
  2148.  
  2149.  
  2150.      PamiΩµ podrΩczna jest zapamiΩtywana ca│kowicie w pamiΩci, nie jest
  2151.      zapisywana na dysk. Za ka┐dym razem kiedy zabijesz named cache
  2152.      bΩdzie stracony. Cache nie daje siΩ w ┐aden spos≤b kontrolowaµ.
  2153.      Named zarz▒dza nim zgodnie z pewnymi prostymi zasadami i nie da siΩ
  2154.      tego omin▒µ.  Nie mo┐esz kontrolowaµ cache'u ani jego rozmiaru w
  2155.      ┐aden spos≤b i z ┐adnego powodu. Je┐eli chcesz, mo┐esz ,,naprawiµ''
  2156.      to zmieniaj▒c kod named.  Jednak┐e nie jest to zalecane.
  2157.  
  2158.  
  2159.  
  2160.  
  2161.   8. Czy named zapisuje cache po zako±czeniu dzia│ania? Czy mogΩ go
  2162.      jako╢ do tego zmusiµ?
  2163.  
  2164.  
  2165.      Nie, named nie zapisuje pamiΩci podrΩcznej kiedy umiera. Znaczy to,
  2166.      ┐e cache musi byµ zbudowany od nowa za ka┐dym razem, kiedy zabijasz
  2167.      i uruchamiasz named ponownie. Nie ma sposobu, ┐eby zmusiµ go do
  2168.      zapisywania cache'u w pliku. Je┐eli chcesz, mo┐esz to ,,naprawiµ''
  2169.      zmieniaj▒c kod named. Nie jest to jednak zalecane.
  2170.  
  2171.  
  2172.  
  2173.   9.  Jak zostaµ pe│noetatowym administratorem DNS
  2174.  
  2175.  
  2176.   Dokumentacja i narzΩdzia
  2177.  
  2178.  
  2179.   Prawdziwa Dokumentacja istnieje. Online i drukowana. Przeczytanie
  2180.   kilku z tych publikacji jest wymagane, ┐eby zrobiµ krok od
  2181.   ma│oetatowego do pe│noetatowego administratora DNS. W druku,
  2182.   standardow▒ ksi▒┐k▒ jest DNS i BIND, autorstwa C. Liu i P. Albitz'a,
  2183.   wydawnictwa O'Reilly & Associates, Sebastopol, CA, ISBN 0-937175-82-X.
  2184.   Czyta│em j▒, jest ╢wietna. Jest te┐ sekcja o DNS w ksi▒┐ce TCP/IP -
  2185.   Administracja sieci, autorstwa Craig'a Hunt'a z wydawnictwa
  2186.   O'Reilly..., ISBN 0-937175-82-X. Inna ksi▒┐ka koniecznie do
  2187.   przeczytania przez dobrego admina DNS (lub kogokowiek dobrego z tej
  2188.   bran┐y) jest Zen i Sztuka Naprawy Motocykli Roberta M. Prisiga, :-)
  2189.   dostΩpne pod ISBN 0688052304 i inne.
  2190.  
  2191.   Online znajdziesz r≤┐ne rzeczy na http://www.dns.net/dnsrd/,
  2192.   http://www.isc.org/bind.html; FAQ, podrΩcznik (BOG - Bind Operators
  2193.   Guide), specyfikacje i definicje protoko│≤w, oraz sztuczki DNS (te, i
  2194.   wiele, je┐eli nie wszystkie RFC wspomniane poni┐ej, tak┐e znajduj▒ siΩ
  2195.   w dystrybucji bind'a). Nie czyta│em wiΩkszo╢ci z nich, ale przez to
  2196.   nie jestem pe│noetatowym administratorem DNS.  Natomiast Arnt
  2197.   Gulbrandsen przeczyta│ BOG i bardzo mu siΩ on spodoba│ :-).  Jest te┐
  2198.   grupa news news://comp.protocols.tcp-ip.domains o DNS. Dodatkowo, jest
  2199.   te┐ trochΩ RFC o DNS'ie, najwa┐niejsze s▒ prawdopodobnie te:
  2200.  
  2201.  
  2202.  
  2203.      RFC 2052
  2204.         A. Gulbrandsen, P. Vixie, A DNS RR for specifying the location
  2205.         of services (DNS SRV), October 1996
  2206.  
  2207.  
  2208.      RFC 1918
  2209.         Y. Rekhter, R. Moskowitz, D. Karrenberg, G. de Groot, E. Lear,
  2210.         Address Allocation for Private Internets, 02/29/1996.
  2211.  
  2212.  
  2213.      RFC 1912
  2214.         D. Barr, Common DNS Operational and Configuration Errors,
  2215.         02/28/1996.
  2216.  
  2217.  
  2218.      RFC 1912 Errors
  2219.         B. Barr Errors in RFC 1912, jest on dostΩpny na
  2220.         <http://www.cis.ohio-state.edu/~barr/rfc1912-errors.html>
  2221.  
  2222.  
  2223.      RFC 1713
  2224.         A. Romao, Tools for DNS debugging, 11/03/1994.
  2225.  
  2226.  
  2227.      RFC 1712
  2228.         C. Farrell, M. Schulze, S. Pleitner, D. Baldoni, DNS Encoding of
  2229.         Geographical Location, 11/01/1994.
  2230.  
  2231.  
  2232.      RFC 1183
  2233.         R. Ullmann, P. Mockapetris, L. Mamakos, C. Everhart, New DNS RR
  2234.         Definitions, 10/08/1990.
  2235.  
  2236.  
  2237.      RFC 1035
  2238.         P. Mockapetris, Domain names - implementation and specification,
  2239.         11/01/1987.
  2240.  
  2241.  
  2242.      RFC 1034
  2243.         P. Mockapetris, Domain names - concepts and facilities,
  2244.         11/01/1987.
  2245.      RFC 1033
  2246.         M. Lottor, Domain administrators operations guide, 11/01/1987.
  2247.  
  2248.  
  2249.      RFC 1032
  2250.         M. Stahl, Domain administrators guide, 11/01/1987.
  2251.  
  2252.  
  2253.      RFC 974
  2254.         C. Partridge, Mail routing and the domain system, 01/01/1986.
  2255.  
  2256.  
  2257.  
  2258.   10.  Od t│umacza
  2259.  
  2260.  
  2261.   To jest druga wersja DNS-HOWTO. Pierwsza wersja, dotycz▒ca bind'a 4
  2262.   zosta│a przet│umaczona przez Piotra Pogorzelskiego
  2263.   <piotr.pogorzelski@ippt.gov.pl>. Prawa autorskie t│umaczenia pierwszej
  2264.   wersji nale┐▒ w│a╢nie do niego, a poniewa┐ ja przet│umaczy│em drug▒
  2265.   wersjΩ od pocz▒tku, prawa autorskie t│umaczenia drugiej wersji nale┐▒
  2266.   do mnie.  Wersja 2.1 jest znacznie poprawiona w stosunku do 2.0.  Jak
  2267.   zwykle, je┐eli znajdziesz jakie╢ b│edy, daj mi znaµ.
  2268.  
  2269.  
  2270.  
  2271.  
  2272.  
  2273.  
  2274.  
  2275.  
  2276.  
  2277.  
  2278.  
  2279.  
  2280.  
  2281.  
  2282.  
  2283.  
  2284.  
  2285.  
  2286.  
  2287.  
  2288.  
  2289.  
  2290.  
  2291.  
  2292.  
  2293.  
  2294.  
  2295.  
  2296.  
  2297.  
  2298.  
  2299.  
  2300.  
  2301.  
  2302.  
  2303.  
  2304.  
  2305.  
  2306.  
  2307.  
  2308.  
  2309.  
  2310.  
  2311.