rshrut prohodyashchij cherez dva gateways dolzhen imet' razmer dva. Odnako, obratite vnimanie na to, chto Vy ne dolzhny bespokoit'sya otnositel'no metrik, kogda Vy ne ispol'zuete RIP ili gated. 3.5. The Internet Control Message Protocol (Mezhsetevoj protokol kontrol'nyh soobshchenij) IP imeet protokol-kompan'on, chto zh my do sih por ne pogovorili o - 43 - nem. |to mezhsetevoj protokol kontrol'nyh soobshchenij (ICMP) i ispol'zuetsya on setevym kodom yadra, chtoby peredavat' soobshcheniya ob oshibkah i t. p. drugim hostam. Naprimer, predpolozhite chto Vy nahodites' na erdos i hotite ispol'zovat' telnet cherez 12345 port na quark, no na etom porte otsutstvuet slushayushchij process. Kogda prihodit pervyj TCP paket na etot port, yadro opredelit eto i otoshlet ICMP soobshchenie. Imeyutsya mnozhestvo ICMP soobshchenij, bol'shinstvo iz nih soobshchayut o kakih-libo oshibkah. Odnako, imeetsya ochen' interesnoe soobshchenie nazvannoe Perenapravlyayushchim soobshcheniem (Redirect message). Ono geniriruetsya modulem marshrutizacii, kogda on obnaruzhivaet chto drugoj host ispol'zuet ego kak gateway, hotya imeetsya bolee korotkij marshrut. Naprimer, posle zagruzki tablicy marshrutizacii na sophus mozhet byt' nepolnoj: ona soderzhit marshruty k seti matematikov, k FDDI magistrali, a po umolchaniyu ukazan gateway Groucho Vychislitel'nogo centra (gcc1). Poetomu, lyubye pakety dlya quark posylayutsya cherez gcc1, hotya bystree bylo by cherez niels (gateway v otdele fiziki). Pri poluchenii takih dejtagram, gcc1 budet izveshchat' chto eto -- plohoj marshrut, i budet otpravlyat' paket k niels, v to zhe samoe vremya vozvrashchaya ICMP soobshchenie k sophus, pokazyvaya emu luchshij marshrut. |to kazhetsya ochen' razumnym, potomu chto propadaet neobhodimost' dopisyvat' novye marshruty vruchnuyu. Odnako budte ostorozhny, polagayas' na dinamicheskie shemy marshrutizacii, bud' to RIP ili ICMP perenapravlyayushchie soobshcheniya, eto ne vsegda horoshaya ideya. ICMP perenapravleniya i RIP predlagayut Vam malen'kij ili nikakoj vybor pri proverke, podlinnosti marshrutnoj informacii |to pozvolyaet zloumyshliniku polnost'yu razrushit' dvizhenie po seti, ili sdelat' chto-to eshche. 3.6. Sistema imen oblastej (Domain Name System) 3.6.1 Poisk po imeni (Hostname Resolution) < > Kak opisano vyshe, adresaciya v TCP/IP seti krutitsya vokrug 32 razryadnyh nomerov. Odnako, Vam budet trudno zapomnit' dazhe nekotorye iz - 44 - nih. Poetomu, hosty chashche izvestny pod "obychnymi", imena tipa gauss ili strange. Poetomu trebuyutsya programmy dlya polucheniya IP adresa po imeni mashiny |tot process nazvan Hostname resolution. Prilozhenie, kotoroe hochet najti IP adres po dannomu imeni hosta, ne dolzhen pytat'sya sdelat' eto sobstvennymi silami Vmesto etogo, ono obrashchaetsya k bibliotechnym funkciyam, kotorye dlya etogo i napisany, oni nazyvayutsya gethostbyname (3) i gethostbyaddr (3). Tradicionno, eti i ryad drugih procedur byli sgruppirovany v otdel'noj biblioteke nazvannoj resolver; v Linux, eto chast' standartnoj libc. Na malen'koj seti, podobnoj Ethernet, ili dazhe na neskol'kih, ne ochen' trudno podderzhivat' tablicu, sopostavlyayushchuyu imena hosta k IP adresam. |ta informaciya obychno hranitsya v fajle /etc/hosts. Pri dobavlenii ili peremeshchenii hosta, ili pri perenaznachenii adresov, vse chto Vy dolzhny sdelat' -- eto izmenit' fajl hosts na vseh hostah. Ochevidno, chto eto budet dostatochno trudno v setyah s bol'shim kolichestvom mashin. Odno iz reshenij etoj problemy -- NIS, Setevaya Informacionnaya Sistema razrabotannaya Sun Microsystems, nazvannoe YP, ili ZHeltymi Stranicami. NIS hranit hosts fajl (i druguyu informaciyu) v baze dannyh na glavnom hoste, ot kotorogo klienty mogut vosstanovit' svoi fajly esli eto neobhodimo. Vse eshche, |tot sposob podhodit tol'ko dlya setej srednego razmera, potomu chto on trebuet podderzhivat' polnuyu bazu dannyh kak na central'noj mashine, tak i na vseh ostal'nyh. V Internet, pervonachal'no informaciya ob adresah hranilas' v edinstvennom fajle HOSTS.TXT. |tot fajl podderzhivalsya v NIC, i dolzhen byl zagruzhat'sya vsemi uchastvuyushchimi uchastkami. Kogda set' vyrosla, vozniklo neskol'ko problem. Postoyannoe obnovlenie i postoyannaya perekachka fajla HOSTS.TXT regulyarno trebovali vse bol'she resursov, nagruzka na server, kotoryj etim zanimalsya stala slishkom vysoka. No eshche bol'shej problemoj stalo pridumyvanie novyh (ne sovpadayushchih s prezhdnimi) imen. Vot pochemu, v 1984 g, vvedena novaya shema -- DNS, razrabotannaya Paul Mockapetris i reshivshaya obe problemy odnovremenno. - 45 - 3.6.2. O DNS DNS organizovyvaet imena hostov po oblastyam(domain). Oblast' -- nabor kak-to svyazannyh uchastkov, eto mogut byt' mashiny odnoj seti (na primer vse mashiny v universitetskom gorodke, ili vseh hosty v BITNET), vse oni mogut prinadlezhat' opredelennoj organizacii (tipa amerikanskogo pravitel'stva), ili oni prosto geograficheski blizki. Naprimer, universitety sgruppirovany v edu oblasti, s kazhdym Universitetom ili Koledzhom, ispol'zuyushchim otdel'nuyu podoblast', v kotoroj i nahodyatsya vse ego hosty. Groucho Marx Universitetu mozhno davat' groucho.edu oblast', Otdelu matematiki -- maths.groucho.edu. Host na dannoj seti k imeni oblasti dobavlyaet svoe imya i takim obrazom poluchaet svoe polnoe imya v Internet erdos byl by izvesten kak erdos.maths.groucho.edu. Kartinka 3.6.2 izobrazhaet prostranstvo imen. Zapis' v korne etogo dereva, kotoraya oboznachena edinstvennoj tochkoj, ves'ma tochno nazvana oblast'yu kornya, i ona svyazana so vsemi drugimi oblastyami. CHtoby pokazat' chto v dannom meste pishetsya polnoe imya hosta, a ne imya otnositel'no lokal'noj oblasti, inogda posle imeni stavyat tochku. |to znachit, chto poslednij komponent imeni prinadlezhit oblasti kornya. V zavisimosti ot mestopolozheniya v ierarhii imeni, oblast' mozhet byt' nazvana top-level, second-level, ili third-level (verhneurovnevoj, vtorogo urovnya, ili tret'ego urovnya). Bol'she kolichestvo urovnej vstrechaetsya redko. Vot neskol'ko verhnih oblastej, kotorye Vy mozhete chasto uvidet': edu ( Glavnym obrazom SSHA ) obrazovatel'nye uchrezhdeniya podobno universitetam, i t.d.. com Kommercheskie organizacii, kompanii. org nekommercheskie organizacii. CHasto chastnye UUCP seti nahodyatsya v etoj oblasti. net Gateways i drugie administrativnye hosty v seti. - 46 - mil amerikanskie voennye uchrezhdeniya. gov amerikanskie pravitel'stvennye uchrezhdeniya. uucp Oficial'no, vse imena uchastkov prezhde ispol'zuemye kak UUCP imena bez oblastej, byli peremeshcheny v etu oblast'. Tehnicheski, pervyj chetyre iz nih prinadlezhat amerikanskoj chasti Internet, no tam vstrechayutsya i ne amerikanskie uchastki. |to osobenno verno dlya net oblasti. Odnako, mil i gov ispol'zuyutsya isklyuchitel'no v SSHA. Vne SSHA, kazhdaya strana voobshche ispol'zuet sobstvennuyu oblast', nazvanuyu po imeni strany i sostoyashchaya iz dvuh bukv opredelennyh v ISO-3166. Finlyandiya, naprimer, ispol'zuet fi oblast', fr ispol'zuetsya Franciej, de Germaniej, au Avstraliej i t.d.. Nizhe etoj vysokopostavlennoj oblasti, NIC kazhdoj strany mozhet svobodno razdavat' imena hostam. Avstraliya, naprimer, imeet oblasti vtorogo urovnya podobnye mezhdunarodnym vysshim oblastyam, nazvannym com.au, edu.au, i tak dalee. Drugie, podobno Germanii, ne ispol'zujte etot dopolnitel'nyj uroven', no ispol'zuyut slegka dlinnye imena, kotorye neposredstvenno otnosyatsya k organizaciyam upravlyayushchih specificheskoj oblast'yu. Naprimer, na primer ftp.informatik.uni-erlangen.de. chonechno, eti nacional'nye oblasti ne podrazumevayut chto host raspolozhennyj nizhe fakticheski raspolozhen v toj zhe strane; eto tol'ko signaliziruet chto host registrirovalsya v NIC etoj strany . SHvedskij izgotovitel' mog by imet' otdelenie v Avstralii, i vse zhe registrirovat' vse hosty v se oblasti. Teper', organizaciya prostranstva imen v ierarhii imen oblastej priyatno reshaet problemu unikal'nosti imen; s DNS, imya hosta dolzhno byt' unikal'no tol'ko v predelah odnoj oblasti Krome togo, polnost'yu kvalificirovannye imena ves'ma legko zapomnit'. No DNS delaet ne tol'ko eto: on pozvolyaet Vam peredat' rabotu s podoblastyami mestnym administratoram. Naprimer, administrator v Groucho Vychislitel'nom Centre mog by sozdat' podoblast' dlya kazhdogo otdela; my uzhe - 47 - stolknulis' s podoblastyami fizikov i matematikov. Kogda on reshit, chto set' v Otdele Fiziki slishkom bol'shaya i haotichnaya, chtoby spravit'sya s nej iz vne , on mozhet prosto peredat' kontrol' nad physics.groucho.edu oblast'yu administratoram etoj seti. Togda oni svobodny ispol'zovat', lyubye imena hostov i naznachat' ih IP adresa v predelah podseti bez vmeshatel'stva sverhu. Tak, prostranstvo imeni razdrobleno na zony, kotoraya upravlyaetsya svoej oblast'yu. Obratite Vnimanie Na razlichie mezhdu zonoj i oblast'yu: oblast' groucho.edu zatragivaet vse mashiny v Groucho Marx Universitete, v to vremya kak zona groucho.edu vklyuchaet tol'ko hostov kotorye rabotayut v komp'yuternom centre neposredstvenno, naprimer v otdele matematiki. Host v otdele fiziki prinadlezhat drugoj zone, a imenno physics.groucho.edu. Na kartinke 3.6.2, nachalo zony otmecheno malen'kim kruzhochkom sprava ot imeni oblasti. 3.6.3 Poisk imeni s pomoshch'yu DNS Na pervyj vzglyad, vse eti sueta s oblastyami i zonami kazhetsya delaet poisk adresa uzhasno slozhnym delom. V konce koncov, esli net central'nogo organa kontrolirueshchego kakie imena svyazany s kakim adresom, togda kak - skromnoe prilozhenie dolzhno ego uznavat'?! Teper' nachinaetsya dejstvitel'no tehnicheskaya chast' opisaniya DNS. Esli Vy hotite vyyasnyat' IP adres erdos, togda, DNS govorit, idi i sprosi lyudej, kotorye upravlyayut im, i oni otvetyat Vam. Fakticheski, DNS - gigantskaya raspredelennaya baza dannyh. |to osushchestvleno posredstvom tak nazyvaemyh serverov imen(name server), kotorye snabzhayut vseh informaciej o dannoj oblasti ili neskol'kih oblastyah srazu. Dlya kazhdoj zony imeyutsya po krajnej mere dva servera imen, kotorye soderzhat vsyu informaciyu otnositel'no hostov v etoj zone. CHtoby poluchit' IP adres erdos, vse chto Vy dolzhny sdelat' -- obratitsya k serveru imen zony groucho.edu, kotoryj i peredast Vam trebuemye dannye. Legko skazat', a kak eto sdelat', podumali vy. Tak kak najti server imen v Groucho Marx Universitet? V sluchae esli vash komp'yuter ne - 48 - oborudovan address-resolving oracle, DNS takzhe obespechivaet eto. Kogda vashe prilozhenie hochet najti informaciyu otnositel'no erdos, ono vhodit v kontakt s mestnym serverom imen, kotoryj provodit tak nazyvaemyj iteracionnyj opros. Snachala on posylaet zapros serveru imen ob oblasti kornya, sprashivaya o adrese erdos.maths.groucho.edu. Server imen kornya soobshchaet, chto eto imya ne prinadlezhit zone ego polnomochij, no vmesto etogo otsylaet k edu oblasti. Takim obrazom, on predlagaet Vam vojti v kontakt s serverom imen zony edu dlya polucheniya bol'shego kolichestva informacii, i prilagaet spisok vseh serverov imen edu vmeste s ih adresami. Vash mestnyj server imen poshlet zapros odnomu iz nih, naprimer a.isi.edu. Takzhe kak serveru imen kornya, a.isi.edu znaet chto lyudi groucho.edu upravlyayut svej zonoj sami, i napravit Vas na ih servera. Mestnyj server imen zaprosit odnogo iz nih, kotoryj nakonec raspoznaet imya, kak prinadlezhashchee k ego zone, i vernet IP adres. Kazhetsya, chto dlya poiska odnogo IP adresa tratitsya slishkom mnogo resursov. no eto ne sravnimo men'she, chem pri prezhdnej sheme s HOSTS.TXT. No vse eshche imeyutsya mesta dlya usovershenstvovaniya etoj shemoj. CHtoby umen'shit' vremya otveta dlya budushchih zaprosov, server imeni hranit poluchennuyu ran'she informaciyu v keshe. Tak chto v sleduyushchij raz, kogda lyuboj drugoj iz vashej lokal'noj seti zahochet najti adres hosta v groucho.edu oblasti, vash server imen ne provedet vse snova, a budet srazu obrashchat'sya k serveru imen groucho.edu. Konechno, server imen ne budet hranit' etu informaciyu vsegda, a otbrosit ee cherez nekotoroe vremya. |tot interval vremeni nazvan time to live(vremenem zhizni), ili TTL. TTL zadaetsya administratorom dannoj zony. 3.6.4 Oblastnye servera imen (Domain Name Servers) Servera imen, kotorye soderzhat vsyu informaciyu otnositel'no hostov v predelah dannoj zony nazvany avtoritarnymi dlya etoj zony i inogda upominayutsya kak master name servers. Lyuboj zapros otnositel'no hosta v predelah etoj zony budet v konce koncov peredan odnomu iz etih serverov. - 49 - CHtoby obespechit' adekvatnuyu kartinu zony, eti servera dolzhny byt' horosho sinhronizirovany. |to dostigaetsya s pomoshch'yu sozdaniya odnogo glavnogo servera, kotoryj zagruzhaet zonal'nuyu informaciyu iz fajlov dannyh, a drugie vtorichnye servera cherez ravnye intervaly vremeni kachayut eti dannye s glavnogo servera. Odna iz prichin imet' neskol'ko serverov imen sostoit v tom, chtoby raspredelyat' gruz raboty, drugaya -- nadezhnost'. Kogda odna mashina s serverom imen lomaetsya, vse zaprosy budut posylat'sya drugim serveram. Konechno, eta shema ne zashchishchaet Vas ot sboev servera, pri kotoryh on otsylaet nepravil'nye otvety na vse zaprosy DNS, naprimer ot oshibok v programme servera. Konechno, Vy mozhete takzhe sozdat' server imeni, kotoryj ne budet avtoritarnym dlya lyuboj oblasti. |tot tip serverov ispol'zuetsya chtoby proveryat' zaprosy ot mestnyh prilozhenij i keshirovat' otvety. Poetomu ego nazyvayut caching-only serverom. 3.6.5 Baza dannyh DNS My videli, chto DNS imeet delo ne tol'ko s IP adresami hostov, no takzhe obmenivaetsya informaciej otnositel'no serverov imen. V DNS baze dannyh fakticheski imeetsya celaya kucha razlichnyh tipov zapisej. Edinica informacii v DNS baze dannyh nazvana resource record (zapis'yu resursa), ili RR. Kazhdaya zapis' imeet opredelennyj tip, opisyvayushchij tip dannyh, kotorye v nej zapisany, i opredelyayushchij tip seti, k kotoroj ona primenyaetsya. Poslednij ispol'zuetsya pri opredelenii shemy adresovaniya, tipa IP adresov (IN klass), ili adresov v Hesiod setyah (ispol'zuemye v MIT), i dr. Osnovnoj zapis'yu resursov yavlyaetsya zapis', kotoraya svyazyvaet polnoe imya oblasti s IP adresom. Konechno, host mozhet imet' bol'she chem odno imya. Odnako, odno iz etih imen dolzhno byt' opredelenno kak oficial'noe, ili kanonicheskoe imya hosta, v to vremya kak ostal'nye prosto psevdonimy. Razlichie mezhdu nimi v tom, chto kanonicheskoe imya hosta svyazano s A zapis'yu, v to vremya kak drugie tol'ko s zapis'yu tipa CNAME, kotoraya ukazyvaet na - 50 - kanonicheskoe imya hosta. My ne budem privodit' zdes' vse tipy zapisej, a sdelaem eto pozzhe, v drugoj glave, zdes' zhe ogranichimsya kratkim primerom. Kartinka 3.6.5 pokazyvaet chast' bazy dannyh oblasti kotoraya zagruzhena na servere imen dlya zony physics.groucho.edu. Krome A i CNAME zapisi, Vy mozhete videt' special'nuyu, zanimayushchuyu neskol'ko strok, zapis' sverhu fajla. |to - SOA zapis' resursa, rasshifrovyvaetsya Start of Authority (Nachalo Vlasti), kotoraya soderzhit obshchuyu informaciyu otnositel'no zony, dlya kotoroj etot server yavlyaetsya avtoritarnym. Ona vklyuchaet, naprimer, vremya zhizni dlya vseh zapisej. Obratite Vnimanie chto vse imena v fajle s primerom, kotorye ne zakanchivayutsya tochkoj interpretiruyutsya otnositel'no groucho.edu oblasti. Special'noe imya "@", ispol'zuemoe v SOA zapisi pri obrashchenii k imeni dannoj oblasti. My videli, chto servera imen dlya groucho.edu oblasti tak ili inache dolzhen znat' hot' chto-to otnositel'no zony fizikov tak, chtoby napravlyat' zaprosy serveram imen. |to obychno dostigaetsya paroj zapisej: NS zapis' daetsya FQDN, i A zapis', associiruyushchaya ego imya s IP adresom. Tak kak eti zapisi poyavlyayutsya vmeste, oni chasto nazyvayutsya skleennymi zapisyami. |to -- fakticheski edinstvennyj sluchai zapisi, v kotoroj roditel'skaya zona derzhit informaciyu otnositel'no hostov v zone podchinennogo. Skleennye zapisi ukazyvayushchie na servera imen dlya physics.groucho.edu pokazany na risunke 3.6.5. ; ; Authoritative Information on physics.groucho.edu @ IN SOA { niels.physics.groucho.edu. hostmaster.niels.physics.groucho.edu. 1034 ; serial no 360000 ; refresh 3600 ; retry 3600000 ; expire 3600 ; default ttl - 51 - } ; ; Name servers IN NS niels IN NS gauss.maths.groucho.edu. gauss.maths.groucho.edu. IN A 149.76.4.23 ; ; Theoretical Physics (subnet 12) niels IN A 149.76.12.1 IN A 149.76.1.12 nameserver IN CNAME niels otto IN A 149.76.12.2 quark IN A 149.76.12.4 down IN A 149.76.12.5 strange IN A 149.76.12.6 ... ; Collider Lab. (subnet 14) boson IN A 149.76.14.1 muon IN A 149.76.14.7 bogon IN A 149.76.14.12 ... Kartinka 5. fragment fajla amed.hosts dlya Otdela Fiziki. 3.6.6. Obratnyj poisk. Posle obnaruzheniya IP adresa, prinadlezhashchego hostu, inogda zhelatel'no vyyasnyat' kanonicheskoe imya hosta, sootvetstvuyushchee dannomu adresu. |to nazyvaetsya reverse mapping(obratnoe otobrazhenie) i ispol'zuetsya neskol'kimi servesami, chtoby proverit' identichnost' klienta. Pri ispol'zovanii edinstvennogo hosts fajla, obratnyj poisk zaklyuchaetsya prosto v proverke etogo fajla. V DNS, konechno ne provoditsya prosmotr vsego adresnogo prostransva. Vmesto etogo, sozdana special'naya oblast', inaddr.arpa, ona soderzhit IP adresa vseh hostov. v perevernutoj dotted-quad zapisi Naprimer, IP adres 149.76.12.4 sootvetstvuet imeni 4.12.76.149.in-addr.arpa. Tip zapisi resursa, svyazyvayushchij eto imya s imenem, nazyvaetsya PTR. - 52 - ; ; Zone data for the groucho.edu zone. @ IN SOA { vax12.gcc.groucho.edu. hostmaster.vax12.gcc.groucho.edu. 233 ; serial no 360000 ; refresh 3600 ; retry 3600000 ; expire 3600 ; default ttl } .... ; ; Glue records for the physics.groucho.edu zone physics IN NS niels.physics.groucho.edu. IN NS gauss.maths.groucho.edu. niels.physics IN A 149.76.12.1 gauss.maths IN A 149.76.4.23 ... Kartinka 6. fragment fajla named.hosts dlya GMU. Sozdanie zony polnomochij obychno oznachaet chto ee administratoram dayut polnyj kontrol' nad tem kak naznachat' adresa i imena hostov. Tak kak oni obychno upravlyayut odnoj ili bolee IP setyami ili podsetyami, odna DNS zona mozhet ohvatyvat' neskol'ko IP setej. Otdel Fiziki, naprimer, vklyuchaet podseti 149.76.8.0, 149.76.12.0, i 149.76.14.0. Kak sledstvie, novye zony dolzhny byt' zapisany v in-addr.arpa oblasti: 8.76.149.in-addr.arpa, 12.76.149.in-addr.arpa, i 14.76.149.in-addr.arpa. Inache, ustanovka novogo hosta v Collider laboratorii trebovala by obrashcheniya k roditel'skoj oblasti chtoby otmetitsya v ee in-addr.arpa fajle. Zonal'naya baza dannyh dlya podseti 12 pokazana na kartinke 3.6.6. Sootvetstvuyushchie skleennye zapisi v baze dannyh zony roditelya pokazyvaetsya na kartinke 3.6.6. ; - 53 - ; the 12.76.149.in-addr.arpa domain. @ IN SOA { niels.physics.groucho.edu. hostmaster.niels.physics.groucho.edu. 233 360000 3600 3600000 3600 } 2 IN PTR otto.physics.groucho.edu. 4 IN PTR quark.physics.groucho.edu. 5 IN PTR down.physics.groucho.edu. 6 IN PTR strange.physics.groucho.edu. Kartinka 7. fragment fajla named.rev dlya podseti 12. ; ; the 76.149.in-addr.arpa domain. @ IN SOA { vax12.gcc.groucho.edu. hostmaster.vax12.gcc.groucho.edu. 233 360000 3600 3600000 3600 } ... ; subnet 4: Mathematics Dept. 1.4 IN PTR sophus.maths.groucho.edu. 17.4 IN PTR erdos.maths.groucho.edu. 23.4 IN PTR gauss.maths.groucho.edu. ... ; subnet 12: Physics Dept, separate zone 12 IN NS niels.physics.groucho.edu. IN NS gauss.maths.groucho.edu. niels.physics.groucho.edu. IN A 149.76.12.1 gauss.maths.groucho.edu. IN A 149.76.4.23 ... Kartinka 8. fragment fajla named.rev dlya seti Odno vazhnoe sledstvie etogo to, chto zony mogut sozdavat'sya tol'ko kak nabory IP setej, i, dazhe kruche, kolichestvo nulevyh bitov v netmasks dolzhno vyt' kratno 8. Vse podseti v Groucho Marx Universitete - 54 - imeyut netmask 255.255.255.0, tak chto in-addr.arpa zona mozhet byt' sozdana dlya kazhdoj podseti. Odnako, esli netmask 255.255.255.128, sozdanie zon dlya podseti 149.76.12.128 budet nevozmozhno, potomu chto net nikakoj vozmozhnosti soobshchit' DNS, chto 12.76.149.in-addr.arpa oblast' byla razdroblena na dve zony, s imenami hostov raspolagayushchimisya ot 1 do 127, i 128 do 255, sootvetstvenno. . - 55 - 4. Konfigurirovanie setevyh apparatnyh sredstv. 4.1. Ustrojstva, drajvera, i vse eto Do sih por, my ves'ma nemnogo govorili otnositel'no setevyh interfejsov i obshchih problem TCP/IP, no ne govorili o tom, chto proishodit, kogda "setevoj kod" v yadre obrashchaetsya k apparatnym sredstvam. Dlya etogo, my dolzhny nemnogo pogovorit' o koncepciyah interfejsov i drajverov. Vo-pervyh, konechno, imeyutsya neposredstvenno apparatnye sredstva, naprimer Ethernet karta: plastina iz epoksidnoj smoly, utykannaya bol'shim kolichestvom kroshechnyh chipov s glupymi nomerami na nih, i votknutaya v slot vashego PC. |to - to chto my obychno nazyvaem ustrojstvom. Dlya togo chtoby ispol'zovat' Ethernet kartu, neobhodimy special'nye funkcii, raspolozhennye v yadre vashego Linux, kotorye znayut kak rabotat' s etim ustrojstvom. |to tak nazyvaemye drajvera ustrojstv. Naprimer, Linux imeet drajvera ustrojstva dlya neskol'kih marok Ethernet plat kotorye ochen' pohozhi po vypolnyaemym funkciyam. Oni izvestny kak "Becker Series Drivers" ,i nazyvayutsya tak po imeni ih avtora, Donald Becker. Drugoj primer - D-link drajver, kotoryj rabotaet s adapterom D-link paketov, prisoedinyaemym k parallel'nomu portu. No, chto my podrazumivaem, kogda govorim chto drajver "upravlyaet" ustrojstvom? Davajte vernemsya k Ethernet plata, kotoruyu my uzhe upominali. Drajver dolzhen byt' sposoben rabotat' s pereferiej etoj platy: on dolzhen posylat' komandy i dannye plate, v to vremya kak plata dolzhna peredat' poluchennye dannye drajveru. V PC, eta svyaz' ustanavlivaetsya cherez oblast' pamyati vvoda-vyvoda kotoraya yavlyaetsya otobrazheniem registrov platy i t.p. Vse komandy i dannye kotorye yadro posylaet plate prohodyat cherez eti registratory. Pamyat' vvoda-vyvoda opisyvaetsya ukazaniem nachal'nogo(ili osnovnogo) - 56 - adresa Tipichnye osnovnye adresa dlya Ethernet plat 0x300, ili 0x360. Obychno, Vy ne dolzhny volnovat'sya otnositel'no problem apparatnyh sredstv, tipa osnovnogo adresa, potomu chto yadro delaet popytku vo vremya zagruzki obnaruzhit' mestopolozhenie platy. |to nazyvaetsya autoprobing(avtomaticheskij poisk), kotoryj oznachaet chto yadro vo vremya zagruzki schityvaet neskol'ko uchastkov pamyati i sravnivaet schitannye dannye s tem, chto dolzhny byt', esli ustanovlena Ethernet. Odnako, sushchestvuyut Ethernet platy, kotorye yadro ne mozhet avtomaticheski obnaruzhit'; eto chasto sluchaetsya s deshevymi Ethernet kartami. Takzhe, vo vremya zagruzki, yadro budet pytat'sya obnaruzhit' tol'ko odno Ethernet ustrojstvo. Esli vy ispol'zuete bol'she chem odnu platu, Vy dolzhny yavno soobshchit' yadru ob etoj plate. Drugoj parametr, kotoryj Vy mogli by soobshchit' yadru -- interrupt request channel (kanal preryvaniya zaprosa). Komponenty apparatnyh sredstv obychno preryvayut yadro kogda oni nuzhdayutsya vo vnimanii, naprimer kogda pribyli dannye, ili proizoshli drugie sobytiya. V PC, preryvanie mozhet proishodit' na odnom iz 15 kanalov (0, 1, 3 i do 15). Nomer preryvaniya naznachennyj komponentu apparatnyh sredstv nazyvaetsya interrupt request channel ili IRQ. Kak opisano v glave 3., yadro obrashchaetsya k ustrojstvam cherez tak nazyvaemyj interfejs. Interfejsy predlagayut abstraktnyj nabor funkcij, kotorye yavlyayutsya standartnymi dlya vseh tipov apparatnyh sredstv, tipa posylki ili polucheniya dejtagram. Interfejsy identificiruyutsya posredstvom imen. |ti imena opredelenny vnutri yadra, eto ne fajly ustrojstv v direktorii /dev. Tipichnye imena dlya interfejsov Ethernet. - eth0, eth1, i t.d. Naznachenie interfejsov dlya opredelennyh ustrojstv obychno zavisit ot sposoba, kotorym ustrojstva konfigurirovany; naprimer pervaya ustanovlennaya Ethernet plata stanet eth0, sleduyushchaya -- eth1, i tak dalee. Isklyuchenie iz etogo pravila - SLIP interfejsy, kotorye naznachayutsya dinamicheski; To est' vsyakij raz, kogda ustanavlivaetsya SLIP svyaz', posledovatel'nomu portu naznachaetsya interfejs - 57 - Kartinka probuet pokazat' svyaz' mezhdu apparatnymi sredstvami, drajverami ustrojstv i interfejsami. Vo vremya zagruzki, yadro pokazyvaet kakie ustrojstva obnaruzheny, i kakomu kakoj interfejs budet ustanovlen. Fragment tipichnogo ekrana zagruzki: This processor honours the WP bit even when in supervisor mode. Good. Floppy drive(s): fd0 is 1.44M Swansea University Computer Society NET3.010 IP Protocols: ICMP, UDP, TCP PPP: version 0.2.1 (4 channels) OPTIMIZE FLAGS TCP compression code copyright 1989 Regents of the University of California PPP line discipline registered. SLIP: version 0.7.5 (4 channels) CSLIP: code copyright 1989 Regents of the University of California dl0: D-Link DE-600 pocket adapter, Ethernet Address: 00:80:C8:71:76:95 Checking 386/387 coupling... Ok, fpu using exception 16 error reporting. Linux version 1.1.11 (okir@monad) #3 Sat May 7 14:57:18 MET DST 1994 Zdes' pokazano chto yadro kompilirovalos' s TCP/IP, i s drajverami dlya SLIP, CSLIP, i PPP. Tret'ya stroka c nizu soobshchaet, chto byl obnaruzhen adapter d-link, i on ustanovilsya kak interfejs dl0. Esli Vy imeete Ethernet kartu, yadro obychno pechataet stroku, nachinayushchuyusya s eth0, i soprovozhdaemuyu tipom obnaruzhennoj karty. Esli Vy imeete Ethernet kartu, no ne uvideli eto soobshchenie, eto oznachaet chto yadro nesposobno obnaruzhit' vashu platu. Ob etom my pogovorim pozzhe. 4.2. Konfigurirovanie yadra Bol'shinstvo Linux rasprostranyayutsya vmeste s zagruzochnymi disketami, rabotuyushchimi so vsemi osnovnymi tipami apparatnyh sredstv PC. |to oznachaet chto yadro na etih disketah imeet vse vidy drajverov, mnogie iz kotoryh Vam nikogda ne prigodyatsya, no zanimayut dragocennuyu pamyat' sistemy potomu chto chasti yadra ne svopiruyutsya. Poetomu, Vy dolzhny sobrat' vashe sobstvennoe yadro, vklyuchaya tol'ko neobhodimye Vam drajvera. - 58 - Pri upravlenii Linux sistemoj, Vy dolzhny byt' znakomy so stroeniem yadra. Osnovy etogo ob®yasnyayutsya v "Installation and Getting Started" napisannoj Matt Welsh, kotoryj yavlyaetsya takzhe chast'yu proekta Linux dokumentacii. Potomu, v etoj sekcii my budem obsuzhdat' tol'ko te storony konfiguracii Linux, kotorye otnosyatsya k seti. Pri zapuske make config, snachala Vas sprashivayut obshchie voprosy konfiguracii, naprimer hotite li Vy v yadre imet' matematicheskij emulyator ili net, i t.d.. Odin iz etih voprosov -- hotite li Vy podderzhku TCP/IP seti. Vy dolzhny otvetit' y, chtoby poluchit' yadro sposobnoe rabotat' s set'yu. 4.2.1. Opcii yadra v Linux 1.0 i vyshe Posle togo, kak osnovnaya chast' voprosov zadana, konfigurator prodolzhit sprashivat' Vas otnositel'no razlichnyh osobennostej tipa SCSI drajverov, i t.d.. Posleduyushchij spisok voprosov otnositsya k problemam podderzhki seti. Tochnyj nabor opcij konfiguracii postoyanno menyaetsya, iz-za prodolzhayushchejsya razrabotki. Tipichnyj spisok opcij predlagaemyh bol'shinstvom versij yadra (v osnovnom v 1.0 1.1) napominaet etot ( kommentarii dayutsya italics shriftom): * * Network device support * Network device support? (CONFIG ETHERCARDS) [y] Nesmotrya na makro nazvanie ukazannoe v skobkah, Vy dolzhny otvetit' na etot vopros y, esli Vy hotite ispol'zovat' lyuboj tip setevyh ustrojstv, nezavisimo ot togo yavlyaetsya li ono Ethernet, SLIP, ili PPP. Pri otvete y, podderzhka dlya ustrojstv Ethernet-tipa razreshaetsya avtomaticheski. Podderzhku dlya drugih tipov setevyh drajverov nuzhno razreshit' otdel'no: SLIP (serial line) support? (CONFIG SLIP) [y] SLIP compressed headers (SL COMPRESSED) [y] PPP (point-to-point) support (CONFIG PPP) [y] - 59 - PLIP (parallel port) support (CONFIG PLIP) [n] |ti voprosy kasayutsya razlichnyh protokolov svyazi podderzhivaemyh Linux. SLIP pozvolyaet Vam transportirovat' IP dejtagramy cherez posledovatel'nye linii. Opciya szhatiya zagolovkov obespechivaet podderzhku CSLIP, pozvolyayushchij szhimat' TCP/IP zagolovki vsego v tri bajta. Obratite Vnimanie chto eta opciya yadra ne vklyuchaet CSLIP avtomaticheski, ona prosto obespechivaet neobhodimye funkcii dlya nego. PPP - drugoj protokol dlya postroeniya setej na posledovatel'nymi liniyah. On eshche bolee gibok chem SLIP, i ne ogranichen tol'ko IP, no takzhe podderzhivaet IPX. Tak kak podderzhka PPP byla zakonchena tol'ko nedavno, eta opciya mozhet byt' ne predstavlena v vashem yadre. PLIP obespechivaet peresylku IP dejtagram cherez parallel'nyj port. On glavnym obrazom ispol'zuetsya dlya togo chtoby svyazat'sya s PC pod upravleniem DOS. Sleduyushchie voprosy imeyut otnoshenie k Ethernet platami ot razlichnyh postavshchikov. CHem bol'she stanovitsya drajverov, tem bol'she stanet voprosov. Esli vy konfiguriruete yadro dlya neskol'kih razlichnyh mashin, Vy mozhete ustanovit' bol'she chem odin drajver. NE2000/NE1000 support (CONFIG NE2000) [y] WD80*3 support (CONFIG WD80x3) [n] SMC Ultra support (CONFIG ULTRA) [n] 3c501 support (CONFIG EL1) [n] 3c503 support (CONFIG EL2) [n] 3c509/3c579 support (CONFIG EL3) [n] HP PCLAN support (CONFIG HPLAN) [n] AT1500 and NE2100 (LANCE and PCnet-ISA) support (CONFIG LANCE) [n] AT1700 support (CONFIG AT1700) [n] DEPCA support (CONFIG DEPCA) [n] D-Link DE600 pocket adaptor support (CONFIG DE600) [y] AT-LAN-TEC/RealTek pocket adaptor support (CONFIG ATP) [n] * * CD-ROM drivers * - 60 - ... Nakonec, v sekcii fajlovoj sistemy, skript konfiguracii sprosit Vas hotite li Vy podderzhku NFS. NFS pozvolyaet Vam eksportirovat' fajlovye sistemy s drugih hostov, tak chto fajly i direktorii kazhutsya nahodyashchimisya na odnoj mashine. NFS filesystem support (CONFIG NFS FS) [y] 4.2.2. Opcii yadra v Linux 1.1.14 i vyshe Pri zapuske Linux 1.1.14, v kotoryj dobavili podderzhku IPX, procedura konfiguracii slegka izmenena. Obshchaya sekciya opcij teper' sprosit hotite li Vy podderzhku seti voobshche. CHto nemedlenno soprovozhdaetsya paroj voprosov o raznyh setyah. * * Networking options * TCP/IP networking (CONFIG INET) [y] CHtoby ispol'zovat' TCP/IP set', Vy dolzhny otvetit' na etot vopros y. Esli Vy otvechaete n, Vy budete vse eshche sposobny sobirat' yadro s podderzhkoj IPX. IP forwarding/gatewaying (CONFIG IP FORWARD) [n] Vy dolzhny zdes' otvetit' Y, esli vasha sistema dejstvuet kak gateway mezhdu dvumya Ethernet, ili mezhdu Ethernet i SLIP, i t.d.. Hotya ne prichinit vreda ustanovit' ee po umolchaniyu, no chtoby otkonfigurirovat' host kak tak nazyvaemyj firewall, vy dolzhny otvetit' zdes' net. Firewalls -- hosty kotorye svyazany s dvumya ili bol'she setyami, no ne pozvolyayut im obshchat'sya. Obychno oni ispol'zuyutsya chtoby obespechit' pol'zovatelyam setej s dostupom k Internet minimal'nyj risk proniknoveniya iz vne. Pol'zovatelyam pozvolyaetsya vhodit' na firewall i rabotat' s Internet, no mashiny kompanii budut zashchishcheny ot napadenij iz vne, potomu chto lyubye vneshnie hosty ne mogut peresech' firewall. * - 61 - * (it is safe to leave these untouched) * PC/TCP compatibility mode (CONFIG INET PCTCP) [n] |ta opciya rabotaet s nesovmestimost'yu s nekotorymi versiyami PC/TCP, kommercheskimi TCP/IP vypolnennymi dlya DOS. Esli Vy razreshaete etu opciyu, Vy vse eshche budete sposobny obshchat'sya s normal'noj Unix mashinoj, no ona vredna dlya medlennyh soedinenij. Reverse ARP (CONFIG INET RARP) [n] |ta funkciya vklyuchaet RARP. RARP ispol'zuetsya bezdiskovymi klientami i X-terminalami vo vremya zagruzki dlya zaprosa svoego IP adres. RARP neobhodim tol'ko dlya raboty s etimi klientami. Samyj poslednij paket setevyh utilit (net-0.32d) soderzhit nebol'shuyu utilitu rarp kotoraya pozvolyaet Vam dobavlyat' sistemy v RARP kesh. Assume subnets are local (CONFIG INET SNARL) [y] Pri posylki dannyh po TCP yadro, pered peredachej ih IP, dolzhno razbivat' potok na neskol'ko paketov. Bol'shie pakety ispol'zuyutsya dlya raboty v lokal'noj seti tipa Ethernet, men'shie v sluchae, kogda dannye posylayutsya kuda-to daleko. Esli Vy zapreshchaete SNARL, yadro budet rabotat' tol'ko s lokal'nymi setyami, k kotorym on neposredstvenno podklyuchen. Tak, esli Vy posmotrite na set' klassa B v Groucho Marx Universitete, tam bol'shinstvo hostov podklyucheny k tol'ko odnomu ili dvum podsetyam. Esli Vy razreshaete SNARL, yadro budet predpolagat' chto vse podseti mestnye i ispol'zuyut bol'shie pakety pri razgovore s vsemi hostami v universitetskom gorodke. Esli Vy hotite ispol'zovat' men'shie razmery paketov dlya dannyh poslannyh opredelennym hostam (potomu chto, naprimer, dannye prohodyat cherez SLIP svyaz'), Vy mozhete cdelat' eto ispol'zuya mtu opcii marshrutizacii, kotorye kratko obsuzhdeny v konce etoj glavy. Disable NAGLE algorithm (normally enabled) (CONFIG TCP NAGLE OFF) [n] Pravila Nagle ispol'zuyutsya chtoby izbezhat' posylki malen'kih IP - 62 - paketov, takzhe nazvannye tinygrams. Tinygrams obychno sozdayutsya dialogovymi setevymi programmami, kotorye peredayut otdel'nye simvoly, tipa telnet ili rsh. Tinygrams mozhet stat' osobenno neudobnymi pri svyazi po uzkopolosnym liniyam. Nagle algoritm pytaetsya izbegat' ih sderzhivaya pri nekotoryh obstoyatel'stvah peredachu TCP dannyh. Vam stoit otklyuchit' Nalge algoritm, tol'ko esli u vas est' ser'eznye problemy s polucheniem paketov. The IPX protocol (CONFIG IPX) [n] |to opciya vklyuchaet podderzhku IPX, transportnyj protokol ispol'zuemyj Novell setyami. On vse eshche v razrabotke i ne ochen' polezen. Edinstvennaya pol'za -- obmen dannymi s IPX utilitami DOS i peredacha dannyh mezhdu vashimi novell setyami cherez PPP svyaz'. Podderzhka protokolov vysokogo urovnya dlya Novell seti v obozrimom budushchem ne budet, tak kak specifikacii besplatno ne dostat'. V yadre 1.1.16, Linux podderzhivaetsya eshche odin tip drajvera, dummy driver (fiktivnyj drajver). Sleduyushchij vopros poyavlyaetsya v nachale sekcii drajverov ustrojstv. Dummy net driver support (CONFIG DUMMY) [y] Fiktivnyj drajver v dejstvitel'nosti delaet nemnogo, no ves'ma polezen na avtonomnom ili SLIP hoste. |to v osnovnom zamaskirovannyj loopback interfejs. |tot vid interfejsa nuzhen na hostah, kotorye imeyut SLIP no ne imeyut Ethernet, no hotyat imet' interfejs, kotoryj vse vremya derzhit vash IP adres. CHut' bol'she on obsuzhdaetsya v sekcii 6.7.7 v glave 6 .. 4.3. Puteshestvie po setevym ustrojstvam Linux Linux yadro podderzhivaet neskol'ko drajverov dlya razlichnyh tipov oborudovaniya. |ta sekciya daet kratkij obzor semejstv dostupnyh drajverov, i imen interfejsov, ispol'zuemyh dlya nih. V Linux imeyutsya ryad standartnyh imen interfejsov, kotorye opisany nizhe. Bol'shinstvo drajverov podderzhivayut bol'she chem odin interfejs, - 63 - togda interfejsy perechislyayutsya kak v eth0, eth1, i t.d.. lo lokal'nyj interfejs dlya loopback. On ispol'zuetsya dlya otladki, a takzhe paroj setevyh prilozhenij. On rabotaet podobno zamknutomu ciklu, vozvrashchaya vse dejtagramy, peredannye emu, setevomu urovnyu togo zhe hosta. V yadre imeetsya vsego odno loopback ustrojstvo, i net bol'shogo smysla v nalichii men'shego ili bol'shego kolichestva. ethn n-aya Ethernet karta. |to imya interfejsa generiruetsya dlya bol'shenstva Ethernet plat. dln |to interfejs dostupa k D-Link DE-600 paketnomu adapteru (drugoe Ethernet ustrojstvo). Raznica v tom, chto DE-600 rabotaet cherez parallel'nyj port. sln n-yj SLIP interfejs. Pervaya posledovatel'naya liniya otkonfiguriruemaya pod SLIP stanovitsya sl0, i t.d.. YAdro podderzhivaet do chetyreh SLIP interfejsov. pppn n-yj PPP interfejs. Podobno SLIP interfejsam, PPP interfejs svyazan s posledovatel'noj liniej, esli tol'ko ona otkonfigurirovana dlya PPP. V nastoyashchee vremya podderzhivaetsya do chetyreh interfejsov. plipn n-yj PLIP interfejs. PLIP transportiruet IP dejtagramy po parallel'nym liniyam. Podderzhivaetsya do treh PLIP interfejsov. Oni ustanavlivayutsya PLIP drajverom pri zagruzke sistemy, i otobrazhayut parallel'nye porty. Dlya drugih drajverov interfejsa, kotorye mogut byt' dobavleny v budushchem, podobno ISDN ili AX.25, budut predostavleny drugie imena. V sleduyushchih sekciyah, my budem obsuzhdat' detali ispol'zovaniya drajverov opisannyh vyshe. 4.4. Ustanovka Ethernet - 64 - Sejchas Linux podderzhivaet razlichnye marki Ethernet kart. Bol'she vsego drajverov byli napisany Donald Becker (becker@super.org). On avtor semejstva drajverov dlya kart osnovannyh na National Semiconductor 8390 chipe; oni stali izvestnymi kak seriya Becker drajverov. Imeyutsya takzhe drajvera dlya pary izdelij dlya D-Link, sredi nih D-Link adapter, kotoryj predlagaet dostup k Ethernet cherez paralel'nyj port. Drajver dlya etot byl napisan Bjrn Ekwall (bj0rn@blox.se). DEPCA drajver byl napisan David C. Davies (davies@wanton.lkg.dec.com). 4.4.1. Prokladka Ethernet kabelya. Esli vy ustanavlivaete Ethernet vpervye v vashej zhizni, neskol'ko skazannyh zdes' slov mogut byt' vam polezny. Ethernet - ochen' chuvsvitelen k pravel'nosti prokladki kabelya. Kabel' dolzhen s oboih koncov zakryvatsya 50 Omnym rezistorom i ne kakih otvetvlenij. Esli Vy ispol'zuete tonkij kabel' s T-obraznymi BNC perehodami, eti perehody dolzhny byt' vkrucheny neposredstvenno v platu. Esli Vy ispol'zuete tolstyj kabel', Vy dolzhny prisoed