Linux NET-3-HOWTO, Linux w sieci Terry Dawson, VK2KTJ, terry@perf.no.itg.telstra.com.au v1.0, 22 luty 1997 wersja polska piotr.pogorzelski@ippt.gov.pl w1.0, kwiecieñ 1997 Obs³uga sieci w j±drze systemu Linux zosta³a napisana niemal od zera. Osi±gi sieci tcp/ip w najnowszych wersjach j±dra sprawiaj±, ¿e Linux staje siê godn± uwagi alternatyw± dla innych, dominuj±cych w tej dziedzinie systemów. Naszym celem jest opisanie w jaki sposób zain stalowaæ i skonfigurowaæ oprogramowanie sieciowe, oraz ró¿ne inne narzêdzia pomagaj±ce w obs³udze sieci. ______________________________________________________________________ Table of Contents: 1. Zmiany w stosunku do poprzedniej wersji 2. Wprowadzenie. 2.1. Uwagi na temat ego dokumentu 3. Jak korzystaæ z tego dokumentu (NET-3-HOWTO-HOWTO ?). 4. Informacje ogólne na temat pracy Linuxa w sieci. 4.1. Krótka historia rozwoju modu³ów sieciowych j±dra Linuxa. 4.2. Sk±d zdobyæ inne informacje na temat zastosowañ sieciowych Linuxa. 4.3. Sk±d zdobyæ inne, nie zwi±zane z Linuxem informacje na temat technik sieciowych. 5. Podstawowe informacje na temat konfigurowania sieci. 5.1. Czego potrzebujê aby rozpocz±æ? 5.1.1. Aktualne ¼ród³a j±dra. 5.1.2. Aktualne narzêdzia sieciowe. 5.1.3. Programy-aplikacje sieciowe. 5.1.4. Adresy. 5.2. GDzie umie¶ciæ polecenia koniguracyjne ? 5.3. Tworzenie interfejsów sieciowych. 5.4. Konfiguracja interfejsu sieciowego. 5.5. Konfiguracja resolvera nazw. 5.5.1. Co to jest nazwa? 5.5.2. Jakie inforamacje bêd± niezbêdne. 5.5.3. /etc/resolv.conf 5.5.4. /etc/host.conf 5.5.5. /etc/hosts 5.6. Konfiguracja interfejsu pêtli zwrotnej 5.7. Trasowanie (routing). 5.7.1. Do czego s³u¿y program 5.8. Konfiguracja serwerów i us³ug sieciowych. 5.8.1. (TT 5.8.1.1. Przyk³ad pliku 5.8.2. (TT 5.8.2.1. Przyk³ad pliku 5.9. Inne pliki konfiguracyjne zwi±zane z sieci±. files. 5.9.1. (TT 5.9.2. (TT 5.10. Bezpieczeñstwo sieciowe i sterowanie dostêpem. 5.10.1. /etc/ftpusers 5.10.2. /etc/securetty 5.10.3. Mechanizm sterowania dostêpem pakietu 5.10.3.1. /etc/hosts.allow 5.10.3.2. /etc/hosts.deny 5.10.4. /etc/hosts.equiv 5.10.5. Prawid³owa konfiguracja demona 5.10.6. Firewalle. 5.10.7. Inne sugestie. 6. Informacje specyficzne technologi sieciowej 6.1. ARCNet 6.2. Appletalk ( 6.2.1. Konfiguracja oprogramowania Appletalk. 6.2.2. Eksportowanie plików Linuxa przez Appletalk. 6.2.3. Udostêpnianie twojej drukarki pod Linuxem w sieci Appletalk. 6.2.4. Uruchamianie oprogramowania Appletalk. 6.2.5. Test oprogramowania appletalk. 6.2.6. Uwagi na temat korzystania z oprogramowania Appletalk. 6.2.7. Wiêcej informacji 6.3. ATM 6.4. AX25 ( 6.5. DECNet 6.6. EQL - multiple line traffic equaliser 6.7. Ethernet 6.8. FDDI 6.9. Frame Relay 6.10. Zliczanie ruchu (IP Accounting) 6.11. IP Aliasing 6.12. Filtrownie pakietów (IP Firewalling) 6.13. IPX ( 6.14. IPv6 6.15. ISDN 6.16. IP Masquerade 6.17. IP Transparent Proxy 6.18. Mobile IP 6.19. Multicast 6.20. NetRom ( 6.21. PLIP 6.21.1. Schemat kabla do po³±czenia PLIP. 6.22. PPP 6.22.1. Utrzymywanie za pomoc± 6.23. Rose protocol ( 6.24. SAMBA - `NetBEUI', `NetBios' support. 6.25. Klient protoko³u SLIP 6.25.1. dip 6.25.2. slattach 6.25.3. Kiedy u¿ywaæ ka¿dego z tych programów ? 6.25.4. Statyczny serwer SLIP linie modemowe i programem DIP. 6.25.5. Dynamic SLIP server with a dialup line and DIP. 6.25.6. Korzystanie z programu dip. 6.25.7. Sta³e po³±czenie SLIP przez liniê dzier¿awion± - slattach. 6.26. Serwer SLIP. 6.26.1. Serwer korzystaj±cy z programu 6.26.1.1. Sk±d wzi±æ 6.26.1.2. Konfiguracja pliku 6.26.1.3. Konfiguracja pliku 6.26.1.4. Konfiguracja pliku 6.26.1.5. Konfiguracja pliku 6.26.1.6. Konfiguracja pliku 6.26.2. Serwer SLIP korzystaj±cy z programu 6.26.2.1. Konfiguracja pliku 6.26.3. Serwer SLIP korzystaj±cy z pakietu 6.27. Obs³uga protoko³u STRIP (Starmode Radio IP) 6.28. Token Ring 6.29. X.25 6.30. WaveLan Card 7. Kable i okablowanie 7.1. Szeregowy kabek bezmodemowy (Serial NULL Modem cable) 7.2. KAbel portu równoleg³ego (kabel PLIP) 7.3. Okablowanie ethernetowe 10base2 (cienki koncentryk) 7.4. Skrêtka (Twisted Pair Ethernet Cable) 8. Spis stosowanych terminów 9. Linux u dostawców Internetu ? 10. Podziêkowania 11. Copyright. 12. Od t³umacza ______________________________________________________________________ 11.. ZZmmiiaannyy ww ssttoossuunnkkuu ddoo ppoopprrzzeeddnniieejj wweerrssjjii Dodatki: mnóstwo. Poprawki/uaktualnienia: wszystko. 22.. WWpprroowwaaddzzeenniiee.. Oryginalny dokument NET-FAQ, napisy przez Matta Welsha w celu zebrania odpowiedzi na najczê¶ciej zadawane pytania na temat pracy Linuxa w sieci, powsta³ zanim ktokolwiek my¶la³ o Projekcie Dokumentacji Linuxa (LDP). Dokument dotyczy³ bardzo wczesnych wersji rozwojowych modu³ów sieciowych j±dra. Zosta³ zast±piony przez NET-2-HOWTO, jeden z oryginalnych doumentów projektu LDP. Opisywa³ oprogramowanie sieciowe znane pod nazw± "wersja 2." i "wersja 3.". W tym dokumencie opisujemy jedynie modu³y sieciowe j±dra w "wersji 3". Poprzednie wersje tego dokumentu osi±gne³y ogromnr rozmiary, ze wzglêdu na wielk± ilosæ materia³u, którego dotyczy³y. By³a to jedna z przyczyn powstania kilku innych dokumnetów HOWTO opisuj±cych specyficzne problemy zwi±zane z sieci±. Wszêdzie gdzie bêdzie to mo¿liwe, bêdziemy odwo³ywaæ siê do tych dokumentów i opisywaæ problemy, które jeszcze nie posiadaj± w³asnych dokumentów. 22..11.. UUwwaaggii nnaa tteemmaatt eeggoo ddookkuummeennttuu Zawsze doceniam wszelkie uwagi, szczególnie warto¶ciowe wnioski. Proszê kierujcie je bezpo¶rednio do mnie email <mailto:terry@perf.no.itg.telstra.com.au>. 33.. JJaakk kkoorrzzyyssttaaææ zz tteeggoo ddookkuummeennttuu ((NNEETT--33--HHOOWWTTOO--HHOOWWTTOO ??)).. Format tego dokumentu ró¿ni siê od poprzednich wersji. Przegrupowa³em podrozdzia³y, tak aby materia³ opisowy zgromadzony na pocz±tku dokumentu mog³ zostaæ przez czytalnika pominiêty. Po nim wystêpuje ogólny opis zagadnieñ sieciowych, informacje, które trzeba zrozumieæ zanim przejdzie siê do ostatniej czê¶ci dokumentu - technicznej dokuemntacji stosowanej technologii. PPrrzzeecczzyyttaajj rroozzddzziiaa³³yy ooggóóllnnee Informacje tutaj podane odnosz± niê niemal do wszystkich po¼niejszych czê¶ci dokumentu i s± niezbêdne do ich zrozumienia. ZZaassttaannóóww ssiiêê nnaadd sswwoojj±± ssiieeccii±± Powiniene¶ wiedzieæ jak jest (lub bêdzie) zbudowana twoja sieæ, dok³adnie jaki sprzêt i technologie s± (bêd±) wykorzystywane. PPrrzzeecczzyyttaajj rrooddzziiaa³³yy ooppiissuujj±±ccee wwyykkoorrzzyyssttyywwaannee pprrzzeezz cciieebbiiee technologie" Gdy ju¿ wiesz co ciê konkretnie zapoznaj siê z wybranymi rozdzia³ami. Znajdziesz tam szczegó³y dotycz±ce opisywanej technologii. WWyykkoonnaajj kkoonnffiigguurraaccjjee ssiieeccii Powiniene¶ spróbowaæ skonfigurowaæ sieæ uwa¿nie notuj±c wszystkie napotkane problemy. JJee¶¶llii ppoottrrzzeebbuujjeesszz ppoosszzuukkaajj ddaallsszzeejj ppoommooccyy Je¶li napotkasz problemy, w rozwi±zaniu których niniejszy dokument nie bêdzie pomocny, wtedy zapoznaj siê z rozdzia³em po¶wiêconym znajdowaniu dalszej pomocy i zg³aszaniu znalezionych b³êdów. BBaaww ssiiêê ddoobbrrzzee!! Sieæ to dobra zabawa, ciesz siê ni±. 44.. IInnffoorrmmaaccjjee ooggóóllnnee nnaa tteemmaatt pprraaccyy LLiinnuuxxaa ww ssiieeccii.. 44..11.. KKrróóttkkaa hhiissttoorriiaa rroozzwwoojjuu mmoodduu³³óóww ssiieecciioowwyycchh jj±±ddrraa LLiinnuuxxaa.. Opracowanie zupe³nie nowej implementacji protoko³u tcp/ip, pracuj±ego równie dobrze jak inne istniej±ce implementacje nie by³o ³atwym zadaniem. Decyzja aby napisaæ wszystko od zera zosta³a podjêta w czasie gdy istnia³a niepewno¶æ, ¿e istniej±ce implementacje mog± zostaæ zaprzepaszczone przez restrykcyjne licencje, z powodu tocz±cej siê sprawy s±dowej rozpoczêtej przez U.S.L. i w momencie gdy sieæ by³a przepe³niona ¶wie¿ym entuzjazmem aby zrobiæ to inaczej, a byæ mo¿e nawet lepiej ni¿ zosta³o do tej pory zrobione. Pierwszym ochotnikiem przewodzenia w pracach nad rozwojem modu³ów j±dra do obs³ugi sieci by³ Ross Biro <biro@yggdrasil.com>. Wykona³ prost± i niepe³n±, lecz w wiêkszo¶ci przypadków dzia³aj±c± implementacje podstawowych procedur, uzupe³nionych przez procedury drajwera karty sieciowej ethernet WD-8003. To wystarczy³o, aby przyci±gn±æ rzeszê ludzi, umo¿liwiæ im testowanie i eksperymentowanie. Niektórm uda³o siê nawet doprowadziæ do w³±czenia swoich komputerów do Internetu. Nacisk spo³eczno¶ci Linuxowej na rozwój obs³ugi sieci przez j±dro wci±¿ wzrasta³. Gdy korzy¶ci i stysfakcja z wykonywanej pracy przesta³y rekompensowaæ w wystarczaj±cym stopni po¶wiecenia i odpieranie rosn±cych nacisków, Ross zrezygnowa³ z roli prowadz±cego budowê oprogramowania sieciowego. Jego wysi³ki po¶wiêcone na stworzenie w tak burzliwych czasach czego¶ u¿ytecznego sta³y siê katalizatorem przysz³ych prac i nale¿y je zaliczyæ do najwa¿niejszych czynnikó, które przyczyni³y siê do osi±gniêcia sukcesu. Orest Zborowski <obz@Kodak.COM> do³±czy³ do j±dra oryginalny interfejs programistyczny gniazd BSD. By³ to ogromny krok naprzód, poniewa¿ umo¿liwia³ proste przenoszenie na Linuxa wielu istniej±cych programów sieciowych, bez konieczno¶ci ich nadmiernej modyfikacji. Mniej wiêcej w tym samym czasie Laurence Culhane <loz@holmes.demon.co.uk> opracowa³ pierwszy drjwer protoko³u SLIP. Wiele osób, które nie posiada³y dostêpu do sieci Ethernetowych otrzyma³o mo¿liwo¶æ eksperymentowania z nowym oprogramowaniem sieciowym. Ponownie czê¶æ osób wykorzysta³a te oprogramowanie do przy³±czania siê do Internetu. W ten sposób uzmys³owili reszcie jakie mo¿liwo¶ci otworzy³yby siê przed Linuxem, gdyby tlko posiada³ pe³n± obs³ugê sieci. Zwiêkszy³o równie¿ liczbê osób aktywnie wykorzystuj±cych i eksperymentuj±cych z istnej±cym oprogramowaniem. Jednym z ludzi, który równie aktywnie pracowa³ nad zbudowaniem modu³ów obs³ugi sieci w j±drze Linuxa by³ Fred van Kempen <waltje@uwalt.nl.mugnet.org>. Po krótkim okresie niepewno¶ci wywo³anym rezygnacj± Rossa Biro z prowadzenia projektu, Fred zaoferowa³ swój czas i umiejêtno¶ci, i przyj±³ tê rolê w zasadzie bez ¿adnych sprzeciwów. Fred mia³ ambitne plany na temat kierunków rozwoju oprogramowania obs³ugi sieci w j±drze Linuxa i aktywnie je realizowa³. Stworzy³ oprogramowanie znane pod nazw± NET-2 (oprogramowanie Rossa nosi³o nazwê NET), z którego wielu ludzi korzysta³o przez d³ugi czas. Fred wprowadzi³ wiele inowacji do programu rozwoju oprogramowania dynamiczny interfejs urz±dzeñ, obs³ugê protoko³u AX.25 (Amateur Radio) i bardziej modu³owe implementacje obs³ugi funkcji sieciowych. Oprogramowanie NET-2 by³o wykorzystywane przez stale rosn±c± grupê ludzi, w miarê jak ¶wiat dowiadywa³ siê, ¿e co¶ takiego istnieje. Oprogramowanie sieciowe nadal by³o rozpowszechniane w postaci ³atek do standardowej dystrybucji j±dra i przez d³ugi czas nie by³o rozpowszechniane razem z j±drem Linuxa. NET-FAQ i pó¼niejszy NET-2-HOWTO opisywa³y ca³kiem skomplikowana procedurê uruchomienia sieci pod Linuxem. Fred skoncentrowa³ siê na wprowadzaniu nowo¶ci do standardowej implementacji sieci, a to zabiera³o czas. Spo³eczno¶æ u¿ytkowników zaczyna³a siê niecierpliwiæ oczekujac na co¶ co dzia³a³oby bezb³êdnie i zadawala³oby 80% z nich. I podobnie jak w przypadku Rossa, naciski na Freda, jako koordynatora projektu ca³y czas wzrasta³y. Alan Cox <iialan@www.linux.uk.org> zaproponowa³ rozwi±zanie zaistnia³ej sytuacji. Zaproponowa³, ¿e we¼mie kod napisany przez Freda i przetestuje go. W ten sposób zapewni jego stabilno¶æ satysfakcjonuj±c grono niecerpliwych u¿ytkowników, uwalniaj±c tym samym Freda od licznych nacisków i umo¿liwiaj±c mu dalsz± pracê nad rozwojem oprogramowania. Tak te¿ zrobi³, co zakoñczy³o siê pe³nym sukcesem. Pierwsza wersja oprogramowani stworzona przez Alana nosi³a nazwê NET-2D (Debugged - odpluskwiony). Oprogramowanie pracowa³o stabilnie w wiêkszo¶ci standardowych konfiguracji i wiêkszo¶æ u¿ytkowników by³a wreszcie szczê¶liwa. Alan bez w±tpienia posiada³ umiejêtno¶ci i pomys³y, które chcia³ zrealizowaæ ku po¿ytkowi ca³ej spo³eczno¶ci Linuxa. Nastêpstwem by³o wiele dyskusji na temat kierunków rozwoju oprogramowania sieciowego NET-2 Linuxa. Rozwinêly siê dwie ró¿ne szko³y, jedna, której ide± by³o "wpierw niech to dzia³a, pó¼niej niech bêdzie to lepsze" i druga z ide± "niech wpierw to bêdzie lepsze". Ostatecznie wmiesza³ siê w to Linus, oferuj±c swoje wsparcie Alanowi w jego wysi³kach w³±czaj±c jego kod do standardowej dystrybucji jadra Linuxa. To postawi³o Freda w bardzo trudnej pozycji. Zosta³ pozbawiony ogromnej rzeszy u¿ytkowników aktywnie testuj±cych i eksperymentuj±cych z jego oprogramowaniem sieciowym, co oznacza³o, ¿e jego dalszy rozwój by³by trudny i powolny. Fred ontynuowa³ przez którki czas swoje prace, ostatecznie rezygnuj±c i pozstawiaj±c Alana jako nowego lidera w wysi³kach nad udoskonaleniem oprogramowania sieciowego Linuxa. Wktrótce swoje talenty w tematyce ujawni³ Donald Becker <becker@cesdis.gsfc.nasa.gov> i stworzy³ ogron± liczbê sterowików kart sieciowych ethernet, niemal wszystkich dostêpnych w obecnych wersjach j±dra. Byli równie¿ inni, których wk³ad w tej dziedzinie by³ znacz±cy, lecz praca Donalda by³a tak p³odna, ¿e wymaga osobnej uwagi. Alan kontynuowa³ pracê nad szlifowaniem oprogramowania NET-2-D, równocze¶nie staraj±c siê zaj±æ problemami okre¶lonymi jako 'do zrobienia' (TODO). Gdy j±dro Linuxa rozwinê³o siê na tyle by osi±gn±æ wersjê 1.3.*, jego czê¶æ dotycz±ca obs³ugi sieci sk³ada³a siê niemal z wersji NET-3, na której bazyj± aktualne wersje. Alan pracowa³ nad wieloma aspektami i funkcjami sieciowymi otrzymuj±c wsparcie od wielu utalentowanych ludzi nale¿±cych do internetowej spo³eczno¶ci Linuxa. Dziêki temu oprogramowanie rozrasta³o siê jednocze¶nie w wielu kierunkach. Alan opracowa³ dynamiczne strowniki urz±dzeñ i pierwsze implementacje standardów AX.25 i IPX. Kontynuowa³ pracê , powoli restruturyzuj±c i wprowadzaj±c upleszenia, a¿ usyska³ obecn± postaæ. Obs³uga PPP zosta³a zaimplementowana przez Michaela Callahana <callahan@maths.ox.ac.uk> i Ala Longyeara <longyear@netcom.com>. Mia³o to ogromne znaczenie i ogromnie zwiêkszy³o libczê osób aktywnie wykorzystuj±cych Linuxa w zastosowaniach sieciowych. Jonathon Naylor <jsn@cs.nott.ac.uk> znacznie usprawni³ pocz±tkowy kod Alana obs³ugi protoko³u AX.25. Wprowdzi³ obs³ugê protoko³u NetRom. Obs³uga AX.25/NetRom jest ogromnie wa¿na, poniewa¿ ¿aden inny system operacyjny nie posiada w standardowej dystrybycji obs³ugi tych protoko³ów. By³y równie¿ ogromne rzesze innych ludzi, którzy w zanacz±cy sposób przyczynili siê do rozwoju oprogramowania sieciowego Linuxa. Wiele z tych nazwisk znajdziesz pó¼niej w czê¶ciach omawiaj±cych poszczególne technologie. Inni przyczynili siê do rozwoju b±d¼ opracowuj±c róznych modu³ów oprogramowania, b±d¼ przysy³aj±æ poprawki usuwaj±ce ró¿ne b³êdy, b±d¼ oferuj±c sugestie, raporty z testów lub choæby wsparcie moralne dla aktywnych twórców. Ka¿dy z nich mo¿e twierdziæ, ¿e bra³ w tyn udzia³ i oferowa³tyle ile móg³. Kod j±dra linuxa przeznaczony do obs³ugi sieci jest ¶wietnym przyk³adem rezultaów jakie mo¿na osi±gn±æ pracuj±c w tak anarchiczny sposób, jaki to mia³o miejsce w tym przypadku. Je¶li siê to jescze nie zadziwi³o, to pamiêtaj o jednym: prace rozwojowe nadal trwaj±. 44..22.. ssiieecciioowwyycchh LLiinnuuxxaa.. SSkk±±dd zzddoobbyyææ iinnnnee iinnffoorrmmaaccjjee nnaa tteemmaatt zzaass ttoossoowwaaññ Istnieje kilka miejsc, gdzie mo¿na znale¼æ dobre informacje na temat sieciowych zastosowañ Linuxa. Alan Cox, aktualny opiekun i lider oprogramowania sieciowego Linuxa, prowadzi stronê internetow± zawieraj±c± najciekawsze i najwa¿niejsze informacje na temat aktualnego rozwoju sieci w Linuxe: www.uk.linux.org <http://www.uk.linux.org/NetNews.html>. Innym znakomitym miejscem jest ksi±¿ka napisana przez Olafa Kircha pod tytu³em Poradnik dla administratorów sieci. Powsta³a w ramach Projektu dokumentacji Linuxa <http://sunsite.unc.edu/LDP/> i jest dostêpna tutaj: Poradnik dla administratorów sieci - wersja HTML <http://sunsite.icm.edu.pl/pub/Linux/LDP/LDP/nag/nag.html> lub w innych formatach tutaj archiwum ftp sunsite.unc.edu LDP <ftp://sunsite.icm.edu.pl/pub/Linux/sunsite/docs/LDP/network-guide/>. Ksi±¿ka Olafa jest ca³kiem wyczerpuj±ca i dostarcza dobrego, stojacego na wysokim poziomie przegl±dowego spojrzenia na konfiguracjê sieci pod Linuxem. Istnieje specjalna grupa dyskusyjna (angielsko jêzyczna), po¶wiêcona sieci i podobnym problemom: comp.os.linux.networking <news:comp.os.linux.networking> Instnieje angielsko jêzyczna lista dyskusyjna, na któr± mo¿esz siê zapisaæ i gdzie mo¿esz zadawaæ pytania odnosz±ce siê do funkcji sieciowych Linuxa. Aby siê zapisaæ musisz wys³aæ nastêpuj±cy list: To: majordomo@vger.rutgers.edu Subject: anything at all Message: subscribe linux-net W wiêkszo¶ci serwerów IRC istniej± zwykle kana³y #linux, na których obecni tam ludzie bêd± potrafili odpowiedzieæ na pytania dotycz±ce sieci pod Linuxem. Pamiêtaj, ¿e zg³aszaj±c jakikolwiek problem nale¿y podawaæ jak najwiêcej dotycz±cych go szczegó³ów. Koniecznie nale¿y podaæ wersje u¿ywanego oprogramowania, sczególnie wersjê j±dra (uname -a), wersjê takich narzêdzi jak _p_p_p_d lub _d_i_p i dok³adn± naturê problemu na który napotka³e¶. To znaczy dok³adnie zanotowane komunikaty systemowe jakie otrzyma³e¶ i dok³adny opis sk³adni wydawanych poleceñ. 44..33.. tteemmaatt tteecchhnniikk ssiieecciioowwyycchh.. SSkk±±dd zzddoobbyyææ iinnnnee,, nniiee zzwwii±±zzaannee zz LLiinn uuxxeemm iinnffoorrmmaaccjjee nnaa Je¶li szukasz podstawowych informacji o tcp/ip, polecam zapozananie siê z nastêpuj±cymi dokumentami: wwpprroowwaaddzzeenniiee ddoo ttccpp//iipp dostêpne w wersji tekstowej <ftp://athos.rutgers.edu/runet/tcp- ip-intro.doc> i postscriptowej <ftp://athos.rutgers.edu/runet/tcp-ip-intro.ps>. ttccpp//zzaarrzz±±ddzzaanniiee pprroottookkoo³³eemm iipp dostêpne w wersji textowej <ftp://athos.rutgers.edu/runet/tcp- ip-admin.doc> i postscriptowej <ftp://athos.rutgers.edu/runet/tcp-ip-admin.ps>. Je¶³i poszukujesz dok³adniejszych informacji na temat sieci tcp/ip mocno polecam: "Internetworking with TCP/IP" by Douglas E. Comer ISBN 0-13-474321-0 Prentice Hall publications. Je¶li chcesz siê nauczyæ w jaki sposób budowaæ programy sieciowe w ¶rodowiskach zgodnych z systemem UNIX, mocno polecam: "Unix Network Programming" by W. Richard Stevens ISBN 0-13-949876-1 Prentice Hall publications. Mo¿esz równie¿ skorzystaæ z grupy dyskusyjnej comp.protocols.tcp-ip <news:comp.protocols.tcp-ip>. Istotnym ¼ród³em konkretnych informacji technicznych zwi±zanych z Internetem i protoko³em tcp/ip s± dokumenty RFC. RFC to skrót od "Request For Comments", jest to standardowy sposób og³aszania i dokumentowania obowi±zuj±cych standardów internetowych. Istnieje wiele miejsc sk±d mo¿na popraæ dokumenty RFC. Wiêkszo¶æ z nich to archiwa ftp, czê¶æ udostêpnia dokumenty RFC równie¿ przez interfejs WWW dostarczaj±c jednocze¶nie mo¿liwo¶æ przeszukiwania wszystkich dokumentów w poszukiwaniu s³ów kluczowych. Jednym z archimum dokumntów RFC jest: baza danych Nexor RFC <http://pubweb.nexor.co.uk/public/rfc/index/rfc.html>. 55.. PPooddssttaawwoowwee iinnffoorrmmaaccjjee nnaa tteemmaatt kkoonnffiigguurroowwaanniiaa ssiieeccii.. Aby porawnie skonfigurowaæ sieæ, musisz zapoznaæ siê i zrozumieæ informacje prezentowane w kolejnych podrozdzia³ach. S± to podstawowe zasady funkcjonowania sieci, niezale¿nie od jej wewnêtrznej natury. 55..11.. CCzzeeggoo ppoottrrzzeebbuujjêê aabbyy rroozzppoocczz±±ææ?? Zanim zaczniesz budowaæ lub konfigurowaæ swoj± sieæ bêdziesz potrzebowa³ kilku rzeczy. Najwa¿niejsze z nich to: 55..11..11.. AAkkttuuaallnnee ¼¼rróódd³³aa jj±±ddrraa.. Poniewa¿ j±dro którego u¿ywasz mo¿e nie posiadaæ obs³ugi sieci, lub kart sieciowych, które posiadasz, bêdziesz prawdopodobnie potrzebowa³ ¼ród³a j±dra, aby¶ mog³ skompilowaæ nowe j±dro z odpowiednimi opcjami. Najnowsz± wersj± j±dra mozna uzyskaæ z: ftp.funet.fi <ftp://ftp.funet.fi/pub/Linux/PEOPLE/Linus/v2.0>. Zwykle pliki ¼ród³owe powinny byæ rozpakowane do katalogu /usr/src/linux. Je¶li potrzebujesz informacji jak dodaæ do j±dra dodatkowe ³aty lub jak skompilowaæ j±dro powiniene¶ przeczytaæ Kernel- HOWTO <Kernel-HOWTO.pl.html>. Je¶li wyra¼nie nie zosta³o to zaznaczone, zalecam pozostanie przy standardowych wersjach j±dra (te z parzystymi numerami wersji po pierwszej kropce). Wersje testowo-rozwojowe (z nieparzyst± drug± liczb±) mog± mieæ zmienion± strukturê wewnêtrzn± lub wprowadzone inne zmiany uniemo¿liwiaj±ce poprawn± wspó³pracê z innym oprogramowaniem zainstalowanym na twoim systemie. Je¶li nie jeste¶ pewien, ¿e poradzisz sobie z tego rodzaju problemami, w po³±czeniu z mo¿liwosæi± wyst±pienia b³êdu w innym oprogramowaniu, nie u¿ywaj wersji rozwojowych. 55..11..22.. AAkkttuuaallnnee nnaarrzzêêddzziiaa ssiieecciioowwee.. Narzêdzia sieciowe to programy s³u¿±ce do konfigurowania urz±dzeñ sieciowych Linuxa. Np. pozwalaj± na przydzielenie urz±dzeniu numeru adresu IP lu na skonfigurowanie routingu (marszruty). Nwe dystrybucje Linuxa zawieraj± wszelkie niezbêdne narzêdzia sieciowe. Je¶li ich jescze nie zainstalowa³e¶, powiniene¶ to teraz zrobiæ. Je¶li nie instalowa³e¶ Linuxa z dystrybucji, bêdziesz musia³ pobraæ ¼ród³a i skompilowaæ narzêdzia samodzielnie. To nie jest trudne. Narzêdziami sieciowymi opiekuje siê Bernd Eckenfels i s± dostêpne pod adresem: ftp.inka.de <ftp://ftp.inka.de/pub/comp/Linux/networking/NetTools/> lub kopia ftp.linux.uk.org <ftp://ftp.linux.uk.org/pub/linux/Networking/PROGRAMS/NetTools/>. Pamiêtaj aby wybrac wersjê najbardziej odpowiedni± dla wersji j±dra, które posiadasz, postêpuj zgodnie z uwagami zawartymi w instalowanym pakiecie. Aby skonfigurowaæ wersjê aktualn± w momencie pisania tego dokumentu musisz wykonaæ nastêpuj±ce polecenia: # # cd /usr/src # tar xvfz net-tools-1.32-alpha.tar.gz # cd net-tools-1.32-alpha # make config # make # make install # Dodatkowo je¶li zamierzasz skonfigurowaæ firewall lub korzystac z funkcji IP Masquerade, potrzenujesz programu _i_p_f_w_a_d_m. Najnowsz± wersjê mo¿na zdobyæ tutaj: ftp.xos.nl <ftp:/ftp.xos.nl/pub/linux/ipfwadm>. Pamiêtaj, ¿e dostêpnych jest kilka wersji. Musisz wybraæ tê, która najlepiej wspó³pracuje z j±drem, które posiadasz. Aby skonfigurowaæ wersjê aktualn± w momencie pisania tego dokumentu musisz wykonaæ nastêpuj±ce polecenia: # # cd /usr/src # tar xvfz ipfwadm-2.3.0.tar.gz # cd ipfwadm-2.3.0 # make # make install # 55..11..33.. PPrrooggrraammyy--aapplliikkaaccjjee ssiieecciioowwee.. Sieciowe programy u¿ytkowe (aplikacje sieciowe) to takie, jak np. _t_e_l_n_e_t,_f_t_p i ich odpowiedniki po stronie serwera. Dystrybucj± wiêkszo¶ci z nich zajmuje siê David Holland <dholland@hcs.harvard.edu> . Mo¿na je zdobyæ z ftp.uk.linux.org <ftp://ftp.uk.linux.org/pub/linux/Networking/base>. Aby skonfigurowaæ wersjê aktualn± w momencie pisania tego dokumentu musisz wykonaæ nastêpuj±ce polecenia: # # cd /usr/src # tar xvfz /pub/net/NetKit-B-0.08.tar.gz # cd NetKit-B-0.08 # more README # vi MCONFIG # make # make install # 55..11..44.. AAddrreessyy.. Adresy protoko³u IP (Internet Protocol) sk³adaj± siê z czterech bajtów. Zwykle zapisuje siê w notacji zwanej 'dziesiêtn±-z kropkami (decimal dotted notation). Ka¿dy bajt jest zamieniany na liczbê dziesiêtn± (0-255), opuszczaj±c wszelkie zera na pocz±tku (chyba, ¿e liczba jest równa zero) i zapisywany kolejno, rozdzielony jeden od drugiego kropk± `.'. Konwencja wymaga, aby ka¿dy interfejs sieciowy komputer czy routera posiada³ w³asny numer IP. Mo¿na ten sam numer przydzielaæ do róznych urz±dzeñ sieciowych jednego komputera, lecz zwykle ka¿dy interfejs posiada w³asny numer IP. Numery IP sieci to nieprzerwane sekwencje adresów IP. Wszystkie adresy nale¿±ce do jednej sieci maj± wspóln± liczbê cyfr w pe³nym adresie IP. Czê¶æ adresu wspólna dla wszystkich adresów IP nale¿±cych do sieci nazywa siê numerem sieci (adresu IP).Pozosta³e cyfry okre¶laj± adres komputera . Liczba bitów które s± wszpólne dla wszystkich adresów w ramach jednej sieci nazywamy mask± siecie (netmask±). Rol± netmaski jest okre¶lenie które adresy przynale¿± do sieci, której ona dotyczy, a które nie. Rozwa¿my nastêpuj±cy przyk³ad: rnet Protocol Networks are contiguous sequences of IP addresses. All addresses within a network have a number of digits within the address in common. The portion of the address that is common amongst all addresses within the network is called the `network portion' of the address. The remaining digits are called the `host portion'. The number of bits that are shared by all addresses within a network is called the netmask and it is role of the netmask to determine which addresses belong to the network it is applied to and which don't. For example, consider the following: ----------------- --------------- Host Address 192.168.110.23 Adres komputera Network Mask 255.255.255.0 Netmaska Network Portion 192.168.110. Cze¶æ sieciowa adresu Host portion .23 Cze¶æ komputerowa adresu ----------------- --------------- Network Address 192.168.110.0 Adres sieci Broadcast Address 192.168.110.255 Adres og³oszeniowy (informacja wys³ana pod ten adres dotrze do wszystkich komputerów danej sieci) ----------------- --------------- Je¶li dowolny adres IP poddamy operacji bitowej koniunckcji z jego netmask±, otrzymamy w ten sposób adres sieci, do której on nale¿y. Adres sieci jezt zatem najmniejszym adresem w puli adresów danej sieci z zawsze wype³nion± zerami czêsci± komputerow± adresu. Adres og³oszeniowy (broadcast) to specjaly adres IP. Wszystkie komputery w danej sieci prócz nas³uchiwania pakietów adresowanych pod ich numer IP, nas³uchuj± równie¿ pakietów kierowanych na ten adres. Je¶li chemy wys³aæ pakiet, który ma dotrzeæ do wszystkich komputerów w danej sieci, korzystamy w³a¶nie z adresu og³oszeniowego. Ró¿nego rodzaje informacje dotycz±ce np. trasowania (routingu) lub zawieraj±ce ró¿ane ostrzerzenia nadawane s± w³a¶nie na ten adres, tak aby wszystkie komputery otrzyma³y go jednocze¶nie. Istniej±dwa standardy jak powinien wygl±daæadres og³oszeniowy. W powy¿szym przyk³adzie by³to 192.168.110.255. Z nieznanych przyczyn w niektórych miejscach jako adresu og³oszeniowego u¿wa siê adresu sieci. W ppraktyce zasadnizco nie ma zanczenia, której konwencji uzywamy, pod warunkiem, ¿e wszystkie komputery maj± skonfigurowany adres og³oszeniowy w ten sam sposób. Z przyczyn administracyjnych w pocz±tkowym okresie rozwoju protoko³u IP, pewne grupy adresów IP zosta³u po³±czone w sieci, które z kolei zosta³y po³±czone w klasy. Te klasy dostarczaj± okre¶lon± liczbê ró¿nej wielko¶ci sieci, które mog± byæ przydzielane u¿ytkownikom. Wygl±da to mniej wiêcej tak: ---------------------------------------------------------- | Klasa | Netmaska | Adresy sieciowe | | sieci | | | ---------------------------------------------------------- | A | 255.0.0.0 | 0.0.0.0 - 127.255.255.255 | | B | 255.255.0.0 | 128.0.0.0 - 191.255.255.255 | | C | 255.255.255.0 | 192.0.0.0 - 223.255.255.255 | |Multicast| 240.0.0.0 | 224.0.0.0 - 239.255.255.255 | ---------------------------------------------------------- Z których adresów powiniene¶ korzystaæ zale¿y bezpo¶rednio od tego co robisz. Aby uzyskaæ wszystkie adresy których potrzebujesz mo¿esz byæ zmuszony do wykonania kombinacji nastêpuj±cych dzia³añ: IInnssttaallaaccjjaa LLiinnuuxxaa ww iissttnniieejj±±cceejj ssiieeccii IIPP Je¶li hcesz zainstalowaæ Linuxa w istniej±cej sieci IP powiniene¶skontaktowaæsiê z administratorem sieci i poprosiæ go o nastêpuj±ce informacje: · Adres IP komputera · Adres IP sieci · Adrs og³oszeniowy (broadcast) · Netmaska · Adres routera · Adres serwera DNS Nastêpnie powiniene¶ skonfigurowaæ urz±dzenie sieciowe podaj±c uzyskane informacje. Nie mo¿esz wzi±æ ich z powietrza i oczekiwaæ, ¿e wszystko bêdzie dzia³aæ poprawnie. BBuuddoowwaanniiee nnoowweejj ssiieeccii,, kkttóórraa nniiggddyy nniiee bbêêddzziiee ppoodd³³±±cczzoonnaa ddoo internetu" Je¶li budujesz prywatn± sieæ i nie masz zamiaru pod³±czaæ j± do Internetu to mo¿esz wybraæ zupe³nie dowolne numery IP. Jednak dla bezpieczeñstwa i porz±dku powiniene¶ skorzystaæ z grupy adresów IP pozostawionych dok³adnie w tym celu. S±one okre¶lone w dokumencie RFC1597: ----------------------------------------------------------- | Zarezerwowane prywatne adresy IP | ----------------------------------------------------------- | Klasa | Netmaska | Adres komputera | | sieci | | | ----------------------------------------------------------- | A | 255.0.0.0 | 10.0.0.0 - 10.255.255.255 | | B | 255.255.0.0 | 172.16.0.0 - 172.31.255.255 | | C | 255.255.255.0 | 192.168.0.0 - 192.168.255.255 | ----------------------------------------------------------- Powiniene¶ siê wpierw zdecydowaæ jak wielka bêdzie twoja sieæ, a nastêpnie wybraæ tyle adresów IP ile potrzebujesz. 55..22.. GGDDzziiee uummiiee¶¶cciiææ ppoolleecceenniiaa kkoonniigguurraaccyyjjnnee ?? Istnieje kilka sposobów realizacji procedury uruchamiania systemu Linux. Po za³adowaniu j±dra uruchamiany jest program o nazwie `init'. Porgram init odczytuje swój plik konfiguracyjny /etc/inittab i kontynuuje proces uruchamiania systemu. Istnieje kilka odmian programu init i to jest w³a¶nie przyczyna ró¿nic w konfiguracji miêdzy ró¿nymi dystrybucjami czy komputerami. Zwykle plik /etc/inittab zawiera pozycjê wygl±daj±c± mniej wiêcej tak: si::sysinit:/etc/init.d/boot Ten wiersz okre¶la nazwê skryptu który ostatecznie jest odpowiedzialny za procedurêstartow±. Jest to mniej wiêcej odpowiednik pliku AUTOEXEC.BAT w DOSie. SKrypt startowy uruchamia zwykle ró¿ne inne skrypty i sieæjest konfigurowana zwyklê jednym z takich skryptów. Poni¼sza tabela mo¿e pos³u¿yæ jako przewodnik po twoim systemie: ------------------------------------------------------------------------------- Dystryb. |Konfiguracja interfeju(karty)/routingu | Inicjalizacja ------------------------------------------------------------------------------- Debian |/etc/init.d/network |/etc/init.d/netbase | |/etc/init.d/netstd_init | |/etc/init.d/netstd_nfs | |/etc/init.d/netstd_misc ------------------------------------------------------------------------------- Slackware|/etc/rc.d/rc.inet1 |/etc/rc.d/rc.inet2 ------------------------------------------------------------------------------- RedHat |/etc/sysconfig/network-scripts/ifup-<ifname>|/etc/rc.d/init.d/network ------------------------------------------------------------------------------- Wiêkszo¶æ nowocze¶nych dystrybucji zawiera program, który umo¿liwi konfiguracjê wielu podstawowych interfejsów sieciowych. Je¶³i masz taki program powiniene¶ sprawdziæ czy jest on dla ciebie wystarczaj±cy, zanim zdecydujesz siê na rêczn± modyfikacje. configuration. ----------------------------------------- Dystryb. | Program konfiguracji sieci ----------------------------------------- RedHat | /sbin/netcfg Slackware | /sbin/netconfig ----------------------------------------- 55..33.. TTwwoorrzzeenniiee iinntteerrffeejjssóóww ssiieecciioowwyycchh.. W wiêkszo¶ci systemów Unix urz±dzenia sieciowe znajduj± siê w katlogu _d_e_v. W linuxie tak nie jest. Linux tworzy urz±dzenia sieciowe dynamicznie, dlatego nie wymaga istnienia plików urz±dzeñ sieciowych. W wiêkszo¶ci przypadków urz±dzenia sieciowe s± tworzone automatycznie przez sterowniki tych urz±dzeñ w czasie ich iniclacji i rozpoznawania sprzêtu. Na przyk³ad sterowniki sieciowych kart ethernetowych tworz± interfejsy o nazwach eth[0..] sekwencyjnie w miarê rozpoznawania kolejnych urz±dzeñ. Pierwsz znale¿iona karta ethernetowa staje siê urz±dzeniem eth0, druga eth1 itf. Jednak w niektórych przypadkach, zwykle kiedy korzystamy z protoko³ów SLIP lub PPP, urz±dzenia sieciowe s± tworzone na ¿±danie programów wykonywanych przez u¿ytkownika. Odbywa siê podobny sekwencyjny przydzia³ nmazw urz±dzeñ, lecz nie dzieje siê to w sposób automatyczny w czasie ³adowania systemu. Dzieje siê tak dlatego, ¿e wprzeciwieñstwie do kart ethetnetowych liczba akrywnych interfejsów slip lub ppp w ca³ym okresie pracy komputera mo¿e siê zmieniaæ. Powiemy o tym dok³aniej w dalszej czê¶ci. 55..44.. KKoonnffiigguurraaccjjaa iinntteerrffeejjssuu ssiieecciioowweeggoo.. Je¶li posiadasz ju¿ wszelkie niezbêdne oprogramowanie i informacje o potrzebnyhc adresach sieciowych mo¿esz rozpocz±æ konfiguracjê interfejsu. Kiedy mówimy o konfiguracji interfejsu sieciowego mamy na my¶li proces przydzielenia mu odpowiedniego adreu IP i nadania odpowiednich warto¶ci innym jego parametrom. W tm celu najczê¶ciej pos³ugujemy siê programem _i_f_c_o_n_f_i_g (interface configre). Zwykle u¿ywa siê go sposób podobny do podanego poni¿ej: # ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up W tym przypadku konfigurujê kartê ethernetow± `eth0' nadaj±c jej adres IP `192.168.0.1' i netmaskê `255.255.255.0'. Parametr `_u_p' na koñcu wiersza oznacza, ¿e intefejspowinien zostaæ aktywowany (rozpocz±æ prazcê). Jadro konfiguruj±æ interfejsy sieciowe przyjmuje pewne domy¶lne warto¶æi parametrów. a przyk³ad mog³by¶ podaæ adres IP i adres og³oszeniowy (broadcast) danego interfejsu, lecz je¶li tego nie zrobisz j±dro znajdzie sensowne warto¶ci dla tych parametrów na podstawie klasy konfigurowaneo adresu IP. W moim przyk³adzie j±dro przyjmie, ¿e jest interfejs jest konfigurowany w sieci klasy C i nada adresowi sieci warto¶æ `192.168.0.0', a adresowi og³oszeniowemu `192.168.0.255'. Polecenie _i_f_c_o_n_f_i_g posiada znacznie wiêcej opcji. Najwa¿niejsze z nich to: uupp w³±cznie interfejsu. ddoowwnn wy³±czenie interfejsu. --aarrpp w³±czenie lub wy³±czenie korzystania z protoko³u ARP na tym interfejsie --aallllmmuullttii w³±czenie lub wy³±czenie korzystania z trybu zmuszone do odbierania wszelkich pakietów, a nie tylko tych adresowanych bezpo¶rednio do niego. Jest bardzo wa¿na dla programów _t_c_p_d_u_m_p i innych podgl±daczy pakietów. mmttuu NN ustawienie wielko¶ci parametru _M_T_U danego urz±dzenia. nneettmmaasskk aaddddrr adres sieci, do której nale¿y (jest pod³±czony) interfejs. iirrqq aaddddrr ten parametr ma zastosowanie tylko dla niektórych modu³ów sprzêtowych. Pozwala na ustawienie warto¶æprzerwania IRQ z którego powinno korzystaædane urz±dzenie. --bbrrooaaddccaasstt aaddddrr pozwala na w³±czenie odbierania pakietów skierowanych na podany adres og³oszeniowy, lub na zablokowanie odbierania tych pakietów. --ppooiinnttooppooiinntt aaddddrr pozwala na podanie adresu komputera na drugim koñsu po³±czzenia point-to-point obs³ugiwanego przez ten interfejs. Ma to miejsce w przypadku takich protoko³ów jak _s_l_i_p czy ppp. hhww <<ttyyppee>> <<aaddddrr>> pozwala na okre¶lenie adresu sprzêtowego urz±dzenia lecz tylko dla ograniczonego rodzaju urz±dzeñ. Nie jest czêsto u¿ywany w sieciach Ethernet, za to zêsto wykorzystuje siêgo w sieciach AX.25. Polecenie _i_f_c_o_n_f_i_g mo¿na stosowaæ dla ka¿dego interfejsu sieciowego. Niektóre porgramy u¿ytkownika, jak _p_p_p_d czy _d_i_p korzystaj± z niego w celu zkonfigurowania interfejsu sieciowego, ty¿ po jego utworzeniu. W takim przypadku nie jest potrzebna rêczna konfiguracja tych urz±dzeñ. 55..55.. KKoonnffiigguurraaccjjaa rreessoollvveerraa nnaazzww.. `_R_e_s_o_l_v_e_r _n_a_z_w ' jest czêsci± standardowej biblioteki linuxa. JEgo podstawow± funkcj± jest zamiana wygodnych dla czlowieka nazw komputerów, jak `ftp.funet.fi' na ich adres 128.214.248.6, którym pos³uguj± siê komputery. 55..55..11.. CCoo ttoo jjeesstt nnaazzwwaa?? Prawdopodownie spotka³e¶ siê z nazwami komputerów, lecz byæ mo¿e nie weisz w jaki sposób s± konstruowane lub rozk³±dane. Nazwy domen internetowych s± w swojej naturze hierachiczne, to znaczy posiadaj± strukturê drzewiast±. _d_o_m_e_n_a jest rodzin±, grup± nazw. _D_o_m_e_n_a mo¿e byæ podzielona na _p_o_d_d_o_m_e_n_y (subdomain). _N_o_m_e_n_a _n_a_j_w_y_¿_s_z_e_g_o _p_o_z_i_o_m_u (top level domain) jest domen±, która jednocze¶nie nie jest poddomen±. Domeny najwy¿szego poziomu s± okre¶lone w dokumencie RFC-920. Poni¿ej kilka przyk³adów domen najwy¿szego poziomu. CCOOMM organizacje komercyjne EEDDUU organizacje edukacyjne GGOOVV organizacje rz±dzowe MMIILL organizacje wojskowe OORRGG inne organizacje oozznnaacczzeenniiee kkrraajjuu dwuliterowe kody pañstw, reprezentuj±ce konkretne pañstwo. Ka¿da z domen najwy¿szego poziomu posiada poddomeny. Domey najwy¿szego poziomu o nazwach odpowiadaj±cych kodom pañstw, s± zwykle podobnie podzielone, jak domeny najwy¿szego poziomu tzn. mo¿na tzm znale¼æ poddomeny com, edu, gov, mil i org. Na koniec otrzymujemy com.au i gov.au dla organizacji komercyjnych i rz±dowych w Australii. Z przyczyn historycznych wiêkszo¶ædomen nale¿±cych do domen najwy¿szego poziomu dotyczy organizacji amerykañskich, choæ Stany Zjednoczone maj± równie¿ w³asn± domenê `.us'. Nastêpny poziom podzia³u odzwierciedla zwykle nazwê instytucji/organizacji. Dalsze poddomeny ró¿ni± siê w swojej naturze, czêsto ten poziom domen jest zale¿ny od wewnêtrznej struktury instytucji lecz mo¿e byæ zale¿ny od dowolnego, rozs±dnego kryterium przyjêtego przez osoby zarz±dzaj±ce sieci± w danej instytucji. Ostatni w strukturze cz³on domeny, lecz pierwszy z lewej w jej nazwie oznacza _n_a_z_w_ê _k_o_m_p_u_t_e_r_a (hostname) i musi byæ jednoznaczny w danej poddomenie. Pozosta³a czê¶æ jezt nazywana _d_o_m_e_n_± danego komputera (domainname), a ca³o¶æ jest nazywana `_F_u_l_l_y _Q_u_a_l_i_f_i_e_d _D_o_m_a_i_n _N_a_m_e _F_Q_D_M' - Pe³na nazwa domenowa. Bior±c za przyk³ad mój komputer pocztowy, jego FQDN to `perf.no.itg.telstra.com.au'. To znaczy, ¿e komputer nazywa siê `perf', a domena `no.itg.telstra.com.au'. Nazwa mojej domeny rozpoczyna siê od cz³onu oznaczaj±cego kraj, Australiê. Poniewa¿ jeste¶my organizacj± komercyjn± kolejnym poziomem jest `com'. `telstra' oznacza nazwê firmy (star±), a dalsze cz³ony s± pochodn± wewnêtrznej struktury naszej firmy. Moj komputer nale¿y do Information Technolog Group w sekcji Network Operations. 55..55..22.. JJaakkiiee iinnffoorraammaaccjjee bbêêdd±± nniieezzbbêêddnnee.. Muszisz wiedzieæ do jakiej domeny nale¿y twój komputer. Oprogramowanie resolwera nazw wykonuje swoj± pracê odwo³uj±c siê do _s_e_r_w_e_r_a _D_N_S (Domain Name Server), bêdziesz potrebowa³ adres IP najbli¿szego serwera DNS. Muszisz poprawiæ try pliki. Omówiê ka¿dy z nich. 55..55..33.. //eettcc//rreessoollvv..ccoonnff /etc/resolv.conf jest g³ównym plikiem konfiguracyjnym resolwera nazw. Posiada bardzo prosty format. Jest to plik tekstowy zawieraj±cy jedno polecenie na wiersz. Najczêscie¶ stosuje siê trzy s³owa kluczowe: ddoommaaiinn okre¶lan nazwê domeny, do której nale¿y dany omputer sseeaarrcchh okre¶³a listê domen, które maj± byæ przeszukiwane w poszukiwaniu podanej nazwy komputera (w przypadku gdy nazwa komputera nie zosta³a podana w postaci FQDN) nnaammeesseerrvveerr mo¿e by powtórzone wielokrotnie, okre¶la adres serwera DNS przyk³adowy plik /etc/resolv.conf mog³by wygl±daæ nastepuj±co: domain maths.wu.edu.au search maths.wu.edu.au wu.edu.au nameserver 192.168.10.1 nameserver 192.168.12.1 W przyk³adzie podali¶mu, ¿e podstawow± domen±, do której nale¿y kom puter i która nêdzie dodawana do nazwy komputera je¶li nie zsota³a podana w formacie FQDN jest maths.wu.edu.au. Je¶³i komputer nie zostanie znale¿iony w tej doenie resolwer przeszuka jeszcze domenê wu.edu.au. Podano równie¿ adresy IP dwóch serwerów DNS. 55..55..44.. //eettcc//hhoosstt..ccoonnff Plik /etc/host.conf to plik, które okre¶la niektóre zachowania resolvera. Jego format jest dokladnie opisany na stronie podrêcznika (man resolv+). W wiêkszo¶ci przypadków wystraczy taki plik: order hosts,bind multi on Ta konfiguracja informuje resolver, ¿e poszukuj±c nazwy komputera nle¿y wpierw sprawdzaæ zawaro¶æ pliku /etc/hosts, zanim zacznie siê zadawaæ pytania serwerowi DNS. Oznacza równie¿, ¿e nale¿y przekazywaæ wszystkie znalezione w tym pliku adresy IP odpowiadaj±ce nazwie poszukiwanego komputera, a nie tylko pierwszy z nich. 55..55..55.. //eettcc//hhoossttss Plik /etc/hosts jest to miejsce, gdzie umieszcza sie nazwy i adresy loklanych komputerów. Je¶li umie¶cisz w tym pliku nazwê i adres komputera, nie musisz pytaæ siê o jego adres serwera DNS. Wad± tego rozwi±zania jest to, ¿e musisz pamiêtaæ aby informacje zawartew tym pliku by³y aktualne. W dobrze zarz±dzanym sytemi w niniejszym pliku mo¿na zwykle znale¼æ nazwê interfejsu pêtli zwrotnej i nazwy loklanych komputerów. # /etc/hosts 127.0.0.1 localhost loopback 192.168.0.1 nazwa.tego.komputera Mo¿esz podaæ wiêcej ni¿ jedn± nazwê odpowiadaj±c± danemu numerowi IP, jak to zrobili¶my w pozy¿szym przyk³adzie w przypadku lokalnej ptli zwrotnej. 55..66.. KKoonnffiigguurraaccjjaa iinntteerrffeejjssuu ppêêttllii zzwwrroottnneejj Interfejs pêtli zwrótnej (`loopback' interface) jest interfejsem specjalnego rodzaju, umo¿liwiaj±cym nawi±zywanie po³±czeñz samym sob±. Istnieje wiele przyczyn, dla których mog³by¶ chcieæ to robiæ. Na przyk³ad w celu przetestowania oprogramowania sieciowego, bez onieczno¶ci zawracania g³owy komukolwiek inneu. Adres `127.0.0.1' zosta³przypisany specjalnie dla tego interfejsu. Dlatego niezale¿nie na którym komputerze bedziesz pracowa³, je¶li po³±czysz siê z komputerem o adresie 127.0.0.1 zawsze to bêdzie ten komputer, zktórego próbujesz nawi±zaæ po³±czenie. Skonfigurowanie interfejsu pêtli zwortnej jest proste, musisz siê upewniæ, ¿e przy starcie sytemu wykonuje siê nastêpuj±ce polecenie: # ifconfig lo 127.0.0.1 # route add -host 127.0.0.1 lo Wiêcej na temat polecenia _r_o_u_t_e powiemy w nastêpnym rozdziale. 55..77.. TTrraassoowwaanniiee ((rroouuttiinngg)).. Trasowanie ruchu (routing) to ogromny temat. Mo¿na na ten temat napisaæ bardzo du¿o. Wiêkszo¶æ z was spotka siê z ca³kiem prostymi konfiguracjami trasowania, a czê¶æ nie. Opowiem o podstawowych prawach trasowania ruchu. Je¶li potrzebujesz bardziej szczegó³owych informacji radzê zapoznaæ siê z dokumentami wspomnianymi na pocz±tku. Rozpocznijmy od definicji. Cot to jest rasowanie pakietów IP. Oto jedna z definicji, któr± ja u¿ywam: Trasowanie pakietów IP to proces, w którym komputer z przy³±czeniami do wielu sieci decyduje, gdzie wys³aæ otrzy mane pakiety. Zilustrujmy to przyk³adem. Wyobra¿my sobie typowy biurowy router. Móg³by mieæ po³±czenie PPP z internetem, kilka segmentów ethernetowych obs³uguj±cych stacje robocze i jeszcze jedno po³±czenie PPP do innego biura. Kiedy router otrzymuje datagram z jednego ze swoich przy³±czeñ sieciowych, trasowanie jest mechanizmem stosowanym przez niego do wyboru portu przy³±czeniowego, do którego trzeba przes³aæ ten datagram. Zwyk³e komputery te¿ musz± wyjinywaæ trasowanie, wszystkie komputery w Internecie posiadaj± dwa urz±dzenia sieciowe, jedno z nich to urz±dzenie pêtli zwrotnej (loopback interface) opisane powy¿ej, a drugie to te, ktorego u¿ywa do porozumiewania siê z reszt± sieci. Mo¿e to byæ karta ethernetowa lub port PPP, czy SLIP. OK, w jaki sposób dzia³a trasowanie? Ka¿dy z komputerów przechowuje listê zasad trasowania, zwan± tabel± trasowania (routing table). Ka¿dy wiersz tej tabeli zawiera co najmniej trzy pola, pierwsze oznaczaj±ce adres docelowy, drugie zawiera nazwê interfejsu przez który nale¿y wys³aæ datagram, a trzecie, opcjonalne, to adres IP innego komputera (tzw. gateway),który przeniesie datagram dalej w jego drodze przez sieæ. Pod Linuxem tabelê trasowania mo¿na zobaczyæ wydaj±c polecenie: # cat /proc/net/route Proces trasowania jest ca³kiem prosty: otrzymujemy przychodz±cy data gram, adres docelowy (do kogo jest adresowany ten datagram) zostaje porównany z pozycjami tabeli routingu. Wybiera siê pozycje, kóra najbardziej pasuje do tego adresu i datagram zostaje przes³any przez okre¶lony w tej pozycji interfejs. Je¶li pole gatewaya nie jest puste, wtedy datagram zostaje przes³any do tego komputera przez okre¶lony w tej pozycji interfejs seciowy, w przeciwnym wyopadku zak³ada siê, ¿e adres docelowy le¿y na sieci obs³ugiwanej przez podany interfejs. Do manipulacji pozycjami tabeli trasowania s³u¿y specjalne polecenie. Wymaga podania w wierszu poleceñ dodatkowych parametrów i zamienia je na wywo³ania funkcji systemowych, które prosz± j±dro o dodanie, zmodyfikowanie lub usuniêcie pozycji w tabeli trasowania (która znajduje siê w gestii j±dra Linuxa). Polecenie to nazywa siê `_r_o_u_t_e'. Prosty przyk³ad. Wyobra¼my sobie, ¿e mamy sieæ ehernrtow±. Powiedziano nam, ¿e jest to sieæ klasy C o adresie 192.168.1.0. Nasz komputer otrzyma³ adres 192.168.1.10 i powiedziano nam, ¿e router przy³±czony do internetu ma adres 192.168.1.1. Pierwszym krokiem jest poprawne skonfigurowanie interfejsu, w sposób opisany wcze¶niej: # ifconfig eth0 192.168.1.10 netmask 255.255.255.0 up Teraz musimy dodaæ pozycjê do tabeli trasowania, aby powiedzieæ j±dru, ¿e datagramy do komputerów, których adresy pasuj±do wzorca 192.168.1.* powinny byæ wysy³ane przez interfejs ethernetowy. Stosuje siê w tym celu polecenie zbli¿one d otego: # route add -net 192.168.0.0 netmask 255.255.255.0 eth0 Zwróæ uwagê na argument `-net', który mówi programowi route, ¿e ta pozycja oznacza trasê do ca³ej podsieci (network route). Inn± mo¿liwo¶ci± jest pozycja okre¶laj±ca trasê do konkretnego adresu IP tzw. 'host route'. Powy¿sza pozyscja tabeli trasowania umo¿liwi nam komunikacjê ze wszystkimi kompouterami znajduj±cymi siê w naszym segmencie ethernetowym. A co z wszystkimi innymi adresami IP spoza naszego segmentu? Dodanie trasy do ka¿dej sieci.komputera z którym chcieliby¶my siê kiedykolwiek komunikowaæ by³oby ogromnym zadaniem. Dlatego wprowadzono tzw _t_r_a_s_ê _d_o_m_y_¶_l_n_± (efault route). Trasa _d_o_m_y_¶_l_n_a pasuje do ka¿dego adresu docelowego, lecz najgorzej jak tylko jest to mo¿liwe. Dlatego, je¶li istniej inna pozycja pasuj±ca do tego adresu, to ona zostanie wykorzystana zamiast pozycji _d_o_m_y_¶_l_n_e_j. Ide± trasy domy¶lnej jest umo¿liwienie zrealizowania polecenia "wszystko inne wys³aæ têdy". W naszym przyk³adzie oznacza to nastêpujace polecenie: # route add default gw 192.168.1.1 eth0 Argument `gw' informuje program route, ¿e nastêpny argument oznacza adres IP. lub nazwê atewaya lub routera, do któêgo nale¿y przesy³aæ wszystkie datagramy pasuj±cego do tej pozycji. Dalszym przes³aniem tych datagramów zajmie siê w³a¶nie ten komputer. Tak wiêc nasza pe³na konfiguracja wygl±da³a by nastêpuj±co: # ifconfig eth0 192.168.1.10 netmask 255.255.255.0 up # route add -net 192.168.0.0 netmask 255.255.255.0 eth0 # route add default gw 192.168.1.1 eth0 Je¶li dobrze siê przyj¿ysz plikom `rc' zajmuj±cymi siê sieci±, zobaczysz, ¿e przynajmniej jeden z nich wygl±da bardzo podobnie. Jest to bardzo populana koniguracja. Zajmijmy siê troszkê bardziej skomplikowanym przypadkiem. Za³ó¿my, ¿e zajmujemy siê konfiguracj± routera o którym mówili¶my wcze¶niej, tym który posiada po³±czenie PPP z Internetem, kilka segmentów sieci lokalnej. Niech konkretnie bêd± to trzy segmenty eternetowe i jedno ³±cze PPP. Konfiguracja trasowania w tym przypadku wygl±da³a by nastêpuj±co: # route add 192.168.1.0 netmask 255.255.255.0 eth0 # route add 192.168.2.0 netmask 255.255.255.0 eth1 # route add 192.168.3.0 netmask 255.255.255.0 eth2 # route add default ppp0 Ka¿da ze stacji roboczych u¿ywa³aby prostszej formy przezentowanej wcze¶niej. Tylko router musi okre¶liæ oddzielnie trasê do ka¿dej z sieci, poniewa¿ w przypadku stacji roboczej pozycja _d_o_m_y_¶_l_n_a obs³u¿y wszystkie po³±czenia pozostawiaj±c routerowi zmartwienie odpowiedniego podzia³u ruchu. Mo¿esz siê zastanawiaæ, dlaczego trasa domy¶lna na routerze nie posiada argumentu gw. Przyczyna jest prosta. Protoko³y urz±dzeñ szeregowych, takich jak PPP czy SLIP, zawsze maj± w swojej sieci tylko dwa komputery, po jednym na ka¿dym koñcu. Wskazywanie komputera po drugiej stronie po³±czenia jako gatewaya jest niepotrzebne i nadmiarowe, poniewa¿ nie ma innej mo¿liwo¶ci ni¿ przes³aæ pakiety na drugi koniec po³±czenia PPP. Dlatego nie jest potrzebne okre¶anie w tego rodzaju po³±czeniach gatewaya. Podania gatewaya wyagaj± w takiej sytuacji inne rodzaje sieci, np. ethernet, arcnet, token ring, które obs³uguj± wiele komputerów na jednym segmen cie. 55..77..11.. DDoo cczzeeggoo ss³³uu¿¿yy pprrooggrraamm _r_o_u_t_e_d ?? Konfiguracja trasowania opisana powy¿ej nadaje siê dla prostych konfiguracji sieci, gdzie zawsze istnieje tylko jedna droga do celu. W przypadku bardziej skomplikowanych konfiguracji sieci, sprawy nieco siê komplikuj±. Na szczê¶cie wiêkszo¶ci was to nie dotyczy. Najwieksze k³opoty jakie sprawia 'trasoeanie rêczne' lub ineczaj mówi±c 'statyczne', polegaj± na tym, ¿e w przypadku przerwania ³acza do komputera docelowego, jedyn± metod± nawi±zania komunikacji inn± drog± (je¶li taka istnieje) jest rêczna interwencja w tabelê trasowania (rêczne uruchomienie odpowiednich poleceñ). Naturanie jest to bardzo powolne, niepraktyczne i ryzykowne. Zosta³y rozwiniête techniki w celu automatycznej modyfikacji tabeli trasowania w przypadku awarii po³±czeñ w celu prze³±czenia ruchu na drogi obej¶ciowe, wszystkie te metody nazwywane s± ogólnie 'trsowaniem dynamicznym'. Byæ mo¿e sz³ysza³e¶ o najbardziej popularnych protoko³ach dynamicznego trasowania. Najczêsciej wystêpuj±cym jes RIP (Routing Information Protocol) i OSPF (Open Shortest Path First Protocol). RIP jest bardzo populany w ma³ych sieciach takic hjak ma³ego rozmiaru sieci korporacyjne lub sieci miêdzy budynkami. OSPF jest nowocze¶niejszym i bardziej sprawnym protoko³em, lepiej nadaj±cym siê do obs³ugi du¿ych konfigracji sieci i lepiej nadaje siê do zastosowania w ¶rodowiskach, gdzie istnieje du¿a liczba mo¿liwych tras przesy³ania pakietu. Powszechnymi implementacjami tych protoko³ów s± programy _r_o_u_t_e_d -RIP i _g_a_t_e_d -RIP,OSPF i inne. _r_o_u_t_e_d jest zwykle w ka¿dej dystrybucji Linuxa, lub mo¿na go znale¼æ w pakiecie `NetKit' opisanym wcze¶niej. Przyk³ad, któty mog³by wymagaæ zastosowania dynamicznego trasowania móg³by wygl±daæ nastêpuj±co: 192.168.1.0 / 192.168.2.0 / 255.255.255.0 255.255.255.0 - - | | | /-----\ /-----\ | | | |ppp0 // ppp0| | | eth0 |---| A |------//---------| B |---| eth0 | | | // | | | | \-----/ \-----/ | | \ ppp1 ppp1 / | - \ / - \ / \ / \ / \ / \ / \ / \ / \ / ppp0\ /ppp1 /-----\ | | | C | | | \-----/ |eth0 | |---------| 192.168.3.0 / 255.255.255.0 Mamy tutaj trzy routery A,B iC. Ka¿dy obs³uguje segment sieci klasy C (netmaska 255.255.255.0). Ka¿dy router posiada równie¿ ³±zcze PPP do ka¿dego z pozosta³ych routerów. Sieæ tworzy trójk±t. owinno byæ ju¿ oczywiste, ¿e tabela trasowania na routerza A wygl±da nastêpuj±co: # route add -net 192.168.1.0 netmask 255.255.255.0 eth0 # route add -net 192.168.2.0 netmask 255.255.255.0 ppp0 # route add -net 192.168.3.0 netmask 255.255.255.0 ppp1 Taka konfiguracja bêdzie dzia³a³a poprawnie, dopóki po³±czenie pomiêdzy routerami A i B bêdzie pracowaæ poprawnie. Jêsli nast±pi awaria tego po³±czenia komputery na segmencie A nie bêd± w stania osi±gn±æ komputerów segmentu B i na odwrót poniewa¿ ich datagramy bêd± kierowane d ointerfejsu ppp0 routera A, który uleg³ w³a¶nie awarii. Jednak komputery z segmentu B bêd± mog³y nadal komunikowaæ siê z seg mentem D i na odwrót poniewa¿ po³±zenie PPP pomiêdzy komputerami pozosta³o nietkniête. Zaczekaj! Skoro A mo¿e komunikowaæ siê z C i C mo¿e komunikowaæ siê z B dlaczego nie przesy³aæ datagramów adresowanych do B przez C zrzucaj±c na niego dostarczenie ich do B? To jest w³a¶nie rodzaj problemu, do rozwi±zania którego powsta³y protoko³y trasowania dynamicznego, jak np. RIP. Gdyby na ka¿dym z routerów by³ uruchominy program _r_o_u_t_e_d wtedy tablice trasowania zosta³yby automatycznie poprawione, tak aby odzwierciedla³y nowy stan sieci w przypadku awarii któregokolwiek po³±czenia. Utworzenie takiej konfiuracji jest proste. Na ka¿dym z routerów nale¿y zrobiæ dwie rzeczy. W przypadku routera A: # route add -net 192.168.1.0 netmask 255.255.255.0 eth0 # /usr/sbin/routed Demon `_r_o_u_t_e_d'tu¿ po uruchomieniu automatycznie znajdzie aktywne porty przy³±czeñ sieciowych, nastêpnie bêdzie do nich rozsy³a³ i nas³uchiwa³ przychodz±cych z nich komunikatów pozwalaj±c w ten sposób okre¶lenie porawnej tabeli trasowania. To by³ bardzo krótki opis trasowania dynamicznego i jego zastosowañ. Je¶li potrzebujesz wiêcej informacji powiniene¶ zapoznaæ siê dokumentami, do których referencje znajdziesz na pocz±tku tego dokumentu. Istotne sprawy dotycz±ce dynamicznego trasowania: 1. Potrzeba uruchomienia demona protoko³u dynamicznego trasowania zachodzi jedynie wtedy, gdy twój Linux ma mo¿liwo¶æ wyboru trasy do komputera docelowego. 2. Demon trasowania dynamicznego bêdzie automatycznie modyfikowa³ tabelê trasowania dopasowuj±c j± do zmian w strukturze sieci. 3. RIP nadaje siê do sieci ma³ych i ¶rednich. 55..88.. KKoonnffiigguurraaccjjaa sseerrwweerróóww ii uuss³³uugg ssiieecciioowwyycchh.. Serwery i us³ugi sieciowe s± to te programy, które pozwalaj± zdalnemu u¿ytkownikowi staæ siê u¿ytkownikiem twojego komputera. Zdalny u¿ytkownik ustanawia po³±czenie sieciowe z twoim komputerem i programem oferuj±cym us³ugê, lub demonem sieciowym, nas³uchuj±cym na danym porcie, akceptuje po³±czenie i wykonuje program. Istniej± dwa tryby pracy demonów sieciowych. Oba s± równie czêsto stosowane. Oto one: nniieezzaallee¿¿nnyy program-demon sieciowy nas³uchje na okre¶³onych portach sieciowch i w momencie zestawienia przychodz±cego po³±czenia samemu zarz±dza tym po³±czeniem w celu udostêpnienia danej us³ugi. ppooddppoorrzz±±ddkkoowwaannyy sseerrwweerroowwii _i_n_e_t_d serwer _i_n_e_t_d jest specjalnym programem-demonem sieciowym specjalizuj±cym siê w obs³udze zestawiania po³±czeñ sieciowych. Posiada w³asny plik konfiguracyjny, który mówi mu, który mówi mu, który program obs³ugi us³ugi powinien zostaæ uruchomiony dla zaistnia³ej kombinacji typu po³±czenia (tcp lub udp) i numeru portu. Porty s± opisane w innym pliku, o którym opowiemy ju¿ nied³ugo. Istniej± dwa wa¿ne pliki konfiguracyjne. S± to /etc/services: plik, który kojarzy nazwy z numerami portów i /etc/inetd.conf: plik konfiguracyjny demona _i_n_e_t_d. 55..88..11.. //eettcc//sseerrvviicceess Plik /etc/services jest prost± baz±, która kojarzy ³atwe dla cz³owieka nazy portów z wykorzystywanymi przez komputery numerami. Posiada bardzo prosty format. Jest to plik tekstowy, którego ka¿dy wiersz jest jednym rekordem informacji. Ka¿dy rekord sk³ada siê z trzech pól, rozdzielonych dowoln± ilo¶ci± bia³ych znaków (tabulator lub odstêp): nazwa port/protokó³ aliasy # komentarz nnaazzwwaa jedno s³owo reprezentuj±ce opisywan± us³ugê. ppoorrtt//pprroottookkóó³³ to pole jest podzielone na dwie czê¶ci ppoorrtt numer okre¶laj±cy numer portu pod którym bêdzie dostêpna dana us³uga. Wiekszo¶æ popularnych us³ug ma ju¿ przydzielone numery portów. S± opisane w RFC-1340. pprroottookkóó³³ mo¿e to byæ albo tcp albo udp. Nale¿y zapamiêtaæ, ¿e pozycja 18/tcp jest zupe³nie inna ni¿ pozycja 18/udp i nie ma ¿adnych technicznych uwarunkowañ, dlaczego danaus³uga mia³aby istnieæ w obu przypadkach. Nale¿y zachowaæ zdrowy rozs±dek. Je¶li która¶ z us³ug jest rzeczywi¶cie dostêpna zarówno przez tcp, jak i przez udp, wtedy rzeczywi¶cie w /etc/services znajd± sie obie te pozycje. aalliiaassyy inne nazwy, pod którymi bêdzie znana ta us³uga. Dowolny tekst w wierszu po znaku `#' jest traktowany jako komentarz i ignorowany. 55..88..11..11.. PPrrzzyykk³³aadd pplliikkuu //eettcc//sseerrvviicceess. Wszystkie nowe dystrybucje Linuxa dostarczaj± dobry plik /etc/services. Na wszelki wypadek, gdyby¶ chcia³ zbudowaæ swój komputer od zera oto kopia pliku /etc/services jaki jest dostarczany razem z dystrybucj± Debian <http://www.debian.org/>. # /etc/services: # $Id: NET-3-HOWTO.pl.sgml,v 1.2 1997/07/28 14:04:07 ppogorze Exp $ # # Network services, Internet style # # Note that it is presently the policy of IANA to assign a single well-known # port number for both TCP and UDP; hence, most entries here have two entries # even if the protocol doesn't support UDP operations. # Updated from RFC 1340, ``Assigned Numbers'' (July 1992). Not all ports # are included, only the more common ones. tcpmux 1/tcp # TCP port service multiplexer echo 7/tcp echo 7/udp discard 9/tcp sink null discard 9/udp sink null systat 11/tcp users daytime 13/tcp daytime 13/udp netstat 15/tcp qotd 17/tcp quote msp 18/tcp # message send protocol msp 18/udp # message send protocol chargen 19/tcp ttytst source chargen 19/udp ttytst source ftp-data 20/tcp ftp 21/tcp ssh 22/tcp # SSH Remote Login Protocol ssh 22/udp # SSH Remote Login Protocol telnet 23/tcp # 24 - private smtp 25/tcp mail # 26 - unassigned time 37/tcp timserver time 37/udp timserver rlp 39/udp resource # resource location nameserver 42/tcp name # IEN 116 whois 43/tcp nicname re-mail-ck 50/tcp # Remote Mail Checking Protocol re-mail-ck 50/udp # Remote Mail Checking Protocol domain 53/tcp nameserver # name-domain server domain 53/udp nameserver mtp 57/tcp # deprecated bootps 67/tcp # BOOTP server bootps 67/udp bootpc 68/tcp # BOOTP client bootpc 68/udp tftp 69/udp gopher 70/tcp # Internet Gopher gopher 70/udp rje 77/tcp netrjs finger 79/tcp www 80/tcp http # WorldWideWeb HTTP www 80/udp # HyperText Transfer Protocol link 87/tcp ttylink kerberos 88/tcp kerberos5 krb5 # Kerberos v5 kerberos 88/udp kerberos5 krb5 # Kerberos v5 supdup 95/tcp # 100 - reserved hostnames 101/tcp hostname # usually from sri-nic iso-tsap 102/tcp tsap # part of ISODE. csnet-ns 105/tcp cso-ns # also used by CSO name server csnet-ns 105/udp cso-ns rtelnet 107/tcp # Remote Telnet rtelnet 107/udp pop-2 109/tcp postoffice # POP version 2 pop-2 109/udp pop-3 110/tcp # POP version 3 pop-3 110/udp sunrpc 111/tcp portmapper # RPC 4.0 portmapper TCP sunrpc 111/udp portmapper # RPC 4.0 portmapper UDP auth 113/tcp authentication tap ident sftp 115/tcp uucp-path 117/tcp nntp 119/tcp readnews untp # USENET News Transfer Protocol ntp 123/tcp ntp 123/udp # Network Time Protocol netbios-ns 137/tcp # NETBIOS Name Service netbios-ns 137/udp netbios-dgm 138/tcp # NETBIOS Datagram Service netbios-dgm 138/udp netbios-ssn 139/tcp # NETBIOS session service netbios-ssn 139/udp imap2 143/tcp # Interim Mail Access Proto v2 imap2 143/udp snmp 161/udp # Simple Net Mgmt Proto snmp-trap 162/udp snmptrap # Traps for SNMP cmip-man 163/tcp # ISO mgmt over IP (CMOT) cmip-man 163/udp cmip-agent 164/tcp cmip-agent 164/udp xdmcp 177/tcp # X Display Mgr. Control Proto xdmcp 177/udp nextstep 178/tcp NeXTStep NextStep # NeXTStep window nextstep 178/udp NeXTStep NextStep # server bgp 179/tcp # Border Gateway Proto. bgp 179/udp prospero 191/tcp # Cliff Neuman's Prospero prospero 191/udp irc 194/tcp # Internet Relay Chat irc 194/udp smux 199/tcp # SNMP Unix Multiplexer smux 199/udp at-rtmp 201/tcp # AppleTalk routing at-rtmp 201/udp at-nbp 202/tcp # AppleTalk name binding at-nbp 202/udp at-echo 204/tcp # AppleTalk echo at-echo 204/udp at-zis 206/tcp # AppleTalk zone information at-zis 206/udp z3950 210/tcp wais # NISO Z39.50 database z3950 210/udp wais ipx 213/tcp # IPX ipx 213/udp imap3 220/tcp # Interactive Mail Access imap3 220/udp # Protocol v3 ulistserv 372/tcp # UNIX Listserv ulistserv 372/udp # # UNIX specific services # exec 512/tcp biff 512/udp comsat login 513/tcp who 513/udp whod shell 514/tcp cmd # no passwords used syslog 514/udp printer 515/tcp spooler # line printer spooler talk 517/udp ntalk 518/udp route 520/udp router routed # RIP timed 525/udp timeserver tempo 526/tcp newdate courier 530/tcp rpc conference 531/tcp chat netnews 532/tcp readnews netwall 533/udp # -for emergency broadcasts uucp 540/tcp uucpd # uucp daemon remotefs 556/tcp rfs_server rfs # Brunhoff remote filesystem klogin 543/tcp # Kerberized `rlogin' (v5) kshell 544/tcp krcmd # Kerberized `rsh' (v5) kerberos-adm 749/tcp # Kerberos `kadmin' (v5) # webster 765/tcp # Network dictionary webster 765/udp # # From ``Assigned Numbers'': # #> The Registered Ports are not controlled by the IANA and on most systems #> can be used by ordinary user processes or programs executed by ordinary #> users. # #> Ports are used in the TCP [45,106] to name the ends of logical #> connections which carry long term conversations. For the purpose of #> providing services to unknown callers, a service contact port is #> defined. This list specifies the port used by the server process as its #> contact port. While the IANA can not control uses of these ports it #> does register or list uses of these ports as a convienence to the #> community. # ingreslock 1524/tcp ingreslock 1524/udp prospero-np 1525/tcp # Prospero non-privileged prospero-np 1525/udp rfe 5002/tcp # Radio Free Ethernet rfe 5002/udp # Actually uses UDP only bbs 7000/tcp # BBS service # # # Kerberos (Project Athena/MIT) services # Note that these are for Kerberos v4, and are unofficial. Sites running # v4 should uncomment these and comment out the v5 entries above. # kerberos4 750/udp kdc # Kerberos (server) udp kerberos4 750/tcp kdc # Kerberos (server) tcp kerberos_master 751/udp # Kerberos authentication kerberos_master 751/tcp # Kerberos authentication passwd_server 752/udp # Kerberos passwd server krb_prop 754/tcp # Kerberos slave propagation krbupdate 760/tcp kreg # Kerberos registration kpasswd 761/tcp kpwd # Kerberos "passwd" kpop 1109/tcp # Pop with Kerberos knetd 2053/tcp # Kerberos de-multiplexor zephyr-srv 2102/udp # Zephyr server zephyr-clt 2103/udp # Zephyr serv-hm connection zephyr-hm 2104/udp # Zephyr hostmanager eklogin 2105/tcp # Kerberos encrypted rlogin # # Unofficial but necessary (for NetBSD) services # supfilesrv 871/tcp # SUP server supfiledbg 1127/tcp # SUP debugging # # Datagram Delivery Protocol services # rtmp 1/ddp # Routing Table Maintenance Protocol nbp 2/ddp # Name Binding Protocol echo 4/ddp # AppleTalk Echo Protocol zip 6/ddp # Zone Information Protocol # # Debian GNU/Linux services rmtcfg 1236/tcp # Gracilis Packeten remote config server xtel 1313/tcp # french minitel cfinger 2003/tcp # GNU Finger postgres 4321/tcp # POSTGRES mandelspawn 9359/udp mandelbrot # network mandelbrot # Local services 55..88..22.. //eettcc//iinneettdd..ccoonnff Plik /etc/inetd.conf jest plikiem konfiguracyjnym programu _i_n_e_t_d. Jego rol± jest poinformowanie _i_n_e_t_d co powinien zrobiæ w momencie otrzymania po³±czenia z konkretn± us³ug±. Musisz powiedzieæ programowi _i_n_e_t_d, który programobs³ugi uruchomiæ i jak to zrobiæ. Musisz to zrobiæ dla ka¿dej us³ugi, której po³±czenia maj± byæ obs³ugiwane przez program _i_n_e_t_d. Format tego pliku jest ca³kiem prosty. Jest to plik tekstowy, którego k±zy wiersz jest niezale¿ny rekordem danych opisuj±cych jedn± z us³ug jak± chcesz obs³ugiwaæ. Dowolny tekst w wierszu po znaku `#' jest traktowany jako komentarz i pomijany. Ka¿dy wiersz sk³ada siê z siedmiu pól rodzielonych bia³ymi znakami (tabulator lub odstêp) w formacie: service socket_type proto flags user server_path server_args us³uga rodzaj_gniazda protokó³ flagi u¿ytkownik ¶cie¿ka_dostêpu arguemnty uuss³³uuggaa nazwa wus³ugi pobrana przez inetd z /etc/services rrooddzzaajj ggnniiaazzddaa to pole okre¶³a rodzaj gniazda jakie zostanie utworzone, dozwolone warto¶c to : stream, dgram, raw, rdm, or seqpacket. Dok³adny opis jest do¶æ skomplikowany ale jako pierwsze przybli¿enie mo¿na potraktowaæ zasadê ,¿e niewmal wszystkie us³ugi korzystaj±ce z tcp u¿ywaj± stream i niemal wszystkie us³ugi korzystaj±ce z udp u¿ywaj± dgram. Inne kombinacje parametrów wystêpuj± w bardzo rzadkich przypadkach specjalizowanych serwerów us³ug. pprroottookkóóll nazwa protoko³u danej pozycji. Powinien pasowaæ do odpowiedniej pozycji pliku /etc/serwer i zwykle jest to tcp lub udp. Us³ugi oparte na Sun RPC (Remote Procedure Call) bêd± korzysta³y z rpc/tcp lub rpc/udp. ffllaaggii istniej± tylko dwie warto¶ci jakie mo¿e przyjmowaæ to pole. Informuj± one program inetd czy uruchomiony program obs³ugi zwalnia gniazdo co pozwala na uruchomienie kolejnego przy nastêpneym po³±czeniu d otej us³ugi, czy _i_n_e_t_d powiniec zaczekaæ na zakoñczenie dzia³ania programu obs³ugi, który sam bêdzie obs³ugiwa³ ¿±dania zestawienia po³±czenia. Ponownie dok³adny opis jest dosyæ skomplokowany, lecz w przybli¿eniu mozna powiedzieæ, ¿e wszsytkie us³ugi typu tcp powinny w tym polu mieæ warto¶æ nowait i wiêkszo¶æ us³ug typu udp powinny przyjmowaæ wartosæ wait. Pamiêtaj, ¿e istniej± znacz±ce wyj±tki od tej regu³y. uu¿¿yyttkkoowwnniikk okre¶la, który u¿ytkownik zdefiniowany w pliku /etc/passwd statnie siê w³a¶cicielem uruchomionego demona sieciowego. JEst to po¿yteczne, gdy chcesz zwiêkszyæ bezpieczeñstwo swojego systemu. Mo¿esz temu polu nadaæ wartosæ nobidy aby w przypadku z³amania zabezpieczeñ programów obs³ugi wyrz±dzone straty by³y jak najmniejsze. Zwykle to pole przyjmuje warto¶æ root, poniewa¿ wiêkszo¶æprogramów obs³ugi do wykonania poprwnie swych zadañ wymaga uprawnieñ administatora. ¶¶cciiee¿¿kkaa__ddoossttêêppuu to pole oznacza pe³n± scie¿kê dostêpu do programu obs³ugi, który nale¿y uruchomiæ. aarrgguummeennttyy zawiera pozosta³± czê¶æ wiersza poleceñ uruchamianego programu obs³ugi. Jest to parametr opcjonalny. To wla¶nie tutaj mo¿esz umie¶ciæ dowolne parametry, które zostan± przekazane programowi obs³ugi w momencie jego uruchomienia przez program inetd. 55..88..22..11.. PPrrzzyykk³³aadd pplliikkuu //eettcc//iinneettdd..ccoonnff Podobnie jak w perzypadku pliku /etc/services wszystkie nowoczesne dystrybucje zawieraj± poprawny plik /etc/inetd.conf. Na wszelki wypadek ponie¿ej mo¿na znale¿æ plik /etc/inetd.conf dostarczany z dystrybucj± Debian <http://www.debian.org/> . # /etc/inetd.conf: see inetd(8) for further informations. # # Internet server configuration database # # # Modified for Debian by Peter Tobias <tobias@et-inf.fho-emden.de> # # <service_name> <sock_type> <proto> <flags> <user> <server_path> <args> # # Internal services # #echo stream tcp nowait root internal #echo dgram udp wait root internal discard stream tcp nowait root internal discard dgram udp wait root internal daytime stream tcp nowait root internal daytime dgram udp wait root internal #chargen stream tcp nowait root internal #chargen dgram udp wait root internal time stream tcp nowait root internal time dgram udp wait root internal # # These are standard services. # telnet stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.telnetd ftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.ftpd #fsp dgram udp wait root /usr/sbin/tcpd /usr/sbin/in.fspd # # Shell, login, exec and talk are BSD protocols. # shell stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rshd login stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rlogind #exec stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rexecd talk dgram udp wait root /usr/sbin/tcpd /usr/sbin/in.talkd ntalk dgram udp wait root /usr/sbin/tcpd /usr/sbin/in.ntalkd # # Mail, news and uucp services. # smtp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.smtpd #nntp stream tcp nowait news /usr/sbin/tcpd /usr/sbin/in.nntpd #uucp stream tcp nowait uucp /usr/sbin/tcpd /usr/lib/uucp/uucico #comsat dgram udp wait root /usr/sbin/tcpd /usr/sbin/in.comsat # # Pop et al # #pop-2 stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.pop2d #pop-3 stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.pop3d # # `cfinger' is for the GNU finger server available for Debian. (NOTE: The # current implementation of the `finger' daemon allows it to be run as `root'.) # #cfinger stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.cfingerd #finger stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.fingerd #netstat stream tcp nowait nobody /usr/sbin/tcpd /bin/netstat #systat stream tcp nowait nobody /usr/sbin/tcpd /bin/ps -auwwx # # Tftp service is provided primarily for booting. Most sites # run this only on machines acting as "boot servers." # #tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd #tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /boot #bootps dgram udp wait root /usr/sbin/bootpd bootpd -i -t 120 # # Kerberos authenticated services (these probably need to be corrected) # #klogin stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rlogind -k #eklogin stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rlogind -k -x #kshell stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rshd -k # # Services run ONLY on the Kerberos server (these probably need to be corrected) # #krbupdate stream tcp nowait root /usr/sbin/tcpd /usr/sbin/registerd #kpasswd stream tcp nowait root /usr/sbin/tcpd /usr/sbin/kpasswdd # # RPC based services # #mountd/1 dgram rpc/udp wait root /usr/sbin/tcpd /usr/sbin/rpc.mountd #rstatd/1-3 dgram rpc/udp wait root /usr/sbin/tcpd /usr/sbin/rpc.rstatd #rusersd/2-3 dgram rpc/udp wait root /usr/sbin/tcpd /usr/sbin/rpc.rusersd #walld/1 dgram rpc/udp wait root /usr/sbin/tcpd /usr/sbin/rpc.rwalld # # End of inetd.conf. ident stream tcp nowait nobody /usr/sbin/identd identd -i 55..99.. ffiilleess.. IInnnnee pplliikkii kkoonnffiigguurraaccyyjjnnee zzwwii±±zzaannee zz ssiieeccii±±.. Linux posiada jeszcze kilka plików konfiguracyjnychm które maj± wp³yw na pracê sieci, z którymi powinno siê zapoznaæ. Byæ mo¿e nigdy nie wyst±pi potrzeba ich modyfikacji, lecz warto wiedzieæ jakie inforamcje zawieraj± i czego dotycz±. 55..99..11.. //eettcc//pprroottooccoollss Plik /etc/protocols zawiera inforamcje przyporz±dkowuj±ce nazwom protoko³ów odpowiednie numery. Jest wywkorzystywany przez ró¿ne programy pozwalaj±c na podawanie nazw protoko³ów zamiast numerów oraz inne programy, jak np tcpdump, które mog± wy¶wietlaæ nazwy protoko³ów zamiast ich liczbowej reprezentacji. Sk³adnia pliku jest nastêpuj±ca: protocolname number aliases nazwa_protoko³u numer aliasy Plik /etc/protocols dostarczany w dystrybucji Debian <http://www.debian.org/> wygl±da nastêpuj±co: # /etc/protocols: # $Id: NET-3-HOWTO.pl.sgml,v 1.2 1997/07/28 14:04:07 ppogorze Exp $ # # Internet (IP) protocols # # from: @(#)protocols 5.1 (Berkeley) 4/17/89 # # Updated for NetBSD based on RFC 1340, Assigned Numbers (July 1992). ip 0 IP # internet protocol, pseudo protocol number icmp 1 ICMP # internet control message protocol igmp 2 IGMP # Internet Group Management ggp 3 GGP # gateway-gateway protocol ipencap 4 IP-ENCAP # IP encapsulated in IP (officially ``IP'') st 5 ST # ST datagram mode tcp 6 TCP # transmission control protocol egp 8 EGP # exterior gateway protocol pup 12 PUP # PARC universal packet protocol udp 17 UDP # user datagram protocol hmp 20 HMP # host monitoring protocol xns-idp 22 XNS-IDP # Xerox NS IDP rdp 27 RDP # "reliable datagram" protocol iso-tp4 29 ISO-TP4 # ISO Transport Protocol class 4 xtp 36 XTP # Xpress Tranfer Protocol ddp 37 DDP # Datagram Delivery Protocol idpr-cmtp 39 IDPR-CMTP # IDPR Control Message Transport rspf 73 RSPF # Radio Shortest Path First. vmtp 81 VMTP # Versatile Message Transport ospf 89 OSPFIGP # Open Shortest Path First IGP ipip 94 IPIP # Yet Another IP encapsulation encap 98 ENCAP # Yet Another IP encapsulation 55..99..22.. //eettcc//nneettwwoorrkkss Plik /etc/networks ma funkcjê zbli¿on± do funkcji pliku /etc/hosts. Jest prost± baz± danych nazw i adresów sieci. Jego format ró¿ni siê tylko tym, ¿e mo¿e zawieraæ jedynie dwa pola w wierszu w nastêpujacym formacie: # networkname networkaddress # nzawa_sieci adres_sieci Przyk³adowy plik móg³by wygl±daæ tak: loopnet 127.0.0.0 localnet 192.168.0.0 amprnet 44.0.0.0 W przypadku u¿ywania programu _r_o_u_t_e je¶li punkt docelowy jest sieci±, a sieæ ta znajduje siê w pliku /etc/networks, wtedy polecenie route zamiast adresu IP sieci wy¶wietli jej nazwê. 55..1100.. BBeezzppiieecczzeeññssttwwoo ssiieecciioowwee ii sstteerroowwaanniiee ddoossttêêppeemm.. Pozwól, ¿e rozpocznê ten rozdzia³ stwierdzeniem, ¿e zabezbieczanie komputera i sieci przed z³o¶liwymi atakami jest trudn± i skomplikowan± sztuk±. Nie uwa¿am siê za aksperta w tej dziedzinie i choæ opisywane przeze mnie mechanizmy pomog± byæ bardziej bezpiecznym to je¶li bardzo ci zale¿y na bezpieczeñstwie twojego systemu radzi³bym ci rozejrzeæ siê dok³adniej w tym temacie. W internecie mo¿na znale¼æ wiele dobrych referencji na ten temat. Podstawowa zasada brzmi: `NNiiee uurruucchhaammiiaajj sseerrwweerróóww ((pprrooggrraammóóww oobbss³³uuggii)),, kkttóórryycchh nniiee zzaammiieerrzzaasszz uu¿¿yywwaaææ..'. Wiele dystrybucji posiada mnóstwo ró¿nego rodzaju oprogramowania, automatycznie konfigurowanego i uruchamianego. Aby zapewniæ sobie minimalny poziom bezpieczeñstwa powinno siê przyjrzeæ siê plikowie /etc/inetd.conf i skomentowaæ te us³ugi, których nie zamierzasz u¿ywaæ. Dobrymi kandydatami s±: shell, login, exec, uucp, ftp i serwisy informacyjne, jak: finger, netstat i systat. Istnieje wiele mechanizmów sterowania dostêpem do oferowanych us³ug sieciowych, wymieniê podstawowe. 55..1100..11.. //eettcc//ffttppuusseerrss Plik /etc/ftpusers jest prostym mechanizmem pozwalaj±cym na zabronienie wej¶cia do systemu przez us³ugê ftp niektórym u¿ytkownikom twojego komputera. /etc/ftpusers jest odczytywany przez program obs³uguj±cy uslugê ftp (_f_t_p_d) w momencie nawi±zania przychodz±cego po³±czenia. Plik zawiera listê tych u¿ytkowników, którzy nie maj± pozwolenia wchodzenie do systemy przez uslugê ftp. Móg³by wygladaæ mniej wiêcej tak: # /etc/ftpusers - u¿ytkownicy, którzy nie mog± dostac siê do systemu # przez ftp root uucp bin mail 55..1100..22.. //eettcc//sseeccuurreettttyy Pli /etc/securetty pozwala na okre¶lenie listy urz±dzeñ tty, przez które mo¿e logowaæ siê administrator. Plik /etc/securetty jest wczytywany przez program weryfikuj±cy u¿ytkownika (zwykle _/_b_i_n_/_l_o_g_i_n). Jest to lista nazw urz±dzeñ, które mog± byæ wykorzystywane przez administratora na wej¶cie do systemu. Wej¶cie do systemu przez administratora przez inne urz±dzenia jest niemo¿liwe. # /etc/securetty - terminale tty przez które administrator mo¿e # zalogowaæ siê do systemu tty1 tty2 tty3 tty4 55..1100..33.. MMeecchhaanniizzmm sstteerroowwaanniiaa ddoossttêêppeemm ppaakkiieettuu _t_c_p_d.. Program _t_c_p_d jaki prawdopodobnie widzia³e¶ w pliku /etc/inetd.conf dostarcza mechanizmów rejestracji i sterowania dostêpem do us³ug, do ochrony których zosta³ skonfigurowany. W momencie uruchamienia przez program _i_n_e_t_d odczytuje swoje dwa pliki konfiguracyjne, zawieraj±ce zasady dostêpu i albo zezwala, albo odmawia dostêpu do us³ugim któr± ochrania. Przeszukuje zasady znajduj±ce siê plikach konfiguracyjnych, a¿ do napotkania pierwszej, która pasuje d ozaistnia³ej sytuacji. Je¶li takiej nie znalaz³ zak³ada, ¿e nale¿y pozwoliæ na dostêp. Pliki które przeszukuje to w kolejno¶ci: /etc/hosts.allow i /etc/hosts.deny. Pokrótce opisze zawarto¶æka¿dego z nich. Pe³ny opis mo¿liwo¶ci programu _t_c_p_d znajdziesz na stronach podrêcznika (man hosts_allow). 55..1100..33..11.. //eettcc//hhoossttss..aallllooww Plik /etc/hosts.allow jest plikiem konfiguracyjnym programu _/_u_s_r_/_s_b_i_n_/_t_c_p_d. Plik hosts.allow zawiera informacje okre¶laj±ce, ktroe komputery _m_o_g_± uzyskaæ dostêp do chronionej us³ugi w twoim systemie. Format pliku jest bardzo prosty: # /etc/hosts.allow # # <lista us³ug>: <lista komputerów> [: polecenie] lliissttaa uuss³³uugg jest odzielona przecinkami list± nazw programów obs³ugi chronionej us³ugi do której ma zastosowanie dana regu³a. Na przyklad: ftpd, telnetd i fingerd. lliissttaa kkoommppuutteerróóww jest rozdzielon± przecinkami list± nazw komputerów lub adresów IP. Mo¿na równie¿ okre¶laæ wzroce adresów lub naz komputerów stsuj±c znaki specjalne, umo¿liwiajæ tworzenie wzorców reprezentujacych grupy komputerów. Np. gw.v2ktj.ampr.org oznacz konkretny komputer, siê podanym ci±giem znaków, 44. oznacza dowolny adres IP zawieraj±cy te cyfry. W celu uproszczenia konfiguracji wporwadzono kilka specjalnych oznaczeñ: ALL okre¶laj±ce wszystkie komputery, LOCAL reprezentuj±cy wszystkei komputery, których nazwa nie zawiera znaku `.' tzn. nale¿± do tej samej domeny co twój komputer, PARANOID oznaczaj±cy wszystkie komputery, których nazwa nie odpowiada ich adresowi (name spoofing). I ostani element bardzo u¿yteczny, to EXCEPT pozwalaj±cy na podanie listy z wyj±tkami. Omówimy to dok³adnie pó¼niej na przyk³adzie. ppoolleecceenniiee jest opcjonalnym parametrem. Jest to pe³na ¶cie¿ka dostêpu do polecenia (programu), który nale¿y uruchomiæ za ka¿dym razem, kiedy dana regu³a zostanie dopasowana. Mo¿e to byæ polecenie, które bêdzie próbowa³o zidentyfikowaæ , kto znajduje siê w tej chwili na komputerze próbuj±cym nawi±zaæ po³±czenia, lub wy¶le wiadomo¶æ lub inny komunikat adresowany do administratora systemu informuj±c o próbie po³±czenia. Isnieje kilka wzorców, które zostan± podmienione, najczêsciej wykorzystywane to: %h jest zamieniane na nazwê komputera nawi±zuj±cego po³±czenie lub jego adres je¶³i nie posiada nazwy, %d na nazwê programu obs³ugi, który zosta³ wywo³any. Przyk³ad: # /etc/hosts.allow # # dostêp do poczty dla wszystkich in.smtpd: ALL # po³aczenie telnet i ftp tylko z komputerów z lokalnej domeny i # mojego komputera domowego telnetd, ftpd: LOCAL, myhost.athome.org.au # Pozwól na finger z dowolnego komputera, lecz rejestrój kto siê z # nami ³±czy³ fingerd: ALL: (finger @%h | mail -s "finger from %h" root) 55..1100..33..22.. //eettcc//hhoossttss..ddeennyy Plik /etc/hosts.denyjest plikiem konfiguracyjnym programu _/_u_s_r_/_s_b_i_n_/_t_c_p_d. hosts.deny zawiera listê komputerów, które nie mog± usyskaæ dostêpu do chronionej us³ugi w twpom systemie. Prosty przyklad wyg³±da³ by mniej wiêcej tak: # /etc/hosts.deny # # Zabroñ dostêpu wszystkim komputerom o podejrzanych nazwach ALL: PARANOID # # Zabroñ dostêpu wszystkim do wszystkiego ALL: ALL PARANOID jest w tym przypadku niepotrzebne, poniewa¿ nastêpna pozycja przechwytuje wszystkie przypaki. Jedna z tych pozycji jest dobrym punktem wyj¶ciowym do budwoy pliku konfiguracyjnego, zale¿nym od twoich oczekiwañ i wymagañ. Posiadanie opcji ALL: ALL w /etc/hosts.deny i zezwalanie na dostêp do konkretnych us³ug konkretnym komputerom (grupom komputerów) w pliku /etc/hosts.allow jest najbezpieczniejszym podej¶ciem. 55..1100..44.. //eettcc//hhoossttss..eeqquuiivv Plik hosts.equiv jest wykorzystywany nadawania innym komputerom i zdalnym u¿ytkownikom niektórych uprawnieñ dostêpu do naszych zasobów, bez koñieczno¶ci podawania przez nich has³a. JEst to u¿ytwczne w bezpiecznym ¶rodowisku sieciowym, gdzi posiadamy kontrolê andwszystkimi komputerami lecz w innym przypadku jest to bardzo ryzykowne ze wzglêdu na bezpieczeñstwo naszego komputera. W takim przypadku twój komputer jest ka bezpieczny, jak najmniej bezpieczny z aufanych komputerów. Aby zwiêkszyæ bezpieczeñstwo swojego systemu nie u¿ywaj tego mechanizmu i zachêcaj swoich u¿ytkoników do nie korzystania z pliku .rhosta. 55..1100..55.. PPrraawwiidd³³oowwaa kkoonnffiigguurraaccjjaa ddeemmoonnaa _f_t_p.. Wiele miejsc bêdzie zainteresowynych dzia³aj±cym serwerem anonimowego _f_t_p, aby umo¿liwiæ innym pobieranie i wstawianie plików, bez konieczno¶ci podawania konkretnego identyfikatora u¿ytkownika. Je¶li zdecydujesz siê udostêpniæ tê us³ugê, pamiêtaj aby prawidlowo skonfigurowaæ demon _f_t_p_d. Wiekszo¶æ stron podrêcznika dotycz±cych _f_t_p_d_(_8_) opisuje jak to powino byæzrobione. Powiniene¶ siê upewniæ, ¿e zawsze stosujesz siê d otych instruckcji. Bardzo wa¿ne jest, aby¶ nie u¿ywa³ w tym celu kopii sweg opliku /etc/passwd w katalogu etc serwera ftpd. Musisz pamiêtaæ aby usun±æ wszelkie niepotrzebne informacje dotycz±ce kont, za wyj±tkiem tych niezbêdnych, w przeviwnym wypadku bêdziesz nara¿ony na ataki wynik³e ze z³amania hase³ prezentowanych w pliku passwd. 55..1100..66.. FFiirreewwaallllee.. Bardzo dobrym ¶rodkiem na zapewnienie bezpieczeñstwa swojemu systemowi jest zabronienie dostêpu do twojego komputera wszystkim niepo¿±danym pakietom. Jest to dokladnie opisane w Firewall-HOWTO <Firewall- HOWTO.pl.html>. 55..1100..77.. IInnnnee ssuuggeessttiiee.. Oto inne, potencjalnie religijne sugestie, które powiniene¶ rozwa¿yæ. sseennddmmaaiill niezale¿nie od swojej popularno¶ci demon z przera¿aj±c± regularno¶ci± pojawiaj± siê ostrze¿enia o b³êdach w programie _s_e_n_d_m_a_i_l. Wszystko zale¿y od ciebie, lecz ja bym go nie uruchamia³. NNFFSS ii iinneeee uuss³³uuggii SSuunn RRPPCC powiniene¶ siê ich baæ. Istnieje wiele sposobów wykorzystania b³êdów w tych us³ugach. Bardzo trudno jest zast±piæNFS czym¶ innym, dok³adnie upewnij siê komu pozwalasz na montowanie swoich dysków. 66.. IInnffoorrmmaaccjjee ssppeeccyyffiicczznnee tteecchhnnoollooggii ssiieecciioowweejj Kolejne podrozdzia³y s± specyficzne dla konkretnych technologi sieciowych. Informacje tam zawarte nie musz± mieæ zastosowania do innego rodzaju technologii sieciowych. 66..11.. AARRCCNNeett Urz±dzenia ARCNET posiadaj± nazwy `arc0s', `arc1e', `arc2e' itd. Pierwsza karta wykryta przez j±dro otrzymuje nazwê `eth0', a dalsze otrzymuj± nazwy z kolejnymi numerami. Litera na koñcu nazwy oznacza ¿e wybra³e¶ 'ethernet encapsulation' lub standard pakietu zgodny z RFC1051. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Network device support ---> [*] Network device support <*> ARCnet support [ ] Enable arc0e (ARCnet "Ether-Encap" packet format) [ ] Enable arc0s (ARCnet RFC1051 packet format) Je¶li posiadasz ju¿ prawid³owo skompilowane j±dro potrafi±ce obs³ugiwaækatrê, jej konfiguracja jest bardzo prosta. Zwykle bêdziesz musia³ wydaæ nastêpuj±ce polecenia: # ifconfig arc0e 192.168.0.1 netmask 255.255.255.0 up # route add 192.168.0.0 netmask 255.255.255.0 arc0e Proszê zapoznaj siê z zawrto¶ci± pliku /usr/src/linux/Documenta tion/networking/arcnet-hardware.txt. Obs³ua sieci ARCNet zosta³a wykonana przez Averyego Pennaruna, apenwarr@foxnet.net. 66..22.. AApppplleettaallkk ((AAFF__AAPPPPLLEETTAALLKK) Obs³uga sieci Appletalk nie wprowadza ¿±dnych dodatkwych nazw urz±dzeñ sieciowych. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Networking options ---> <*> Appletalk DDP Obs³uga Appletalk pozwala twojemu Linuxowi komunikowaæ siê z sieciami Aplle. Bardzo wa¿nym wykorzystywaniem tej mo¿liwo¶ci jest wspó³dziele nie miêdzy twoim Linuxem i komputerami Apple zasobów takich jak drukarki, czy dyski. Wymagane jest do tego dodatkowe oprogramowanie o nazwie _n_e_t_a_t_a_l_k. Pakiet _n_e_t_a_t_a_l_k udostêpniaj±cy oprogramowanie imple mentuj±ce protokó³ Appletalk oraz kilka po¿ytecznych programów narzêdziowych stworzy³ wraz z grup±`Research Systems UnixGroup' na uniwerystecie Michigan reprezentuj±cy ten zespó³ Wesley Craig netatalk@umich.edu . Pakiet _n_e_t_a_t_a_l_k powiniene¶ otrzymaæ w swojeje dystrybucji Linuxa, lub mo¿esz go pobraæ przez ftp ze ¿ród³a :Univer sity of Michigan <ftp://terminator.rs.itd.umich.edu/unix/netatalk/> Aby zbudowaæ i zainstalowaæ pakiet, musisz wydaæ nastêpuj±ce polecenia: # cd /usr/src # tar xvfz .../netatalk-1.4b2.tar.Z - W tym momemcie mo¿esz zmieniæ plik `Makefile', np. w celu zmiany katalogu docelowego DESTDIR. Domu¶lnie zostanie zainstalowany w /usr/local/atalk co jest dosyæ bezpiecznym wyborem. # make - jako administrator: # make install 66..22..11.. KKoonnffiigguurraaccjjaa oopprrooggrraammoowwaanniiaa AApppplleettaallkk.. Pierwsz± rzecz± jak± musisz zrobiæ aby zaczê³o dzia³aæ to dodanie nowych pozycji do pliku /etc/services. A mianowicie: rtmp 1/ddp # Routing Table Maintenance Protocol nbp 2/ddp # Name Binding Protocol echo 4/ddp # AppleTalk Echo Protocol zip 6/ddp # Zone Information Protocol Kolejnym krokiem bêdzie utworzenie plików konfiguracyjnych pakietu w katalogu usr/local/atalk/etc (lub tam gdzie go zainstalowa³e¶). Pierwszym plikiem, który nale¿y utworzyæ jest /usr/local/atalk/etc/atalkd.conf. Pocz±tkowo potrzebuje od jedynie dodania wiersza okre¶laj±cego nazwê urz±dzenia sieciowego, które obs³uguje sieæ, na której znajduj± siê komputery Apple. eth0 Demon Appletalk po jego uruchomieniu do³o¿y kilka szczegó³ow. 66..22..22.. EEkkssppoorrttoowwaanniiee pplliikkóóww LLiinnuuxxaa pprrzzeezz AApppplleettaallkk.. Mo¿esz eksportowaæ swoje pliki, tak aby inne komputery sieci Appletalk mia³y do nich dostêp. W tym celu nale¿y odpowiednio zmieniæ plik konfiguracyjny /usr/local/atalk/etc/AppleVolumes.system. Istnieje równie¿ inny plik konfiguracyjny o nazwie /usr/local/atalk/etc/AppleVolumes.default w takim samym formacie opisuj±cy który system plików zostanie udostêpniony pod³±czaj±cym siê do nas u¿ytkownikom posiadaj±cym przywileje go¶cia (guest). Szczegó³owe informacje na temat konfiguracji tych plików, oraz opis znaczenia wszystkich opcji mo¿na znale¼æ na stronie podrêznika po¶wiêconej _a_f_p_d (man afpd). Krótki plik przyk³adowy, móg³by wygl±daæ nastêpuj±co: /tmp Scratch /home/ftp/pub "Obszar ogólnie dostêpny" W tym przyk³adzie eksportujemy katalog /tmp jako system plików AppleShare o nazwie `Scratch' oraz katalog anonimowego ftp jako AppleShare Volume o nazwie "Obszar ogólnie dostêpny". Nazwy wolumenów nie s± obowi±zkowe, demon wybierz± jak±¶ za ciebie, lecz przecie¿ nic ciê nie kosztuje podanie nazwy. 66..22..33.. UUddoossttêêppnniiaanniiee ttwwoojjeejj ddrruukkaarrkkii ppoodd LLiinnuuxxeemm ww ssiieeccii AApppplleettaallkk.. Wspó³dzielenie drukarli Linuxa z innymi komputerami sieci Appletalk jest ca³kiem proste. Musisz uruchomiæ program _p_a_p_d, Printer Access Protocol Daemon. Po uruchomieniu bêdzie akceptowa³ ¿±dania wydrukowania dokumentu, gromadzi³ go a nastêpnie drukowa³ korzystajæ z peogramów obs³ugi drukarki pod Linuxem. Konfiguracja tego programu polega na edycji pliku /usr/local/atalk/etc/papd.conf. Sk³adnia jest taka sama, jak pliku /etc/printcap. Nazwa jak± nadasz drukarce zostanie zarejestrowana za pomoc± NBP, protoko³u nazw sieci Appletalk. Prosta konfiguracja mog³aby wygl±daæ nastêpuj±co: TricWriter:\ :pr=lp:op=cg: Utworzona zosta³a drukarka o nazwie `TricWriter' udostêpniona sieci Appletalk. Zadania wys³ane na tê drukarkê, bêd± drukowane na drukarce `lp' (zdefiniowanej w pliku /etc/printcap) przy pomocy programu _l_p_d. Pozycja `op=cg' mówi, ¿e operatorem tej drukarki jest u¿ytkownik Linuxa o nazwie `_c_g'. 66..22..44.. UUrruucchhaammiiaanniiee oopprrooggrraammoowwaanniiaa AApppplleettaallkk.. Ok, w tej chwili powiniene¶ byæ juz gotowy do sprawdzenia podstawowej konfiguracji. Pakiet _n_e_t_a_t_a_l_k dostarcza pliku _r_c_._a_t_a_l_k, który powinieñ nadawaæ siê dla ciebie. Powiniene¶ jedynie go uruchomiæ: # /usr/local/atalk/etc/rc.atalk Wszystko powinno siê uruchomiæ i dzia³aæ poprawnie. Nie powiniene¶ zobaczyæ, ¿adnych komunikatów o b³êdach, lecz jedynie komunikaty wys³ane na konsole informuj±ce o zakoñczeniu kolejnych etapów uruchamiania oprogogramowania. 66..22..55.. TTeesstt oopprrooggrraammoowwaanniiaa aapppplleettaallkk.. Aby sprawdziæ, czy oprogramowanie pracuje poprawnie, przesiêd¼ sieæ na jeden z twoich komputerów Apple, rozwiñ menu g³ówne, wybierz Chooser, kliknij na AppleShare i powiniene¶ zobaczyæ tam swojego Linuxa. 66..22..66.. UUwwaaggii nnaa tteemmaatt kkoorrzzyyssttaanniiaa zz oopprrooggrraammoowwaanniiaa AApppplleettaallkk.. · Byæ mo¿e bedziesz musia³ uruchamiaæ obs³ugê sieci Appletalk przed skonfigurowaniem sieci IP. Je¶li napotkasz na k³opot uruchamiaj±c oprogramowania appletok, lub po jego uruchomieniu masz k³opoty ze swoj± sieci±IP, wtedy sprbuj uruchomiæ oprogramowanie Appletalk przed uruchomieniem skryptu rc.inet1. · _a_f_p_d (Apple Filing Protocol Daemon) robi po¿±dny ba³agan na twardym dysku. Poni¿ej punktów montowañ tworzy szereg podkatalogów:.AppleDesktop i Network Trash Folder. Nastêpnie dla ka¿dego katalogu, do którego siêgniesz utworzy w nim .AppleDouble aby mieæ gdzie przechowywaæ /, pó¼niej spêdzisz wiele mi³ych chwil sprz±taj±c po nim. · program _a_f_p_d oczekuje przesy³ania z Maców hase³ czystym tekstem. To bardzo os³abia bezpieczeñstwo twojego ssytemu. Muszisz byæ bardzo ostro¿ny uruchamiaj±c ten program na komputerze pod³±czonym do internetu. Je¶li kto¶ zrobi co¶ z³ego bêdziesz wini³samego siebie. · Istniej±ce oprogramowanie diagnostyczne np. _n_e_t_s_t_a_t i _i_f_c_o_n_f_i_g nie obs³uguje Appletalk. Surowa inforamcja na ten temat *je¶³i jej potrzebujesz) jest dostêpna przez katalog /proc/net. 66..22..77.. WWiiêêcceejj iinnffoorrmmaaccjjii Wiêcej szczegó³owej informacji w jaki sposób skonfigurowaæ Appletalk dla Linuxa znajdziesz w _L_i_n_u_x _N_e_t_a_t_a_k_-_H_O_W_T_O : thehamptons.com <http://thehamptons.com/anders/netatalk>. 66..33.. AATTMM Projekt obs³ugi Asynchronous Transfer Modepod ³inuxem jest prowadzony przez Wernera Almesbergera <werner.almesberger@lrc.di.epfl.ch>. Aktualne informacje na ten temat mo¿na znale¼æ tutaj: lrcwww.epfl.ch <http://lrcwww.epfl.ch/linux-atm/>. 66..44.. AAXX2255 ((AAFF__AAXX2255) Urz±dzenia AX.25 w j±drze wersji 2.0.* to `sl0', `sl1', itd. w 2.1.* s± to `ax0', `ax1', itd. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Networking options ---> [*] Amateur Radio AX.25 Level 2 Protoko³y AX25, Netrom i Rose s± opisane w AX25-HOWTO <AX25-HOWTO.html>. Stosowane s± przez krótkofalowców w eksperymentach z przesy³aniem pakietów drog± radiow±. Wiêkszo¶æ pracy zwi±zanej z udostêpnieniem tej dunkcji pod Linuxem wykona³ Jonathon Naylor, jsn@cs.not.ac.uk. 66..55.. DDEECCNNeett W chwili obecnej prowadzone s± prace nad obs³ug± sieci DECNet. Powinna siê pojawiæ w pó¼nych wersjach j±dra serii 2.1.x. 66..66.. EEQQLL -- mmuullttiippllee lliinnee ttrraaffffiicc eeqquuaalliisseerr Urz±dzenie EQL nosi nazwê `eql'. W standtardowej wersji j±dra mo¿esz mieæ w komputerze tylko jedno urz±dzenie EQL. EQL umo¿liwia wykorzystanie kilku po³±czeñ point-to-point (np PPP,SLIP,plip) jako pojedynczego ³±cza logicznego przenosz±cego ruch tcp/ip. Czêsto taniej jest skorzystaæ z kilku linii o ni¿szej prêdko¶ci ni¿ z jednej linii o wysokiej prêdko¶ci. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Network device support ---> [*] Network device support <*> EQL (serial line load balancing) support Obs³uga tego mechanizmu wymaga, aby drugi koniec po³±czenia równie¿ obs³ugiwa³ EQL. Linux, Livingstone Portmasters i nowsze serwery dostêpowe udostêpniaj± tê us³ugê. Aby skonfigurowaæEQL bêdziesz potrzebowaæ odpowiednich narzêdzi, dostêpnuch z: sunsite.unc.edu <ftp://sunsite.unc.edu/pub/linux/system/Serial/eql-1.2.tar.gz>. Sama konfiguracja Jest ca³kiem prosta. Rozpoczyna siê od skonfigurowania interfejsu eql. Jest to taki samo urz±dzenie, jak ka¿de inne urz±dzenie sieciowe. Konfiguracja adresu IP i wielko¶ci mtu odbywa siê tak samo za pomoc± programu _i_f_c_o_n_f_i_g: ifconfig eql 192.168.10.1 mtu 1006 route add default eql Nastêpnie muszis rêcznie zainicjowaæ ka¿d± w linii, któr± bêdziesz u¿ywa³. Sposób inicjacji po³±czenia bêdzie zale¿a³ od rodzaju tej linii, wiêcej informacji n ten temat znajdziesz w odpowiednim podrozdziale. Na koniec potrzebujesz skojarzyæ po³±czenie przez port szeregowy z urz±dzenie EQL, nazywa siê to `enslaving' i dokonuje siê za pomoc± polecenia _e_q_l___e_n_s_l_a_v_e: eql_enslave eql sl0 28800 eql_enslave eql ppp0 14400 Parametr The `_s_z_a_c_o_w_a_n_a _p_r_ê_d_k_o_¶_æ' (estimated speed), który podjaesz w poleceniu _e_q_l___s_l_a_v_e bie ma bezpo¶redniego wp³ywu na dzia³anie systemu. Jest wykorzystywany przez drajwer EQL do okre¶lenia stopnia podzia³u datagramów które powiiny byæ otrzymywane przez urz±dzenie, mo¿esz w ten spodób dok³adnie dopasowaæ równomierne obci±¿enie wszystlich linii. W celu od³±czenia linii od urz±dzenia EQL stosuje siê polecnie _e_q_l___a_m_a_n_c_i_p_a_t_e: eql_emancipate eql sl0 Budowa tablicy trasowania odbywa siê w taki sam sposób, jak w przypadku zwyk³ego po³±czenia point-to-point, za wyj±tkiem tego, ¿e wszystkie trasy zamiast do urz±dzeñ ppp*,sl* powinny siê odnosiæ do urz±dzenia eql. Zwykle polecenia wygl±daj± mniej wiêcej tak: route add default eql0 Sterownik EQL zosta³ opracowany przez Simona Janesa, simon@ncm.com. 66..77.. EEtthheerrnneett Urz±dzenia kart ethernetowych nosz± nazwy `eth0', `eth1', `eth2' itd. Pierwsza karta wykryta przez j±dro otrzymuje nazwê `eth0', a reszta kolejne nazwy w miarê rozpoznawania kart przez system. Je¶li chcesz siê nauczyæ, jak pracuj± karty ethernetowe pod Linuxem, przeczytaj Ethernet-HOWTO <Ethernet-HOWTO.html>. Kiedy j±dro poprawnie rozpoznaje posiadane przez ciebie karty ethernetowe, ich dalsza konfiguracja jest prosta. Zwykle wystarcz± takie polecenia: # ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up # route add 192.168.0.0 netmask 255.255.255.0 eth0 Wiêkszo¶æ sterowników kart ethernetowych zosta³a opracowana przez Donalda Beckera becker@CESDIS.gsfc.nasa.gov. 66..88.. FFDDDDII Urz±dzenia standardu FDDI nosz± nazwy `fddi0', `fddi1', `fddi2' itd. Pierwsze urz±dzenie rozpoznane przez j±dro otrzymuje nazwê `fddi0', a pozosta³e kolejne nazwy w miarê ich rozpoznawania przez system. Sterownik kart Digital Equipment Corporation FDDI EISA o PCI zosta³ opracowany przez Lawrencea V. Stefaniego, stefani@lkg.dec.com. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Network device support ---> [*] FDDI driver support [*] Digital DEFEA and DEFPA adapter support Kiedy j±dro poprawnie rozpoznaje posiadane przez ciebie karty, konfiguracja interfejsu FDDI jest niemal identyczna, jak inicjalizacja kart ethernetowych. Po prostu jako argument programów _i_f_c_o_n_f_i_g i _r_o_u_t_e podajesz jedynie nazwê ospowiedniego urz±dzenia FDDI. 66..99.. FFrraammee RReellaayy Istniej± dwa rodzaje urz±dzeñ standardu Frame Relay w j±drze Linuxa, DLCI o nzawach `dlci00',`dlci01' itd. oraz FRAD onazwach `sdla0', `sdla1' itd. Frame Relay jest now± technologi± sieciow±, przeznaczon± przede wszystkim dla ruchu ruchu o nieci±g³ej, przerwywanej naturze. Do sieci Frame Relay pod³±cza siê za pomoc± urz±dzenia Frame Relau Access Device (FRAD). Frame Realy pod Linuxem obs³uguje przesy³anie pakietów IP zgodnie z opisem przedstawionym w RFC-1490. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Network device support ---> <*> Frame relay DLCI support (EXPERIMENTAL) (24) Max open DLCI (8) Max DLCI per device <*> SDLA (Sangoma S502/S508) support Obs³uga protoko³u Frame Relay, oraz niezbêdne do tego narzêdzia zosta³y napisane przez Mikea McLagana, mike.mclagan@linux.org. W chwili obecnej, jedynym obs³ugiwanym urz±dzeniem FRAD jest Sangoma Technologies <http://www.sangoma.com/> S502A, S502E and S508. Po prawid³owym skompilowaniu j±dra, do skonfigurowania urz±dzeñ FRAD i DLCI s± niezbêdne narzêdzia konfiguracyjne: ftp.invlogic.com <ftp://ftp.invlogic.com/pub/linux/fr/frad-0.15.tgz>. Komplilacja i instalacja narzêdzi jest prosta, niestety brak g³ównego pliku Makefile, powoduje, ¿e trzeba to zrobiæ rêcznie. # cd /usr/src # tar xvfz .../frad-0.15.tgz # cd frad-0.15 # for i in common dlci frad; do cd $i; make clean; make; cd ..; done # mkdir /etc/frad # install -m 644 -o root -g root bin/*.sfm /etc/frad # install -m 700 -o root -g root frad/fradcfg /sbin # install -m 700 -o root -g root dlci/dlcicfg /sbin Po zainstalowaniu narzêdzi, trzeba utworzyæ plik /etc/frad/router.conf. Mo¿esz skorzystaæ z poni¿szego wzoru, który jest zmodyfikowanym plikiem przyk³adowym: # /etc/frad/router.conf # Jest to wzorzec pliku konfiguracyjnego urz±dzeñ frame relay # Zawiera wszystkie mo¿liwe opcje. Warto¶ci domy¶lne s± ustwione # na podstwie kodu sterowników karty Sangoma S502A dla MSDOSu. # # Znak '#' w dowolnym miejscu wiersza rozpoczyna komentarz # Puste miejsca s± ignorowane (mo¿esz tabulatorem ³adnie sformatowaæ # ca³y plik # Nieznane pozycje [] i s³owa kluczowe s± ignorowane # [Devices] Count=1 # Liczba urz±dzeñ do skonfigurowania Dev_1=sdla0 # nazwa urz±dzenia #Dev_2=sdla1 # nazwa urz±dzenia # Podane tutaj parametry maj± zastosowanie do wszystkich urz±dzeñ, # lecz dla ka¿dego urz±dzenia indywidualnie mo¿e byæ podana inna warto¶æ # Access=CPE Clock=Internal KBaud=64 Flags=TX # # MTU=1500 # Maksymalba d³ugo¶æ ramki IFrame, domy¶lnie 4096 # T391=10 # T391 value 5 - 30, domy¶lnie 10 # T392=15 # T392 value 5 - 30, domy¶lnie 15 # N391=6 # N391 value 1 - 255, domy¶lnie 6 # N392=3 # N392 value 1 - 10, domy¶lnie 3 # N393=4 # N393 value 1 - 10, domy¶lnie 4 # Podane tutaj parametry maj± zastosowanie do wszystkich urz±dzeñ # CIRfwd=16 # CIR forward 1 - 64 # Bc_fwd=16 # Bc forward 1 - 512 # Be_fwd=0 # Be forward 0 - 511 # CIRbak=16 # CIR backward 1 - 64 # Bc_bak=16 # Bc backward 1 - 512 # Be_bak=0 # Be backward 0 - 511 # # # KOnfiguracja poszczególnych urz±dzeñ # # # # Pierwsze urz±dzenie - Sangoma S502E # [sdla0] Type=Sangoma # Rodzaj urz±dzenia do skonfigurowania, # rozpoznawana jest tylko SANGOMA # # Poni¿sze parametry s± specyficzne dla typu Sangoma # # Rodzaj karty ¶angoma - S502A, S502E, S508 Board=S502E # # Nazwa firmowego oproramowania testowego dla karty Sangoma # Testware=/usr/src/frad-0.10/bin/sdla_tst.502 # # Nazwa firmowego oprogramowania FR # Firmware=/usr/src/frad-0.10/bin/frm_rel.502 # Port=360 # Port uzywany przez tê kartê Mem=C8 # Adres okna pamiêci, A0-EE, zale¿ny od karty IRQ=5 # Numer przerwania IRQ , nie potrebny w przypadku S502A DLCIs=1 # Liczba urz±dzeñ DLCI przy³±czonych do tego urz±dzenia DLCI_1=16 # numer pierwszego urz±dzenia DLCI, 16 - 991 # DLCI_2=17 # DLCI_3=18 # DLCI_4=19 # DLCI_5=20 # # Podane poni¿ej opcje maj± zastosowanie tylko do tego urz±dzenia # i zastêpuj± warto¶cidomy¶lne podane wcze¶niej # # Access=CPE # CPE lub NODE, domy¶lnie CPE # Flags=TXIgnore,RXIgnore,BufferFrames,DropAborted,Stats,MCI,AutoDLCI # Clock=Internal # External lub Internal, domy¶lnie Internal # Baud=128 # Okre¶lona prêdko¶æ (bodów) przy³±czonych CSU/DSU # MTU=2048 # Maksymalna d³ugo¶æ ramki IFrame, domy¶lnie 4096 # T391=10 # T391 value 5 - 30, domy¶lnie 10 # T392=15 # T392 value 5 - 30, domy¶lnie 15 # N391=6 # N391 value 1 - 255, domy¶lnie 6 # N392=3 # N392 value 1 - 10, domy¶lnie 3 # N393=4 # N393 value 1 - 10, domy¶lnie 4 # # Drugim urz±dzeniem jest zupe³nie inna karta # # [sdla1] # Type=¦miesznaKarta # Rodzaj konfigurowanego urz±dzenia # Board= # Rodzaj karty Sangoma # Key=Value # Parametry dpecyficzne dla tego urz±dzenia # # Domy¶lne parametry konfiguracyjne urz±dzeñ DLCI # Mog± zostaæ zastêpione w konkretnych sekcjach konfiguracyjnych DCI # CIRfwd=64 # CIR forward 1 - 64 # Bc_fwd=16 # Bc forward 1 - 512 # Be_fwd=0 # Be forward 0 - 511 # CIRbak=16 # CIR backward 1 - 64 # Bc_bak=16 # Bc backward 1 - 512 # Be_bak=0 # Be backward 0 - 511 # # Konfiguracja DLCI # Wszystkie parametry s± opcjinalne. Nazewnictwo: # [DLCI_D<devicenum>_<DLCI_Num>] # [DLCI_D1_16] # IP= # Net= # Mask= # Flags defined by Sangoma: TXIgnore,RXIgnore,BufferFrames # DLCIFlags=TXIgnore,RXIgnore,BufferFrames # CIRfwd=64 # Bc_fwd=512 # Be_fwd=0 # CIRbak=64 # Bc_bak=512 # Be_bak=0 [DLCI_D2_16] # IP= # Net= # Mask= # Flags defined by Sangoma: TXIgnore,RXIgnore,BufferFrames # DLCIFlags=TXIgnore,RXIgnore,BufferFrames # CIRfwd=16 # Bc_fwd=16 # Be_fwd=0 # CIRbak=16 # Bc_bak=16 # Be_bak=0 Po stowrzeniu pliku /etc/frad/router.conf pozosta³o jedynie skonfigurowaæ rzeczywiste urz±dzenia. Jest to tylko troszkê sprytniejsze ni¿ konfigurowanie zwyk³ych urz±dzeñ sieciowych. Musisz pamiêtaæ aby przed uruchomieniem urz±dzeñ DLCI uruchomiæ wpierw urz±dzenie FRAD. # Konfiguracja karty FRAD i parametrów DLCI /sbin/fradcfg /etc/frad/router.conf || exit 1 /sbin/dlcicfg file /etc/frad/router.conf # # Podnoszenie urz±dzenia FRAD ifconfig sdla0 up # # Konfiguracja interfejsów DLCI i trasowania ifconfig dlci00 192.168.10.1 pointopoint 192.168.10.2 up route add 192.168.10.0 netmask 255.255.255.0 dlci00 # ifconfig dlci01 192.168.11.1 pointopoint 192.168.11.2 up route add 192.168.11.0 netmask 255.255.255.0 dlci00 # route add default dev dlci00 # 66..1100.. ZZlliicczzaanniiee rruucchhuu ((IIPP AAccccoouunnttiinngg)) Cechy j±dra Linuxa dotycz±ce zliczania ruchu umo¿liwiaj± gromadzenia i analizê informacji na temat wykorzystania sieci. Gromadzone dane zawieraj± liczbê pakietów, liczbê odpowiadaj±cych im bajtów przes³anych od ostatniego zerowania liczników. Mo¿esz zliczaæ ruch na wiele ró¿nych sposobów, odpowiednio grupuj±c ruch tak aby gromadzone inforamcje zawiera³y odpowiednie, interesuj±ce ciê statystyki. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Networking options ---> [*] IP: accounting Po skompilowaniu i zainstalowaniu nowego j±dra, muszisz skorzystaæ z narzêdzia o nazwie _i_p_f_w_a_d_m, s³u¿±cego do wprowadzania i zmiany regu³ zliczania ruchu. Istnieje wiele regu³ zliczania ruchu, które móg³by¶ zastosowaæ. Wybra³em kilka prostych, które mog± byæ u¿yteczne, zapoznaj siê ze stron±podrêcznika dotycz±c± programu _i_p_f_w_a_d_m. Scenariusz: Posiadasz siec ethernetow± przy³±czon± do Internetu za pomoc± po³±czenia PPP. Na segmencie ethernetowym znajduje siê komputer oferuj±cy szereg us³ug. Jeste¶ zainteresowany jaki ruch jest generowany przez telnet,rlogi,ftp i www. Mo¿esz skorzystaæ z poni¿szego zestawu poleceñ: # # Usuñ istneij±ce regu³y zliczanai ruchu ipfwadm -A -f # # dodaj regu³y dotycz±ce lokalnego segmentu ethernetowego ipfwadm -A in -a -P tcp -D 44.136.8.96/29 20 ipfwadm -A out -a -P tcp -S 44.136.8.96/29 20 ipfwadm -A in -a -P tcp -D 44.136.8.96/29 23 ipfwadm -A out -a -P tcp -S 44.136.8.96/29 23 ipfwadm -A in -a -P tcp -D 44.136.8.96/29 80 ipfwadm -A out -a -P tcp -S 44.136.8.96/29 80 ipfwadm -A in -a -P tcp -D 44.136.8.96/29 513 ipfwadm -A out -a -P tcp -S 44.136.8.96/29 513 ipfwadm -A in -a -P tcp -D 44.136.8.96/29 ipfwadm -A out -a -P tcp -D 44.136.8.96/29 ipfwadm -A in -a -P udp -D 44.136.8.96/29 ipfwadm -A out -a -P udp -D 44.136.8.96/29 ipfwadm -A in -a -P icmp -D 44.136.8.96/29 ipfwadm -A out -a -P icmp -D 44.136.8.96/29 # # Regu³y domy¶lne ipfwadm -A in -a -P tcp -D 0/0 20 ipfwadm -A out -a -P tcp -S 0/0 20 ipfwadm -A in -a -P tcp -D 0/0 23 ipfwadm -A out -a -P tcp -S 0/0 23 ipfwadm -A in -a -P tcp -D 0/0 80 ipfwadm -A out -a -P tcp -S 0/0 80 ipfwadm -A in -a -P tcp -D 0/0 513 ipfwadm -A out -a -P tcp -S 0/0 513 ipfwadm -A in -a -P tcp -D 0/0 ipfwadm -A out -a -P tcp -D 0/0 ipfwadm -A in -a -P udp -D 0/0 ipfwadm -A out -a -P udp -D 0/0 ipfwadm -A in -a -P icmp -D 0/0 ipfwadm -A out -a -P icmp -D 0/0 # # Wy¶wietl listê obowi±zuj±cych regu³ ipfwadm -A -l -n # Ostatnie polecenie wy¶wietla listê regu³ zliczania ruchu wraz ze zgro madzonymi informacjami. Analizuj±c wielko¶æ ruchu IP nale¿y pamiêtaæ, ¿e bbêêddzziiee zzwwiiêêkksszzaannyy lliicczznniikk kkaa¿¿ddeejj rreegguu³³yy,, kkttóórraa ppaassuujjee ddoo aannaalliizzoowwaanneeggoo ppaakkiieettuu, aby uzyskaæ wyniki ró¿nicowe, trzeba wykonaæ proste dzia³ania matematyczne. Gdybym chcia³znaæ liczbê przes³±nych bajtów poza us³ugami telnet, rlogin, ftp i www musia³bym od wielko¶ci ruchu dla wszystkich portów odj±æ zmierzone wielko¶ci dla poszczególnych regu³. # ipfwadm -A -l -n IP accounting rules pkts bytes dir prot source destination ports 0 0 in tcp 0.0.0.0/0 44.136.8.96/29 * -> 20 0 0 out tcp 44.136.8.96/29 0.0.0.0/0 20 -> * 0 0 in tcp 0.0.0.0/0 44.136.8.96/29 * -> 23 0 0 out tcp 44.136.8.96/29 0.0.0.0/0 23 -> * 10 1166 in tcp 0.0.0.0/0 44.136.8.96/29 * -> 80 10 572 out tcp 44.136.8.96/29 0.0.0.0/0 80 -> * 242 9777 in tcp 0.0.0.0/0 44.136.8.96/29 * -> 513 220 18198 out tcp 44.136.8.96/29 0.0.0.0/0 513 -> * 252 10943 in tcp 0.0.0.0/0 44.136.8.96/29 * -> * 231 18831 out tcp 0.0.0.0/0 44.136.8.96/29 * -> * 0 0 in udp 0.0.0.0/0 44.136.8.96/29 * -> * 0 0 out udp 0.0.0.0/0 44.136.8.96/29 * -> * 0 0 in icmp 0.0.0.0/0 44.136.8.96/29 * 0 0 out icmp 0.0.0.0/0 44.136.8.96/29 * 0 0 in tcp 0.0.0.0/0 0.0.0.0/0 * -> 20 0 0 out tcp 0.0.0.0/0 0.0.0.0/0 20 -> * 0 0 in tcp 0.0.0.0/0 0.0.0.0/0 * -> 23 0 0 out tcp 0.0.0.0/0 0.0.0.0/0 23 -> * 10 1166 in tcp 0.0.0.0/0 0.0.0.0/0 * -> 80 10 572 out tcp 0.0.0.0/0 0.0.0.0/0 80 -> * 243 9817 in tcp 0.0.0.0/0 0.0.0.0/0 * -> 513 221 18259 out tcp 0.0.0.0/0 0.0.0.0/0 513 -> * 253 10983 in tcp 0.0.0.0/0 0.0.0.0/0 * -> * 231 18831 out tcp 0.0.0.0/0 0.0.0.0/0 * -> * 0 0 in udp 0.0.0.0/0 0.0.0.0/0 * -> * 0 0 out udp 0.0.0.0/0 0.0.0.0/0 * -> * 0 0 in icmp 0.0.0.0/0 0.0.0.0/0 * 0 0 out icmp 0.0.0.0/0 0.0.0.0/0 * # 66..1111.. IIPP AAlliiaassiinngg Istniej± programy sieciowe, które wymagaj± aby jedno urz±dzenie sieciowe posiada³o wiele numerów IP. Dostawcy internetu czêsto korzystaj± z tej cechy do tworzenia wirtualnych serwerów WWW i ftp oferuj±c klientowi utworzenie serwera o innym adresie ni¿ ich w³asny. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Networking options ---> .... [*] Network aliasing .... <*> IP: aliasing support Po skompilowaniu i zainstalowaniu j±dra z obs³ug± IP_Alias, konfiguracja jest bardzo prosta. Aliasy s± dodawane do wirtualnych urz±dzeñ sieciowych stowarzyszonych z istniej±cymu urz±dzeniami sieciowymi. Stosuje siê prost± konwencjê nazywania tych urz±dzeñ, a mianowicie <devname>:<numer urz±dzenia wirtualnego>, np. eth0:0, ppp0:10 etc. Za³ó¿my, ¿e posiadasz sieæ ethernetow±, która obs³uguje jednocze¶nie dwie ró¿ne podsieci IP. Chcia³by¶ aby twój komputer mia³ bezpo¶redni dostêp do obu tych podsieci: # # ifconfig eth0:0 192.168.1.1 netmask 255.255.255.0 up # route add -net 192.168.1.0 netmask 255.255.255.0 eth0:0 # # ifconfig eth0:1 192.168.10.1 netmask 255.255.255.0 up # route add -net 192.168.10.0 netmask 255.255.255.0 eth0:0 # Aby usun±c alias nale¿y do jego nazwy do³±czyæ znak `-' podczas nastêpnego odwo³ania siê do niego, np. tak: # ifconfig eth0:0- 0 Wraz z usuniêciem tego aliasu z tabeli trasowañ zostan± usuniête wrzystkie trasy korzystaj±ce z tego aliasu. 66..1122.. FFiillttrroowwnniiee ppaakkiieettóóww ((IIPP FFiirreewwaalllliinngg)) Filtrowanie pakiet i zasady przy tym obowi±zuj±ce s± dok³adniej omówione w Firewall-HOWTO <Firewall-HOWTO.html>. IP Firewalling IP Firewalling pozwala na zabezpieczenia twojego komputera przed niuprawnionym dostêpem przez sieæ, wykorzystuj±c w tym celu filtrowanie pakietów. Istniej± trzy ró¿ne klasy regu³, filtrowanie pakietów przychodz±cyhc, filtrowanie pakietów wychodz±cych i filtrowanie pakietów przekazywanych dalej (forwarding). Regu³y filtrowania pakietów przychodz±cych dotycz± pakietów otrzymanych przez urz±dzenie sieciowe. Regu³y filtrownia pakietów wychodz±cych, dotycz± pakietów tu¿ przed wys³aniem przez urz±dzenie sieciowe. Regu³y fitrowania pakietów przesy³anych dotycz± pakietów, które zosta³y przez nasz komputer odebrane, lecz nie jest on ich ostatecznym adresatem, tzn. pakiety, które bêd± poddane trasowaniu. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Networking options ---> [*] Network firewalls .... [*] IP: forwarding/gatewaying .... [*] IP: firewalling [ ] IP: firewall packet logging Wprowadzanie regu³ filtrownia pakietów IP wykonuje siê za pomoc± programu _i_p_f_w_a_d_m. Jak wspomina³em wcze¶cniej nie jestem ekspertem od zabezpieczeñ sieci komputerowych, wiêc choæ prezentuje przyk³ad, z którego mo¿esz skorzystaæ, powiniene¶ samodzielnie zapoznaæ siê z tym tematem i opracowaæ w³asne regu³y filtrowania pakietów, oczywi¶cie tylko wtedym gdy jest dla cienie wa¿ne bezpiezeñstwo twojego systemu. Prawdopodobnie najczêstszym wykorzystaniem filtrowania pakietów jest sytuacja, gdy twój Linux pracuje jako router i filtr pakietów chroni±cy lokaln± sieæ przed nieuprawnionym dostêpem z sieci zewnêtrznej. Przedstawiona poni¿ej konfiguracja jest oparta na sugestiach przes³anych przez Arnta Gulbrandsena,<agulbra@troll.no>. Przyk³ad opisuje konfiguracjê regu³ filtra pakietów prauj±cego na Linuxie, wykorzystywanym w sposób przedstawiony na poni¿szym schemacie: - - \ | 172.16.37.0 \ | /255.255.255.0 \ --------- | | 172.16.174.30 | Linux | | NET =================| f/w |------| ..37.19 | PPP | router| | -------- / --------- |--| Mail | / | | /DNS | / | -------- - - Poni¿ssze polecenia zwykle s± umieszczane w jednym z plików rc, aby by³y automatycznie wykonywane przy ka¿dym uruchomieniu systemu. Aby maksymalnie zwiêkszyæ bezpieczeñstwo systemu, powinny byæ wykonywane tu¿ po skonfigurowaniu urz±dzeñ sieciowych, lecz tu¿ przed ich w³±czeniem. W ten sposób niwelujemy chwilê s³±bo¶æi zwi±zan± z restartem komputera. #!/bin/sh # Oczy¶æ tabelê regu³ przesy³ania pakietów (forwarding) # Zmieñ domy¶ln± polityk± na 'accept' (akceptuj): # /sbin/ipfwadm -F -f /sbin/ipfwadm -F -p accept # # .. i dla ruchu przychodz±cego (Incoming) # /sbin/ipfwadm -I -f /sbin/ipfwadm -I -p accept # Popierwsze zabezpiecz interfej PPP # Chetnie zamiast '-a deny' wstawi³bym '-a reject -y', lecz wtedy nie # by³oby mo¿liwe rozpoczynanie po³±czeñ wychodz±cych przez ten # interfejs. Parametr -o pozwala rejestrowaæ odrzucane datagramy. # Kosztem przestrzeni dyskowej zajêtej przez inforamcje sysloga # uzyskujemy informacje na temat niechcianego ruchu IP. # /sbin/ipfwadm -I -a reject -y -o -P tcp -S 0/0 -D 172.16.174.30 # Odrzuæ pewnego rodzaju pakiety: # Nic nie powinno przychodziæ z adresów multicast/anycast/broadcast # /sbin/ipfwadm -F -a deny -o -S 224.0/3 -D 172.16.37.0/24 # # nic nie powinno przychidziæ z adresu pêtli zwrotnej # /sbin/ipfwadm -F -a deny -o -S 127.0/8 -D 172.16.37.0/24 # Zezwól na po³±czenia SMTP i DNS, lecz jedynie do serwera Mail/DNS # /sbin/ipfwadm -F -a accept -P tcp -S 0/0 -D 172.16.37.19 25 53 # # DNS korzysta z UDP i TCP, muszisz pozwoliæ na oba rodzaje po³±czeñ # /sbin/ipfwadm -F -a accept -P udp -S 0/0 -D 172.16.37.19 53 # # Nie pozwalamu na "odpowiedzi" przychodz±ce do tak niebezpiecznych # portów jak NFS czy rozszerzenie NFSu Larryego McVoya. Je¶li # korzystasz ze squida dopisz tutaj jego port # /sbin/ipfwadm -F -a deny -o -P udp -S 0/0 53 \ -D 172.16.37.0/24 2049 2050 # odpowiedzi do innych portów s± OK # /sbin/ipfwadm -F -a accept -P udp -S 0/0 53 \ -D 172.16.37.0/24 53 1024:65535 # Odrzuæ po³±czenia przychodz±ce do identd # korzystamy tutaj z 'reject', aby ³±cz±cy siê komputer wiedzia³, ¿e # nie ma co próbowaæ nawi±zaæ po³±czenia. W przeciwnym wypadku narazimy # siê na opó¼nienia wywo³ane dzia³aniem programu ident po drugiej # stronie nawi±zywanego przez nas po³±czenia # /sbin/ipfwadm -F -a reject -o -P tcp -S 0/0 -D 172.16.37.0/24 113 # Pozwól na popularne us³ugi pochodz±ce z sieci 192.168.64 i 192.168.65 # /sbin/ipfwadm -F -a accept -P tcp -S 192.168.64.0/23 \ -D 172.16.37.0/24 20:23 # akceptuj i przesy³aj wszystko co wziê³o siê z sieci loklanej # /sbin/ipfwadm -F -a accept -P tcp -S 172.16.37.0/24 -D 0/0 # zabroñ wiêkszo¶ci innych po³±czeñ TCP i rejestruj je # (je¶li masz k³opot z dzia³aniem ftp dodaj 1:1023) # /sbin/ipfwadm -F -a deny -o -y -P tcp -S 0/0 -D 172.16.37.0/24 # ... for UDP too # /sbin/ipfwadm -F -a deny -o -P udp -S 0/0 -D 172.16.37.0/24 Dobra konfiguracja filtra jest niemal sztuk±. Powy¿szy przyk³ad powinien byæ rozs±dnym punktem startowym. Strona podrêcznika dotycz±ca _i_p_f_w_a_d_m oferuje dodatkowe inforamacje na ten temat. Je¶li planujesz za³o¿enie filtra upewnij siê, ¿e zebra³e¶ wokó³ maksymalnie wiele porad ze ¼róde³, którym mo¿esz ufaæ i popro¶ kogo¶ aby sprawdzi³ dzia³anie twojego filtra z zewn±trz. 66..1133.. IIPPXX ((AAFF__IIPPXX) Protokó³ IPX jest powszechnie wykorzystywany w lokalnych siecach Novell Netware(tm). Linux potrafi obs³ugiwaæ ten protokó³ i mo¿e zostaæ skonfigurowany do pracy jako koñcówk sieci Novell Netwate(tm) lub jako router pakietów IPX. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Networking options ---> [*] The IPX protocol [ ] Full internal IPX network Protokó³ IPX i standard NCPFS s± dok³adniej omówione w IPX-HOWTO <IPX- HOWTO.html>. 66..1144.. IIPPvv66 W³a¶nie gdy zaczê³o ci siê wydawaæ, ¿e zaczynasz rozumieæ sieci IP, zasady siê zmieni³y! IPv6 jest skrótem oznaczaj±cym wersjê 6 protoko³u IP. IPv6 zosta³ opracowany w celu rozwiania obaw spo³eczno¶ci internetowej zwi±zanych z wyczerpywaniem siê wolnych adresów IP. Adresy prtotoko³u IPv6 s± budowane na 32 bajtach (128bitów), pozwoli to na lepsze zarz±dzanie sieciami, ni¿ ma to obecnie. J±dra Linuxa serii 2.1.* ju¿ posiadaj± dzia³aj±c±, choæ niepe³n± implementacje protoko³u IPv6. Je¶li chcesz poeksperymentowaæ z t± now± generacj± technologii internetowych, lub jest ci to do czego¶ potrzebne, powiniene¶ przeczytaæ IPv6-FAQ dostêpny pod adresem: www.terra.net <http://www.terra.net/ipv6/>. 66..1155.. IISSDDNN Sieæ cyfrowa zintegrowanych us³ug (Integrated Services Digital Network - ISDN) sk³ada siê z serii standardów definuj±cych cyfrow± sieæ pakietow± ogólnego przeznaczenia. ISND jest zwykle dostarczana ³±czami o wysokiej prêdko¶ci, podzielonymi na wiele kana³ów. Istniej± dwa ró¿ne rodzaje kana³ów, kana³y typu 'B' rzeczywi¶cie przenosz±ce dane u¿ytkownika, oraz kana³ typu 'D' wykorzystywany do przesy³ania informacji steruj±cej do centrali ISDN w celu zestawiania po³±czeñ i innych funkcji. Dla przyk³adu w Australii ISDN mo¿e byæ dostarczony ³±czem 2Mbps podzielonym na 30 kaba³ów B po 64kbps ka¿dy i jeden kana³ D. W tej samej chwili mo¿e byæ wykorzystywana dowolna liczba kaba³ów w dowolnej kombinacji. Jest mo¿nliwe np, zestawienie 30 ró¿nych po³±czeñ z 30toma ró¿nymi punktami docelowymi, ka¿de po 64kbps lub 15 po³±czeñ z 15toma ró¿nymi punktami docelowymi, ka¿de po 128 kbps (jedno po³±czenie wykorzystuje dwa kana³y), lub zestwienie ma³ej liczby po³±czeñ pozostawiaj±c pozosta³± czê¶æ pasma niewykorzytan±. Pierwotn± przyczyn± powstania ISDN, by³o umo¿liwienie firmom telekomunikacyjnym udostêpniania jednej us³ugi przesy³ania danych, która mog³aby byæ wykorzystywana dla telefonii (wykorzystuj± cyfrowe przetworniki g³osu) lub do przesy³ania danych bez konieczno¶ci wykonywania przez klienta jakichkolwiek zmian. Istnieje kilka ró¿nych metod pod³±czenia komputera do sieci ISDN. Jedn± z nich jest wykorzystanie urz±dzenia o nazwie `Terminal Adaptor', które w³±cza siê do koñcówki sieciowej (Network Terminating Unit), zainstalowanej przez twojego dostawcê us³ugi ISDN, udostêpniaj±cego z drugiej strony kilka portów szeregowych. Jeden z tych portów s³u¿y do wprowadzania poleceñ w celu skonfigurowania i nawi±zania po³±czeñ, pozosta³e s± pod³±czone do urz±dzeñ sieciowych, które bêd± bezpo¶rednio korzysta³y z zestawionych kana³ów transmisji danych. W takiej konfiguracji Linux bêdzie pracowa³ poprawnie bez konieczno¶ci wykonywania jakichkolwiek modyfikacji. Korzystamy z portu szeregowego urz±dzenia 'Terminal Adaptor' w taki sam sposób, jak ze zwyk³ego portu szeregowego. Innym sposobem przy³±czenia Linuxa do sieci ISDN, w czym wspomagaæ nas bêdzie kod obs³ugi ISDN zawarty w j±drze Linuxa jest zainstalowanie karty ISDN bezpo¶rednio w Linuxie. Wtedy modu³ obs³ugi ISDN w j±drze Linuxa jest odpowiedzialny za obs³ugê urz±dzenia, protoko³ów i zestawianie po³±czeñ. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: ISDN subsystem ---> <*> ISDN support [ ] Support synchronous PPP [ ] Support audio via ISDN < > ICN 2B and 4B support < > PCBIT-D support < > Teles/NICCY1016PC/Creatix support Implementacja ISDN w j±drze Linuxa rozpoznaje szereg ró¿nych typów wewnêtrznych kart ISDN. Ich lista jest przedstawiona podczas konfigu racji j±dra: · ICN 2B and 4B · Octal PCBIT-D · Teles ISDN-cards and compatibles Czê¶æ z tych kart wymaga za³adowania do ich wewnêtrznej pamiêci odpowiedniego oprogramowania. S³u¿y do tego oddzielne narzêdzie. Szczegó³owy opis jak skonfigurowaæ obs³ugê ISDN pod Linuxem jest dostêpny w katalogu /usr/src/linux/Documentation/isdn/. Istnieje równie¿ FAQ po¶wiêcony tej tematyce: _i_s_d_n_4_l_i_n_u_x jest dostêpny pod adresem www.lrz-muenchen.de <http://www.lrz- muenchen.de/~ui161ab/www/isdn/>. (po po³±czeniu, aby otrzymac wersjê angielsk±, musisz klikn±c na angielskiej fladze) UUwwaaggaa nnaa tteemmaatt PPPPPP. Rodzina protoko³ów PPP pracuje na ³±czach szeregowych synschronicznych lub asynchronicznych. Rozpowszechniany powszechnie program `_p_p_p_d' obs³uguje jedynie tryb asynchroniczny. Je¶li zamierzasz uruchamiaæ po³±czenie PPP wykorzystuj±æ jako no¶nik uslugê ISDN, potrzebujesz specjaln±, zmodyfikowan± wersjê tego programu. Wskazówki, gdzie j± mo¿na znale¼æ znajdziesz w dokumentacji, o której wspomnieli¶my wcze¶niej. 66..1166.. IIPP MMaassqquueerraaddee Wielu ludzi do po³±czenia z Internetem ma zwyk³e konto u dostwcy Internetu. Niemal ka¿dy korzystaj±cy z takigj konfiguracji otrzymuje od swojego dostwcy Internetu jeden adres IP. Zwykle jest to wystarczaj±ce na pod³±czenie do Internetu tylko jednego komputera. Maskarada adresu IP jest sprytn± sztuczk± umo¿liwiaj±c± jednoczesne korzystanie z tego jednego adresu IP przez wiele komputerów, sprawiaj±c, ¿e dla ¶wiata zewnêtrzengo komputery te wygl±daj± tak, jak gdyby by³y komputerem obs³uguj±cy po³±czenie modemowe z Internetem. Istnieje ma³a niedogodno¶æ, a mianowicie w wiêkszo¶ci przypadków maskarada adresów IP dzia³a tylko w jedn± stronê, to znaczy komputery, które z niej korzystaj± mog± nawi±zywaæ po³±czenia z komputerami w sieci Internet, lecz same nie mog± otrzymywaæ po³±czeñ z zewn±trz. To oznacza, ¿e niektóre us³ugi sieciowe np. _t_a_l_k nie dzia³±j±, a inne np. _f_t_p musz± byæ skonfigurowane do pracy w trybi pasywnym (PASV). Na szczêscie wiêkszo¶æ us³ug internetowych takich, jak _t_e_l_n_e_t, _W_W_W i _i_r_c dzia³a bardzo dobrze. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Code maturity level options ---> [*] Prompt for development and/or incomplete code/drivers Networking options ---> [*] Network firewalls .... [*] TCP/IP networking [*] IP: forwarding/gatewaying .... [*] IP: masquerading (EXPERIMENTAL) Wpierw twój Linux musi obs³ugiwaæ po³±czenie z internetem (zwykle przez SLIP lub PPP) w taki sam sposób, jak gdyby by³jedynym komput erme, który bêdzie z tego po³±czenia korzysta³. Nastêpnie nale¿y skon figirowaæ dodatkowe urz±dzenie sieciowe, zwykle kartê sieci ethernet, zwykle korzystaj±c z puli numerów IP zarezerwowanych dla sieci prywat nych, których nie wykorzystuje siê w sieci Internet. Komputery korzys taj±ce z maskarady adresów IP bed± w³a¶nie na tej sieci. Ka¿dy z nich otrzyma adres IP i zostanie skonfigurowany w ten sposób, ¿e jego gate wayem (routerem) stanie siê interfejs karty ethernetowej naszego Lin uxa. Typowa konfiguracja wygl±da mnie wiêcej tak: - - \ | 192.168.1.0 \ | /255.255.255.0 \ --------- | | | Linux | .1.1 | NET =================| masq |------| | PPP/slip | router| | -------- / --------- |--| host | / | | | / | -------- - - Najwa¿niejsze polecenia konfiguracyjne dla tego przyk³adu: # Trasa do sieci na segmencie ethernetowym route add 192.168.1.0 netmask 255.255.255.0 eth0 # # Domy¶lna trasa do Internetu route add default ppp0 # # Wszystkie komputery w sieci 192.168.1/24 korzystaj± z maskarady # adresów IP ipfwadm -F -a m -S 192.168.1.0/24 -D 0.0.0.0/0 Wiêcej informacji na temat maskarady adresów IP pod Linuxem znajdziesz tutaj:IP Masquerade Resource Page <http://www.hwy401.com/achau/ipmasq/>, lub w dokumencie IP-Masquerade- HOWTO <IP-Masquerade-HOWTO.pl.html>. 66..1177.. IIPP TTrraannssppaarreenntt PPrrooxxyy Przezroczyste proxy IP jest udogodnieniem, które umo¿liwia przekierowanie po³±czeñ do us³ug lub serwerów na innym komputerze do us³ug lub serwerów znajduj±cych siê na tym komputerze. Zwykle jest to u¿yteczne w sytuacji gdy twój Linux pracuje jako router i jednocze¶nie pracuje jako serwer proxy. W takim przypadku mo¿esz przekierowaæ dokalnego proxy serwera wszystkie po³±czenia do serwerów proxy znajduj±cych siê za routerem. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Code maturity level options ---> [*] Prompt for development and/or incomplete code/drivers Networking options ---> [*] Network firewalls .... [*] TCP/IP networking .... [*] IP: firewalling .... [*] IP: transparent proxy support (EXPERIMENTAL) Konfiguracjê przezroczystego proxy wykonuje siê programem _i_p_f_w_a_d_m. Prosty przyk³ad, który mo¿e byæ u¿yteczny: ipfwadm -I -a accept -D 0/0 80 -r 8080 W powy¿szym przyk³adzie przekierowujemy wszystkie po³aczenia skierowane na port 80 (www) dowolnego komputera, na po³aczenia do portu 8080 naszego Linuxa. Ten spsób móg³by byæ u¿yty (gdyby by³ poprawny - bo nie jest ...pp) do przekierowania ca³ego ruchu www do lokalnego serwera proxy. 66..1188.. MMoobbiillee IIPP Termin 'IP mobility' opisuje zdolno¶æ komputera do przemieszczania swojego punktu styku z internetem z jednej sieci do innej sieci bez konieczno¶ci zmiany w³asnego adresu IP i bez utraty nawi±zanych po³±czeñ. Zwykle gdy komputer zmienia swój punk przy³±czenia do sieci, musi równie¿ zmieniæ adres IP. Udogodnienie IP Mobility przezwyciê¿a tê niedogodno¶æ przydzielaj±c komputerowi jeden, ustalony adres IP i wykorzystuje tunerowanie (IP tunneling) i automatyczne trasowanie zapewniaj±c, ¿ê datagramy skierowane do tego komputera s± kierowane do adresu IP, z którego korzysta. Istnieje projekt maj±cy zapewniæ powstanie kompletu narzêdzi dla udogonienia 'IP mobility' pd Linuxem. Aktualny stan prac mo¿na poznaæ zagl±daj±c na stronê: Linux Mobile IP Home Page <http://anchor.cs.binghamton.edu/~mobileip/>. 66..1199.. MMuullttiiccaasstt IP Multicast pozwala na jednoczesne trasowanie datagramów do wielu ró¿nych komputerów znajduj±cych siê w zupe³nie innych podsieciach. Korzysta siê z tego mechanizmu rozpowszechniania w internecie audio i video lub innych nowoczesnych us³ug. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Networking options ---> [*] TCP/IP networking .... [*] IP: multicasting Wymagany jest minimalny zestaw narzêdzi i ma³a rekonfiguracja sieci. Dobrym ¼ród³em informacji na temat istalacji i konfiguracji tego udogodnienia pod Linuxem jest strona www.teksouth.com <http://www.teksouth.com/linux/multicast/>. 66..2200.. NNeettRRoomm ((AAFF__NNEETTRROOMM) Urz±dzenia NetRom nosz± nazwy `nr0', `nr1', itd. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Networking options ---> [*] Amateur Radio AX.25 Level 2 [*] Amateur Radio NET/ROM Protoko³u AX25, NetRom i Rose s± opisane w AX25-HOWTO <AX25-HOWTO.html>. S± wykorzystywane g³ównie przez krótkofalowców (packet radio). Wiekszo¶æ pracy w implementacji tych protoko³ów pod Linuxem wykona³ Jonathon Naylor, jsn@cs.not.ac.uk. 66..2211.. PPLLIIPP Urz±dzenia PLIP nosz± nazwy `plip0', `plip1, itd. Pierwsze konfigurowane urz±dzenie otrzymuje numer `0', a nastêpne otrzymuj± kolejne numery. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Networking options ---> <*> PLIP (parallel port) support _p_l_i_p (Parallel Line IP), jest podobny do SLIP, to znaczy zapewnia po³±czenie _p_u_n_k_t_-_d_o_-_p_u_n_k_t_u (point-to-point) miêdzy dwoma komputerami, lecz wykorzystuje w tym celu porty równoleg³e komputera (zamiast portów szeregowych, jak to ma miejsce w przypadku protoko³u SLIP). Poniewa¿ port równoleg³y umo¿liwia w jednej chwili transmisjê wiêcej ni¿ jednego bitu, wykorzystuj±c interfejs _p_l_i_p mo¿emy osi±gn±æ znacznie wiêksze prêdko¶æi transmisji, ni¿ ma to miejsce w przypadku portu szeregowego. Co wiêcej, do plip mo¿e byæ wykorzystany nawet najprostszy rodzaj portu szeregowego, port drukarkowy, gdy do pe³nego wykorzystania portów szeregowych konieczne jest zakupienie dosyæ drogich uk³adów UART 15550AFN. Nale¿y zwróciæ uwagê, ¿e niektóre laptopy u¿ywj± uk³adów, które nie bêd± poprawnie wspó³pracowaæ z PLIP, poniewa¿ nie zezwalaj± na przesy³anie pewnego rodzaju sygna³ów, na których polega PLIP, a z których nie korzystaj± drukarki. Interfejs _p_l_i_p pod Linuxem jest zgodny z _C_r_y_n_w_y_r _P_a_c_k_e_t _D_r_i_v_e_r _P_L_I_P, a to oznacza, ¿e mo¿esz przy³±czyæ do swojego Linuxa, komputer pracuj±cy pod MSDOS, na którym dzia³a oprogramowanie TCP/IP korzystaj±ce ze standardu 'packet drivera', korzystaj±e z drajwera plip. Podczas kompilacji j±dra jedyny plik, którmu warto siê bli¿ej przyj¿eæ to /usr/src/linux/driver/net/CONFIG. Zawiera parametry czasowe sterownika _p_l_i_p podane w milisekundach. Warto¶ci domy¶lne s± prawdopodobnie poprawne w wiêkszo¶ci przypadków. Je¶li twój komputer jest wyj±tkowo wolny, mo¿esz siê zastanowiæ nad zwiêkszeniem tych paramterów, ale na komputerze po drugiej stronie po³±czenia. Sterownik przyjmuje nastêpuj±ce warto¶ci dimy¶lne parametrów: urz±dzenie adres IRQ we/wy ------ -------- ----- plip0 0x3BC 5 plip1 0x378 7 plip2 0x278 2 (9) Je¶li parametry portów równoleg³ych twojego komputera nie pasuj± do ¿adnej z przedstawionych powy¿ej kombinacji, jeste¶ w stanie zmieniæ przerwanie IRQ wykorzystywane przez port (za pomoc± programu _i_f_c_o_n_f_i_g). Pamiêtaj aby w³±czyæ w BIOSie korzystanie przez porty równoleg³e zprzerwañ IRQ, oczywi¶cie o ile BIOS posiada tak± opcjê. W celu skonfigurowania interfejsu _p_l_i_p musisz do plików rc konfiguruj±cych sieæ _d_o_d_a_æ nastêpuj±ce polecenia: # # Przy³±cz interfejs PLIP # # skonfiguruj pierwszy port równoleg³y jako urz±dzenie plip /sbin/ifconfig plip0 IPA.IPA.IPA.IPA pointopoint IPR.IPR.IPR.IPR up # # End plip Gdzie: IIPPAA..IIPPAA..IIPPAA..IIPPAA oznacza twój adres IP. IIPPRR..IIPPRR..IIPPRR..IIPPRR oznacza adres IP komputera zdalnego. Parametr _p_o_i_n_t_o_p_o_i_n_t ma tutaj takie samo zanczenie, co w przypadku protoko³u SLIP, a mianowicie okre¶la adres IP komputera po drugiejstronie po³±czenia. Urz±dzenie _p_l_i_p niemal pod ka¿dym wzglêdem mo¿esz traktowaæ tak samo jak urz±denie _s_l_i_p, poza tym, ¿e ani _d_i_p ani _s_l_a_t_t_a_c_h nie musz± i nie mog± byæ wykorzystywane. 66..2211..11.. SScchheemmaatt kkaabbllaa ddoo ppoo³³±±cczzeenniiaa PPLLIIPP.. _p_l_i_p zosta³ opracowany w taki sposób, aby wykorzystywa³ kable o takim samym uk³adzie, co kable, zktórych korzystaj± inne popularne programy do transferu danych przez port równoleg³y pracuj±ce w ¶rodowisku MSDOS. Schemat po³±czeñ (wziêty z /usr/src/linux/drivers/net/plip.c) znajduje siê poni¿ej: Nazwa Po³±czenie --------- ----------------- GROUND 25 - 25 D0->ERROR 2 - 15 ERROR->D0 15 - 2 D1->SLCT 3 - 13 SLCT->D1 13 - 3 D2->PAPOUT 4 - 12 PAPOUT->D2 12 - 4 D3->ACK 5 - 10 ACK->D3 10 - 5 D4->BUSY 6 - 11 BUSY->D4 11 - 6 D5 7* D6 8* D7 9* STROBE 1* FEED 14* INIT 16* SLCTIN 17* Uwagi: Nie nale¿y ³±czyæ koñcówek oznaczonych `*'. Dodatkowe uziemienia to 18,19,20,21,22,23 i 24. Je¶li kabel z którego korzystasz jest ekranowany, ekran powinien byæ pod³±czony do obudowy wtyczki DB-25 ttyyllkkoo nnaa jjeeddnnyymm ooññccuu. OOssttrrzzee¿¿eenniiee:: kkaabbeell zzee ¼¼llee wwyykkoonnaannyymmii ppoo³³±±cczzeenniiaammii mmoo¿¿ee ffiizzyycczznniiee zznniisszzcczzyyææ kkaarrttêê kkoonnttrroolloorraa ttwwoojjeeggoo kkoommppuutteerraa... B±d¼ bardzo ostro¿ny i dwukrotnie sprawdzaj ka¿de po³±czenie, aby nie naraziæ siê na niepotrzebny ból g³owy lub atak serca. Choæ mo¿e siê udaæ, ¿e po³±czenie PLIP bêdzie pracowaæ na du¿e odleg³o¶ci, nale¿y jednak tego unikaæ. Specykikacja kabla pozwala na wykonania kabla o d³ugo¶ci ok 1m. B±dz ostro¿ny u¿ywaj±c d³u¿szych kabli, poniewa¿ ¼ród³± silnych pó³ elekromagnetycznych (pioruny, linue wysokiego napiêcia, nadajnuki radiowe) mog± zaklóciæ pracê a czasami doprowadziæ do uszkodzenia sterownika. Je¶li zale¿y ci na po³±czeniu dwóch komputerów na naprawdê du¿± odleg³o¶æ, powiniene¶ zopatrzyæ siê w parê tanich kart ethernetowych pracuj±cych na cienkim kablu koncentrycznym. 66..2222.. PPPPPP Urz±dzenia PPP nosz± nazwy `ppp0', `ppp1, itd. Urz±dzenia otrzymuj± kolejne numery poczynaj±c od `0'. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Networking options ---> <*> PPP (point-to-point) support Szczegó³owy opis konfiguracji PPP mo¿na znale¼æ w PPP-HOWTO <PPP- HOWTO.html>. 66..2222..11.. UUttrrzzyymmyywwaanniiee zzaa ppoommoocc±± _p_p_p ssttaa³³eeggoo ppoo³³±±cczzeenniiaa zz IInntteerrnneetteemm.. Je¶li masz na tyle szczê¶cia, aby posiadaæ pó³sta³e po³aczenie z sieci± i chcia³bys, aby twój komputer automatycznie zestawia³ po³±czenie PPP, gdy z jakiego¶ powodu zostanie przerwane, pomo¿e ci w tym prosta sztuczka. Skonfiguruj PPP w taki sposób, aby by³o uruchamiane prze administratora systemu za pomoc± polecenia: # pppd UUppeewwnniijj ssiiêê, ¿e w pliku /etc/ppp/options znajduje siê opcja `-detach'. Nastêpnie dodaj do pliku /etc/inittab, poni¿ej definicji _g_e_t_t_y nastêpuj±cy wiersz: pd:23:respawn:/usr/sbin/pppd W ten sposón program _i_n_i_t bedzie uruchamia³ i monitorowa³ program _p_p_p_d i za ka¿dym razem, gdy pppd zkoñczy pracê, bêdzie uruchamia³ go ponownie. 66..2233.. RRoossee pprroottooccooll ((AAFF__RROOSSEE) Urz±dzenia protokolu Rose nosz± nazwy `rs0', `rs1', itd. Dostêpne s± w j±drach w wersji 2.1.*. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Networking options ---> [*] Amateur Radio AX.25 Level 2 <*> Amateur Radio X.25 PLP (Rose) Protoko³y AX25, NetRom i Rose s± dok³adnie omówione w AX25-HOWTO <AX25-HOWTO.html>. S± wykorzystywane przez krótkofalowców (packet radio). Wiêkszo¶æ pracy zwi±zanej z implementacj± tych protoko³ów pod Linuxem wykona³ Jonathon Naylor, jsn@cs.not.ac.uk. 66..2244.. SSAAMMBBAA -- ``NNeettBBEEUUII'',, ``NNeettBBiiooss'' ssuuppppoorrtt.. SAMBA jest implemnetacj± protoko³u SMB (Session Management Block). Pozwala na korzystanie z dysków i drukarek komputera pracuj±cego pod Linuxem, komputerom pracuj±cym pod systemami firmy Microsoft lub pod systemem OS2 SAMBA i jej konfigiracja jest szcegó³owo omówiona w SMB-HOWTO <SMB- HOWTO.html>. 66..2255.. KKlliieenntt pprroottookkoo³³uu SSLLIIPP Urz±dzenia protoko³u SLIP s± nazywane `sl0', `sl1' itd. Pierwsze skonfigurowane urz±dzenie otrzymuje numer `0', pozosta³e otrzymuj± kolejne numery, w momencie ich konfiguracji. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Network device support ---> [*] Network device support <*> SLIP (serial line) support [ ] CSLIP compressed headers [ ] Keepalive and linefill [ ] Six bit SLIP encapsulation Protokó³ SLIP (Serial Line Internet Protocol) pozwala na zestawienie po³±czenia TCP/IP przez liniê szeregow±, np. po³±czenie modemowe przez liniê telefoniczn± lub dzier¿awion±. Oczywi¶cie aby móc korzystaæ z protoko³u SLIP nale¿y mieæ wpierw dostêp do _s_e_r_w_e_r_a _S_L_I_P. Wiele uniwersytetów i firm komercyjnych udostêpniaj± us³ugê SLIP. SLIP wykorzystuje porty szeregowe komputera do przesy³ania datagramów IP. W tym celu musi przej±æ sterowanie portu szeregowego. Urz±dzenia SLIP nosz± nazwy _s_l_0,_s_l_1 itd. Jak to siê ma do urz±dzeñ portów szeregowych? Oprogramowanie sieciowe korzysta z funkcji _i_o_c_t_l (i/o control) za pomoc± których mo¿e za¿adaæ zamiany urz±dzenia portu szeregowegow urz±dzenie SLIP. Dwa popularne programy potrafi± to zrobiæ. Jeden z nich to _d_i_p, drugi _s_l_a_t_t_a_c_h. 66..2255..11.. ddiipp _d_i_p (Dialup IP) to zmy¶lny program umo¿liwiaj±cy ustawienie prêdko¶ci portów szeregowych, sterowanie modemem w celu wybrania odpowiedniego numeru, zautomatyzowane wej¶cie do zdalnego systemu, przesukiwanie i wybieranie informacji przesy³anych przez zdalny serwer( np przydzielonego nam na czas sesji adresu IP), korzystanie z funkcji _i_o_c_t_l w celu przestawienia portu szeregowego w urz±dzenie SLIP. Program _d_i_p posiada rozbudowany jêzyk przeznaczony do pisania skryptów, dziêki czemu mo¿na bardzo ³atwo zautomatyzowaæ procedurê zestawiania po³±czenia SLIP. Jes dostêpny pod adresem: sunsite.unc.edu <ftp://sunsite.unc.edu/pub/Linux/system/Network/serial/dip/dip337o- uri.tgz>. Aby go zainstalowaæ spróbuj wydaæ nastêpuj±ce polecenia: # # cd /usr/src # gzip -dc dip337o-uri.tgz | tar xvf - # cd dip-3.3.7o <je¶li to konieczne popraw plik Makefile> # make install # Plik Makefile zak³ada istnienie w twoim systemie grupy o nazwie _u_u_c_p, lecz mo¿esz to zmieniæ np na _d_i_p, lub _s_l_i_p zle¿nie od twojej konfiguracji. 66..2255..22.. ssllaattttaacchh _s_l_a_t_t_a_c_h w przecuwieñtwie do _d_i_p jest bardzo prostym programem, bardzo ³atwym w u¿ytkowaniu, nie posiadaj±cym bogatych opcji programu _d_i_p. Nie posiada mo¿³iwo¶ci tworzenia skryptów, jedyne co robi to konfiguracja urz±dzenia portu szeregowego, jako urz±dzenia SLIP. Zak³ada, ¿e posiadasz wszystkie informacje niezbêdne do zestawienia po³±czenia oraz, ¿e po³azcenie fizyczne miêdzy portmi jest ju¿ zestawione. _s_l_a_t_t_c_h_c jest idealne d owykorzystania w sta³ych po³aczeniach z serwerem, np. przez kabel ³±cz±cy bezpo¶rednio dwa porty szeregowe lub przez linie dzier¿awion±. 66..2255..33.. KKiieeddyy uu¿¿yywwaaææ kkaa¿¿ddeeggoo zz ttyycchh pprrooggrraammóóww ?? Skorzyst³bym z programu _d_i_p zawsze wtedy, gdy l±czy³byn komputer z serwerem SLIP przez modem i liniê telefoniczn±. Skorzyst³bym z programu _s_l_a_t_t_a_c_h wtedy, gdy zestawia³bym po³±czenie przez liniê dzier¿awion± lub kabel bezpo¶rednio miêdzy serwerem i moim komputerem i gdy nie muszê wykonywaæ ¿dnych czynno¶ci do fizycznego zestawienia po³±czenia miêdzy moim komputerm a serwerem. Patrz rozdzia³ 'Sta³e po³±czenie SLIP'. Konfiguracja urz±dzenia SLIP jest zbli¿ona do konfiguracji urz±dzenia karty ethernetowej. (przeczytaj rozdzia³ 'Konfiguracja karty ethernetowej). Jednak¿e istneij± dwie zasdnicze ró¿nice: Po pierwsze SLIP w przeciwieñstwie do sieci ethernetowych ³±czy bezpo¶rednio ze sob± tylko dwa komputery, po jednym na ka¿dym koñcu po³±czenia. O ile pod³±czenie kabla sieci ethernet do komputera oznacza jej natychmiastow± gotowo¶æ do pracy, o tyle w przypadku protoko³u SLIP mo¿e byæ wymagana wcze¶niejsza inicjacja fizycznego po³±czenia miêdzy komputerami. Je¶li korzystasz z programu _d_i_p, to zwykle inicjacja ³±cza odbywa siê nie tu¿ po uruchomieniu systemu, lecz pó¿niej, gdy jeste¶ gotowy do korzystania z po³±czenia. Mo¿na ca³± tê procedurê zautomatyzowaæ. Je¶li korzystasz z programu slattch wtedy prawdopodobnie zechcesz zmodyfikowaæ plik startowy rc.inet1. Jak to zrobiæ powiemy za chwilê. Istniej± dwa podstawowe serwery udostêpniaj±ce SLIP. Ró¿ni± siê sposobem przydzia³u adresu IP, mog± to robiæ statycznie (za ka¿dym razem otrzymujesz ten sam adres IP) i dynamicznie (po nawi±zaniu po³±czenia serwer podaj, jakiego adreu powiniene¶ u¿ywaæ). Niemal ka¿dy serwer SLIP bedzie wymaga³ przedstawienia siê i podania has³a. _d_i_p potrafi zautomatyzowaæ wszystkie te procedury. 66..2255..44.. SSttaattyycczznnyy sseerrwweerr SSLLIIPP lliinniiee mmooddeemmoowwee ii pprrooggrraammeemm DDIIPP.. Statyczny serwer SLIP to skrót oznaczaj±cy serwer SLIP przydzielaj±cy adresy IP w sposób statyczny, Otrzymany adres IP jest wy³±cznie twój. Za ka¿dym razem, gdy przy³±czysz siê do serwera bêdziesz konfigurowa³ port SLIP swojego komputera tym samym adresem IP. Serwer odpowie na po³±czenie rozpoczête przez twój modem, prawdopodobnie poprosi o podanie pseudonimu i has³a, a nastêpnie po przej¶ciu w tryb SLIP bêdzie przesy³a³ wszystkie datagramy adresowane na twój adres IP przez nazwi±zane przez ciebie po³±czenie. Je¶li korzystasz ze statycznego serwera SLIP, mo¿esz chcieæ dodaæ do pliku /etc/hosts pozycjê z nazw± i adresem IP twojego komputera. Powiniene¶ równie¿ skonfigurowaæ kilka innych plików, miêdzy innymi rc.inet2, host.conf, resolv.conf, /etc/HOSTNAME i rc.local. Pamiêtaj, ¿e modyfikuj±c rc.inet1 nie musisz podawaæ ¿adnych poleceñ specyficznych dla po³±czenia SLIP, pniewa¿ to dopiero _d_i_p wykona ca³± ciê¿k± robotê konfiguruj±c interfejs SLIP, po tym jak nawi±¿e po³±czenie modemowe i zaloguje siê na serwer. Je¶li tak w³a¶nie pracuje serwer SLIP z którego korzystasz mo¿esz przej¶æ do rozdzia³u 'Korzystanie z programu dip', tam dowiesz siê jak poprawnie skonfigurowaæ ten program. 66..2255..55.. DDyynnaammiicc SSLLIIPP sseerrvveerr wwiitthh aa ddiiaalluupp lliinnee aanndd DDIIPP.. _D_y_n_a_m_i_c_z_n_y serwer SLIP to skrót oznaczaj±cy serwer SLIP, który z pewnej puli przydziela adresy IP w sposób dynamiczny (za ka¿dym razem, gdy siê z nim po³±czysz mo¿esz otrzymaæ inny adres IP). To znaczy, ¿e nie masz gwarancji, ¿e ³±cz±c sie otrzymasz konkretny adres IP, mo¿e on byæ wykorzystywany przez kogo¶ innego, wtedy gdy nie korzystasz z po³±czenia. Administrator sieci, który skonfigurowa³ serwer przydzieli³ mu pewn± pulêadresów IP z której mo¿e korzystaæ. Obs³uguj±c kolejne przychodz±ce po³±czenie znajduje pierwszy niewykorzystany w danym momencie adres IP, przeprowadza u¿ytkownika przez procedurê weryfikacyjn± wy¶wietlaj±c na koniec informacje zawieraj±c± adres IP, który zosta³ przydzielony temu u¿ytkownikowi na czas trwania nawi±zego w³a¶nie po³±czenia. Konfiguracja do korzystania z tego rodzaju serwera jet podobna do tej dla serwera statycznego. Trzeba jedynie dodac fragment pobrania adresu IP rpzydzielonego nam przez serwer na czas trwania po³±czenia, a nastêpnie kontunuowaæ konfigurowanie SLIPa z tym w³a¶nie adresem. Pnownie, _d_i_p wykonuje tê ciêzk± pracê, a jego nowsze wersje s± na tyle sprytne, ¿e potrafi± nie tylko zlogowaæ ciê do systemu, ale równie¿ potrafi± odczytaæ automatycznie adres IP wy¶wietlany przez serwer, zachowuj±c go do pó¼niejszego wykorzystania przy onfigurowaniu interfejsu SLIP. Je¶li tak w³a¶nie pracuje serwer SLIP z którego korzystasz mo¿esz przej¶æ do rozdzia³u 'Korzystanie z programu dip', tam dowiesz siê jak poprawnie skonfigurowaæ ten program. 66..2255..66.. KKoorrzzyyssttaanniiee zz pprrooggrraammuu ddiipp.. Jak wyja¶nili¶my wcze¶niej _d_i_p jest potê¿nym programem, który potrafi upro¶ciæ i zautomatyzowaæ proces ³±czenia siê z serwerem SLIP, logowania siê na ten serwer uruchamiania tam odpowiedniego oprogramowania i konfigurowania lokalnych urz±dzeñ SLIP za pomoc± odpowiednich poleceñ korzystaj±cych z programów _i_f_c_o_n_f_i_g i _r_o_u_t_e. Podstawowym sposobem korzystania z programu _d_i_p jest pisanie i uruchamianie specjalnych skryptów, sk³adaj±cych siê z listy poleceñ rozumianych przez program _d_i_p. Przyj¿yj siê plikowi sample.dip znajduj±cemu siê w dystrybucji programu _d_i_p. Dip jest potê¿nym programem posiadaj±cym wiele opcji, nie bedziemy ich tu wszystkich przedstawiaæ, je¶li ciê to interesuje, przyj¿yj siê stronom podrêcznika po¶wiêconym programowi dip, plikom README i innym plikom przyk³±dowym znajduj±cym siê w pakiecie dystrybucyjnym programu. Prawdopodobnie zauwa¿y³e¶, ¿e plik sample.dip zak³ada, ¿e korzstasz ze statycznego serwera SLIP, tzn. ¿e wiesz jaki jest twój adres IP, znim po³±czysz sie z serwerem. W przypadku korzystania z dynamicznego serwera SLIP nowsze wersje programu dip zosta³y zaopatrzone w dodatkowe polecenie, które potrafi automatycznie odczytaæ i skonfigurowæ lokalne urz±dzenie SLIP z adresem IP przydzielonym przez serwer. Poni¿sza próbka jest zmodyfikowanym plikiem sample.dip dostarczanym w pakiecie _d_i_p_3_3_7_j_-_u_r_i_._t_g_z i w twoim przypadku prawdopodobnie jest dobrym punktem startowym. Mo¿esz go zachowaæ jako np. /etc/dipscript i dostosowaæ go do swoich wrunków. # # sample.dip Dialup IP connection support program. # # This file (should show) shows how to use the DIP # This file should work for Annex type dynamic servers, if you # use a static address server then use the sample.dip file that # comes as part of the dip337-uri.tgz package. # # # Version: @(#)sample.dip 1.40 07/20/93 # # Author: Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG> # main: # Next, set up the other side's name and address. # My dialin machine is called 'xs4all.hacktic.nl' (== 193.78.33.42) get $remote xs4all.hacktic.nl # Set netmask on sl0 to 255.255.255.0 netmask 255.255.255.0 # Set the desired serial port and speed. port cua02 speed 38400 # Reset the modem and terminal line. # This seems to cause trouble for some people! reset # Note! "Standard" pre-defined "errlevel" values: # 0 - OK # 1 - CONNECT # 2 - ERROR # # You can change those grep'ping for "addchat()" in *.c... # Prepare for dialing. send ATQ0V1E1X4\r wait OK 2 if $errlvl != 0 goto modem_trouble dial 555-1234567 if $errlvl != 1 goto modem_trouble # We are connected. Login to the system. login: sleep 2 wait ogin: 20 if $errlvl != 0 goto login_trouble send MYLOGIN\n wait ord: 20 if $errlvl != 0 goto password_error send MYPASSWD\n loggedin: # We are now logged in. wait SOMEPROMPT 30 if $errlvl != 0 goto prompt_error # Command the server into SLIP mode send SLIP\n wait SLIP 30 if $errlvl != 0 goto prompt_error # Get and Set your IP address from the server. # Here we assume that after commanding the SLIP server into SLIP # mode that it prints your IP address get $locip remote 30 if $errlvl != 0 goto prompt_error # Set up the SLIP operating parameters. get $mtu 296 # Ensure "route add -net default xs4all.hacktic.nl" will be done default # Say hello and fire up! done: print CONNECTED $locip ---> $rmtip mode CSLIP goto exit prompt_error: print TIME-OUT waiting for sliplogin to fire up... goto error login_trouble: print Trouble waiting for the Login: prompt... goto error password:error: print Trouble waiting for the Password: prompt... goto error modem_trouble: print Trouble occurred with the modem... error: print CONNECT FAILED to $remote quit exit: exit Powy¿szy przyk³ad zak³ada, ¿e ³±czysz siê z _d_y_n_a_m_i_c_z_n_y_m serwerem SLIP. Je¶li ³±czysz siê z serwerem _s_t_a_t_y_c_z_n_y_m powiniene¶ skorzystaæ z pliku sample.dip dostarczanego razem z _d_i_p_3_3_7_j_-_u_r_i_._t_g_z. Gdy _d_i_p otrzyma polecenie _g_e_t _$_l_o_c_a_l przeszukuje tekst przesy³any przez serwer SLIP w poszukiwaniu ci±gu znaków wygl±daj±cego jako adres IP, tzn. vi±gi cyfr roznielone kropk± '.'. Zosta³a ona wprowadzone dla osób korzystaj±cych z _d_y_n_a_m_i_c_z_n_y_c_h serwerów SLIP, aby dip móg³ sam,automatycznie odczytaæ adres IP przydzielony przez serwer. W powy¿szym przyk³adzie po zestawieniu po³±czenia SLIP zostanie automatycznie dodana domy¶lna trasa skierowana w³a¶nie przez to po³±czenie. Je¶li nie tego oczekujesz, mo¿esz np posiadaæ inne po³±czcenie przez sieæ ethernetow±, przez które ma byc skierowana domyslna trasa, usuñ z powy¿szego pliku wiersz z poleceniem _d_e_f_a_u_l_t. Je¶li po zakoñczeniu dzia³ania tego skryptu wydasz polecenie _i_f_c_o_n_f_i_g zobaczysz, ¿e pojawi³o siê nowe urz±dzenie _s_l_0. To jest w³a¶nie urz±dzenie SLIP. W miarê potrzeb mo¿esz zmieniæ konfiguracjê sieci rêcznie, po zakoñczeniu dzia³ania programu _d_i_p, za pomoc± pogramów _i_f_c_o_n_f_i_g i _r_o_u_t_e. Nale¿y pamietac, ¿e _d_i_p pozwala na wybranie jendego z wileu ró¿nych protoko³ów wykorzystywanych w poleceniu mode. Najczê¶ciej jest to _c_S_L_I_P oznaczaj±cy SLIP z kompresj± nag³ówków. Pamiêtaj, ¿e oba koñce po³±czenia musz± pracowaæ w identycznym trybie. Je¶li zmienisz jakie¶ ustawienia, musisz siê upewniæ, ¿e serwer sobie z nimi poradzi. Powy¿szy przk³ad jest uniwersalny i powinien poradzic sobie z wiêkszo¶ci± b³êdów jakie mog± wyst±piæ. Wiêcej informacji znajdziesz na stronie podrêcznika po¶wiêconej programowi _d_i_p (man dip). Oczywi¶cie mo¿esz w taki sposób zmodyfikowaæ ten skrypt, aby w przypadku wystapienia b³êdu próbowa³ powtórnie nawi±zaæ po³±czenie telefoniczne, lub próbowa³ po³±czyæ siê z innymi srwerami, które udostêpniaj± ci wejscie do Internetu. 66..2255..77.. SSttaa³³ee ppoo³³±±cczzeenniiee SSLLIIPP pprrzzeezz lliinniiêê ddzziieerr¿¿aawwiioonn±± -- ssllaattttaacchh.. Je¶li jeste¶ posiadaczem kabla ³±cz±cego dwa komputery, lub szczê¶cliwcem posiadaj±cym linie dzier¿awion± lub inne sta³e po³±czenie szeregowe dwóch komputerów, wtedy nie musisz siê k³opotaæ zestawiaj±c ³±cze szeregowe za pomoc± programu _d_i_p. _s_l_a_t_t_a_c_h jest bardzo ³atwym w uzywaniu narzêdziem umo¿liwiaj±cym skonfigurowaæ zestawiane po³aczenie. Poniewa¿ bêdzie to po³±czenie sta³e, prawdopodobnie zechcesz dodaæ kilka poleceñ do pliku rc.inet1. Podswumowuj±c, wszystko co potrzebujesz w przypadku zstawiania po³±czenia przez liniê sta³±, jest poprawne ustawienie prêdko¶ci portów szeregowych i prze³±czenie ich w tryb SLIP. _s_l_a_t_t_a_c_h pozwala wykonaæ to wszystko wydaj±c jedno polecenie. Dodaj do pliku rc.inet1 nastêpuj±ce polecenie: # # Zestaw po³±czenie SLIP ze statycznym adresem IP # # configure /dev/cua0 for 19.2kbps and cslip /sbin/slattach -p cslip -s 19200 /dev/cua0 & /sbin/ifconfig sl0 IPA.IPA.IPA.IPA pointopoint IPR.IPR.IPR.IPR up # # Koniec Gdzie: IIPPAA..IIPPAA..IIPPAA..IIPPAA twój adres IP IIPPRR..IIPPRR..IIPPRR..IIPPRR adres IP po drugim koñcu po³±czenia SLIP _s_l_a_t_t_a_c_h przyporz±dkowuje do urz±dzenia portu szeregowego pierwsze wolne urz±dzenie slip. Rozpoczyna od _s_l_0. To znaczy pierwsze wywo³anie polecenia slattach przyporz±dkowuje portowi szeregowemu urz±dzenie _s_l_0, przy nastêpnym wywo³aniu bêdzie to _s_l_1 itd. _s_l_a_t_t_a_c_h umo¿liwia skonfigurowanie wielu ró¿nych protoko³ów (argument opcji -p). W twoim przypadku w zale¿no¶ci od tego czy bêdziesz chcia³ korzystaæ z komresji nag³ówków czy nie bêdziesz korzysta³ albo z protoko³u _c_S_L_I_P albo _S_L_I_P. Uwaga: oba koñsce po³±czenie musz± u¿ywaæ tego samego protoko³u. 66..2266.. SSeerrwweerr SSLLIIPP.. Je¶li posiadasz komputer, byæ mo¿e przy³±czony do sieci, i chcesz, aby udostêpnia³ innym przez modem serwisy internetowe, to musisz skonfigurowaæ go jako serwer. Je¶li protoko³em, który chcesz u¿ywaæ jest SLIP, to istniej± trzy mo¿liwo¶ci konfiguracji twojego komputera jako serwer. Osobi¶cie preferuje pierwsz± z prezentowanych, _s_l_i_p_l_o_g_i_n. Wydaje siê byæ najprostsz± i naj³atwiejsz± do skonfigurowania i zrozumienia. Przedstawie opis wszystkich trzech metod, aby¶ mog³ samemu podj±æ decyzjê. 66..2266..11.. SSeerrwweerr kkoorrzzyyssttaajj±±ccyy zz pprrooggrraammuu _s_l_i_p_l_o_g_i_n.. _s_l_i_p_l_o_g_i_n to program zastêpuj±cy zwykla pow³oke (interpreter poleceñ) u¿ytkownika, dla tych, którzy chc± korzystac z linii szeregowej w trybie SLIP. Pozwala na skonfigurowanie twojego komputera zarówno jako _s_t_a_t_y_c_z_n_e_g_o _s_e_r_w_e_r_a _S_L_I_P (u¿ytkownicy za ka¿dym razem otrzymuj± ten sam adres IP), lub _d_y_n_a_m_i_c_z_n_e_g_o _s_e_r_w_e_r_a _S_L_I_P (adres IP jest przydzielony raczej do linii szeregowej, a nie u¿ytkownika, wiêc u¿ytkownik nie ma pewno¶ci, ¿e za ka¿dym razem otrzyma ten sam adres IP). Uzytkownik musi wpierw przej¶æ przez standardow± procedurê wchodzenia do systemu (logowanie siê) podaj±c swój identyfikator i haslo, lecz po wej¶ciu do systemu, zmiast zwyk³ego interpretera poleceñ uruchamiany jest program _s_l_i_p_l_o_g_i_n, który przeszukuje swój plik konfiguracyjny (/etc/slip.hosts) w poszukiwaniu pozycji odpowiadaj±cej identyfikatorowi u¿ytkownika. Po jej znalezieniu, przestawia liniê w tryb 8mio bitowy, a nastêpnie korzystaj±c z odpowiednich funkcji _i_o_c_t_l prze³±cza liniê w tryb SLIP. Po zakoñczeniu tego etapu nastêuje ostatnia faza, _s_l_i_p_l_o_g_i_n uruchamia skrypt, którego zadaniem jest skonfigurowanie interfejsu SLIP (ustawienie adresu IP, netamski) dodanie odpowiedniej trasy do tabeli trasowania (routingu) j±dra. Skrypt ten nosi zwykle nazwê /etc/slip.login lecz podobnie jak w przypadku _g_e_t_t_y, je¶li niektórzy u¿ytkownicy wymagaj± specjalnego traktowania mo¿esz utworzyæ skrypt /etc/slip.login.identyfikator_uzytkownika, który w takim przypadku zostanie uruchomiony w miejsce standardowego skryptu. Aby _s_l_i_p_l_o_g_i_n dzia³a³ poprawnie nale¿y zmodyfikowaæ trzy lub cztery pliki. Omówiê szczegó³owo sk±d i jak zdobyæ odpowiednie oprogramowanie i jak je oprawnie skonfigurowaæ. Wspomniane pliki to: · /etc/passwd, definiujacy u¿ytkownik³ów twojego systemu, · /etc/slip.hosts, zawieraj±cy informacje o ka¿dym u¿ytkowniku korzystaj±cym ze SLIPa, · /etc/slip.login, odpowiedzialny z odpowiedni± konfiguracjê systemu, po zalogowniu siê u¿ytkownika, · /etc/slip.tty wymagany tylko wtedy, gdy konfigurujesz _d_y_n_a_m_i_c_z_n_y _s_e_r_w_e_r _S_L_I_P, a który zawiera tabelê przydzielanch adresó IP, · /etc/slip.logout zawieraj±cy polecenia jakie nale¿y wykonaæ po zakoñczeniu pracy przez u¿ytkownika, lub po zerwaniu po³±czenia. 66..2266..11..11.. SSkk±±dd wwzzii±±ææ _s_l_i_p_l_o_g_i_n Byc mo¿e pakiet _s_l_i_p_l_o_g_i_n jest ju¿ zainstalowany na twoim komputerze, jako czê¶æ dystrybucji, je¶li nie _s_l_i_p_l_o_g_i_n jest dostêpny pod adresem sunsite.unc.edu <ftp://sunsite.unc.edu/pub/linux/system/Network/serial/sliplogin-2.1.1.tar.gz>. Plik tar zawiera pliki ¼ród³owe, skompilowane pliki binarne i dokumentacjê.. Aby zapewniæ, ¿e _s_l_i_p_l_o_g_i_n mo¿e byæ uruchamiany prze upowa¿nionych do tego u¿ytkowników, powiniene¶ do pliku /etc/group dodaæ pozycjê podobn± do poni¿szej: .. slip::13:radio,fred .. Podczas instalacji pakietu _s_l_i_p_l_o_g_i_n, Makefile zmieni grupê do której nale¿y program _s_l_i_p_l_o_g_i_n na slip. W ten sposób, prócz w³a¶ciciela bêd± go mogli uruchamiaæ tylko u¿ytkownicy nale¿±cy do grupy SLIP. W powy¿szym przy³adzie mog± to robiæ tylko u¿ytkownicy radio i fred. Aby zainstalowaæ pliki binarne do kaalogu /sbin/, a strony podrêcznika do /man/ nale¿y wykonoaæ nastêpuj±ce polecenia: # cd /usr/src # gzip -dc .../sliplogin-2.1.1.tar.gz | tar xvf - # cd sliplogin-2.1.1 # <..Je¶li nie korzystasz z shadow pasword popraw Makefile..> # make install Je¶li przed instalacj± chcesz samemu skompilowac pliki binarne przed make install wykonaj polecenie make clean. Je¶li chcesz zainstalowaæ pliki binarne w innym miejscu, musisz wcze¶niej zmieniæ plik Makefile. Wiêcej informacji znajdziesz w plikach README wewn±trz pakietu. 66..2266..11..22.. KKoonnffiigguurraaccjjaa pplliikkuu //eettcc//ppaasssswwdd. Zwykle dla osób korzystaj±cych ze SLIPa tworzy siê oddzielne konta. Powszechnie przyjêta konwencja mówi, ¿e jako pseudonim u¿ytkownika nale¿y przyj±c nazwê ³±cz±cego siê z nami komputera, poprzedzon± wielk± liter± 'S'. Je¶li ³±cz±cy siê z nami komputer nosi nazwê rado, mog³by¶ utworzyæ dla niego pozycjê w pliku /etc/passwd wygl±dajac± mniej wiêcej tak: Sradio:FvKurok73:1427:1:radio SLIP login:/tmp:/sbin/sliplogin Tak na prawdê nie ma znaczenia jaki jest identyfikator konta. Uwaga: u¿ytkownik SLIPa nie potrzebuje w³asnego katalogu macierzystego, poniewa¿ nie bêdzie korzysta³ z pow³oki interpretera poleceñ na naszym komputerze. Dlatego dobrym wyborem w takim rzypadku jest katalog /tmp. Pamiêtaj, ¿e zamiast zwyk³ej pow³oki uruchamiany jest program _s_l_i_p_l_o_g_i_n. 66..2266..11..33.. KKoonnffiigguurraaccjjaa pplliikkuu //eettcc//sslliipp..hhoossttss Plik /etc/slip.hosts jest przeszukiwany przez _s_l_i_p_l_o_g_i_n w poszukiwaniu szczegó³ów konfiguracyjnych dla u¿ytkownika, przez którego zostal uruchomiony. W tym w³a¶nie pliku podaje siê adres IP i netmaskê któe bêd± przydzielone temu u¿ytkownikowi i wykorzystywane do konfiguracji. Przykladowe dwie pozycje, jdn± dla statycznej konfiguracji dla komputera radio i druga, dynamiczna konfiguracja dla komputera albert mog³y by wygl±daæ nastêpuj±co: # Sradio 44.136.8.99 44.136.8.100 255.255.255.0 normal -1 Salbert 44.136.8.99 DYNAMIC 255.255.255.0 compressed 60 # Poszczególne pola w wierszu pliku /etc/slip.hosts oznaczaj±: 1. pseudonim u¿ytkownika; 2. adres IP serwera, tzn adres IP tego komputera; 3. adres IP przydzielony komputerowi po drugiej stronie po³±czenia. Je¶li w tym polu wystêpuje s³owo DUNAMIC wtedy adres IP, zostanie przydzielony na podstawie informacji zawartych w pliku /etc/slip.tty. UUwwaaggaa:: to udogodnienie pojawi³o siê dopiero w wersji 1.3 programu sliplogin. 4. netmaska przydzielona ³±cz±cemu siê komputerowi, w notacji dziesietnej z kropkami np. 255.255.255.0 netmaska klasy C; 5. tryb pracy SLIP pozwalaj±cy na w³±czenie/wy³±czenie kompresji lub innych udogodnieñ; 6. parametr czasowy okre¶lajacy jak d³ugo linia mo¿e pozostaæ w stanie oczekiwania na przes³anie informacji (brak orzymanych datagramó), zanim nast±pi automatyczne roz³aczenie. Wielko¶æ ujemna wy³±cz± to udogodnienie. 7. parametry opcjonalne. Uwaga: W polach 2 i 3 mo¿na podawaæ zarówna nazwy komputerów, jak i adresy IP. Je¶li podasz nazwê komputera, sprawd¼, czy system potrafi znale¼æ jego adres IP, w pezeciwnym razie wykonanie skryptu zakoñczy siê niepowodzeniem. Mo¿esz to sprawdziæ próbuj±c po³±czyæ siê z nim za pomioc± programu telnet. Je¶li zobaczysz komunikat `_T_r_y_i_n_g _n_n_n_._n_n_n_._n_n_n_._._.' to znaczy, ¿e twój komputer potrafi znale¼æ adres IP komputera o podanej przez ciebie nazwie. Je¶li zobaczysz komunikat _U_n_k_n_o_w_n _h_o_s_t', to znaczy, ¿e jednak nie potrafi. Je¶li nie potrafi musisz podawaæ adrs IP tego komputera lub sprwad¼ konfiguracjê DNS swojego komputera. Najczê¶ciej wykorzysytwane tryby pracy SLIP to: nnoorrmmaall zwyk³y, nieskompresowny SLIP. ccoommpprreesssseedd skompresja nag³ówków van Jacobsena (cSLIP) Oczywi¶ccie s± to dwie wzajemnie wykluczaj±ce siê opcje. Wiêcej inforamcji na temat dostêpnych opcji znajdziesz na stronie podrêcznika po¶wieconej progrmaowi sliplogin. 66..2266..11..44.. KKoonnffiigguurraaccjjaa pplliikkuu //eettcc//sslliipp..llooggiinn. Po przeszukaniu prze _s_l_i_p_l_o_g_i_n pliku /etc/slip.hosts i znalezieniu opowiednije pozycji, zostanie uruchomiony skrypt /etc/sli.login, który w rzeczywisto¶ci wykonuje ca³a pracê zwi±zan± z konfiguracja inerfejsów sieciowych, korzystaj±c z przekazanych mu informacji o adresie IP i netmasce sieci. Przyk³adowy plik /etc/slip.login dostarczany w pakiecie _s_l_i_p_l_o_g_i_n wyglada nastêpujaco: #!/bin/sh - # # @(#)slip.login 5.1 (Berkeley) 7/1/90 # # generic login file for a SLIP line. sliplogin invokes this with # the parameters: # $1 $2 $3 $4, $5, $6 ... # SLIPunit ttyspeed pid the arguments from the slip.host entry # /sbin/ifconfig $1 $5 pointopoint $6 mtu 1500 -trailers up /sbin/route add $6 arp -s $6 <hw_addr> pub exit 0 # Jak widaæ, pow¿szy skrypt po prostu korzysta z programu _i_f_c_o_n_f_i_g i _r_o_u_t_e. Konfiguruje urz±dzenie SLIP zgodnie z podanymi mu adresem IP i netask±, nastêpnie modyfikuje tabele tradsowania w j±drze. Wykonuje te same polecenia, które nale¿y wykonaæ rêcznie korzystaj±c ze _s_l_a_t_t_a_c_h. Zwróc uwagê na u¿ycie _P_r_o_x_y _A_R_P w celu zapewnienia dostêpu do komputera pod drugiej stronie po³±czenia pozosta³ym komputerom znajduj±cym siê na tym samym segmencie ethernetu co serwer SLIP. pole <hw_addr> musi zawieraæ adres Zróæ uwagê na u¿ycie _P_r_o_x_y _A_R_P w celu zapewnienia komunikacji miêdzy komputerami znajduj±cymi siê na tym samym segmencie sieci co nasz serwer, a komputerem ³±cz±cym siê przez liniê szeregow±. Pole <hw_addr> powinno zawieraæ adres sprzêtowy karty ethernetowej serwera. Je¶li serwer nie jest przy³±czony do sieci ethernetowej mo¿esz pomin±æ ten wiersz ca³kowicie. 66..2266..11..55.. KKoonnffiigguurraaccjjaa pplliikkuu //eettcc//sslliipp..llooggoouutt. Kiedy nastêpuje przerwanie po³±czenie chcesz byæ pewny, ¿e port szeregowy jest przywracany do swego normalnego stanu i jest gotowy do obs³ugi kolejnego po³±czenia. Do tego celu s³u¿y skrypt /etc/slip.logout. Jest bardzo prosty i jest wywo³ywany z tymi samymi argumentami co /etc/slip.login. #!/bin/sh - # # slip.logout # /sbin/ifconfig $1 down arp -d $6 exit 0 # Wykonywane przez niego czynno¶ci to: wy³±czenie interfejsu slip, spowoduje automatyczne usuniêcie z tabeli trasowania wprowadzonej tam podczas zestawiania po³±czenie pozycji; usuniêcie z tabeli arp wprowadzonej tam rêcznie pozycji. Nie potrzebujesz tego polecenia, je¶li twój serwer nie jest przy³±czony do sieci ethernetowej. 66..2266..11..66.. KKoonnffiigguurraaccjjaa pplliikkuu //eettcc//sslliipp..ttttyy. Je¶li korzystasz z dynamicznego przydzia³u adresów IP (choæ jeden komputer w pliku /etc/slip.hosts jest skonfigurowany z opcj± DYNAMIC) to musisz równie¿ skonfigurowaæ plik /etc/slip.tty informuj±c system jakie adresy IP s± przydzielone do ka¿dego z wykorzystywanych portów szeregowych. Plik ten jest potrzebny tylko wtedy, gdy twój serwer bêdzie przydziela³ adresy IP u¿ytkownikom w sposób dynamiczny. Plik zawiera tabelê, które ka¿demu wykorzystywanemu urz±dzeniu _t_t_y przyporz±dkowuje adres IP jaki ma zostaæ przydzielony komputerowi ³±cz±cemu siê przez to urz±dzenie _t_t_y. Format niniejszego pliku jest nastêpuj±cy: # slip.tty tty -> adres IP # format: /dev/tty?? xxx.xxx.xxx.xxx # /dev/ttyS0 192.168.0.100 /dev/ttyS1 192.168.0.101 # Pozycje w powy¿szym przyk³adzie oznaczaj±, ¿e wszyscy, którzy po³±cz± siê prze port /dev/ttuS0 i jako swoj adres maj± w pliku /etc/slip.hosts slowo DYNAMIC otrzymaj± adres 192.168.0.100. W ten sposób potrzebujesz jedynie jednego adresu IP na ka¿dy wykorzystywany port dla wszystkich u¿ytkowników, którzy nie potrzebuj± dedykowanego, sta³ego adresu IP. Dzieki temu liczba adresów potrzebna do obs³ugi wielu u¿ytkowników jest bardzo ma³a. 66..2266..22.. SSeerrwweerr SSLLIIPP kkoorrzzyyssttaajj±±ccyy zz pprrooggrraammuu _d_i_p.. Czê¶æ z prezentowanej poni¿ej informacji pochodzi ze stron podrêcznika dotycz±cych programu _d_i_p. Jest tam pokrótce opisane jak wykorzystaæ _d_i_p jako serwer SLIP. Proszê równie¿ zwróciæ uwagê, ¿e podane informacje dotycz± wersji _d_i_p_3_3_7_o_-_u_r_i_._t_g_z i prawdopodobnie nie maj± zastosowania do innych wersji programu. _d_i_p posiada tryb pracy, w którym automatycznie wyszukuje pozycjê dotycz±c± u¿ytkownika, który go wywo³a³ i konfiguruje liniê szeregow± jako po³±czenie SLIP wed³ug parametrów jakie znalaz³ w pliku /etc/diphosts. Ten tryb pracy jest w³±czany wtedy, gdy _d_i_p zostanie uruchominy jako program o nazwie _d_i_p_l_o_g_i_n. To jest w³a¶nie sposób wykrzystania _d_i_pa do stworzenia serwera SLIP. Nale¿y utworzyæ specjalne konta, z programem _d_i_p_l_o_g_i_n jako pow³ok± u¿ytkownika. Pierwsze co musisz zrobiæ to nastêpuj±ce dowi±zanie symboliczne: # ln -sf /usr/sbin/dip /usr/sbin/diplogin Nastêpnie nale¿y dodaæ odpowiednie pozycje do pliku /etc/passwd i /etc/diphosts. Aby skonfigurowaæ Linuxa jako serwer SLIP wykorzystuj±c do tego program _d_i_p wymaga utworzenia specjalnych kont do obs³ugi SLIPa z pow³ok± u¿ytkownika w postaci programu _d_i_p jako _d_i_p_l_o_g_i_n. Sugerowana konwencja nadawania nazw tym kontom zaleca aby pseudonim u¿ytkownika rozpoczyna³ siê wielk± liter± 'S', no. `Sfredm'. Przyk³adowa pozycja pliku /etc/passwd konta SLIP mo¿e wygl±daæ nastêpuj±co: Sfredm:ij/SMxiTlGVCo:1004:10:Fred:/tmp:/usr/sbin/diplogin ^^ ^^ ^^ ^^ ^^ ^^ ^^ | | | | | | \__ diplogin jako pow³oka u¿ytkownika | | | | | \_______ katalog domowy | | | | \____________ pe³na nazwa u¿ytkownika | | | \_________________ numer grupy (GID) | | \_____________________ numer u¿ytkownika (UID) | \_______________________________ zakodowane haslo \__________________________________________ pseudonim u¿ytkownika Po zalogowaniu siê u¿ytkownika (je¶li zostanie porawnie zweryfikowany) program login uruchomi polecenie _d_i_p_l_o_g_i_n. _d_i_p wywo³any jako _d_i_p_l_o_g_i_n zak³ada, ¿e zosta³ uruchomiony jako pow³oka u¿ytkownika. Piersze co robi, to korzysta z funkcji _g_e_t_u_i_d_(_) pobieraj±c identyfikator wywo³uj±cego go u¿ytkownika. Nastêpnie przeszukuje /etc/diphosts w poszukiwaniu pierwszej pozycji, która pasuje do zdobytego identyfikatora lub wykorzystywanego urz±dzenia _t_t_y, a nastêpnie odpowiednio siê konfiguruje. Decyduj±c czy u¿ytkownik powinien mieæ w³asn± pozycjê w pliku /etc/diphosts, czy powinien korzystaæ z konfiguracji domy¶³nej, mo¿esz budowaæ serwer, który korzysta zarówno z dynamicznego i statycznego przydzia³u adresów IP. _d_i_p automatycznie doda pozycjê _P_r_o_x_y_-_A_R_P je¶li zostanie wywo³any jako _d_i_p_l_o_g_i_n. Nie musisz siê martwiæ rêcznym dodawaniem tych pozycji. 66..2266..22..11.. KKoonnffiigguurraaccjjaa pplliikkuu //eettcc//ddiipphhoossttss /etc/diphosts jest wykorzystywany przez _d_i_p do wyszukiwania konfiguracji dla ³±cz±cych siê komputerów. Mog± to byæ pozycje dotycz±ce zarówno komputerów ³±cz±cych siê z twoim Linuxem, lecz równie dobrze mog± to byæ pozycje dotycz±ce komputerów, z którymi ³±czy siê twój Linux. Ogólny format pliku /etc/diphosts wygl±da nastêopuj±co: .. Suwalt::145.71.34.1:145.71.34.2:255.255.255.0:SLIP uwalt:CSLIP,1006 ttyS1::145.71.34.3:145.71.34.2:255.255.255.0:Dynamic ttyS1:CSLIP,296 .. Poszczególne pola oznaczaj±: 1. pseudonim u¿ytkownika: identyfikator zwaracany przez getpwuid(getuid()) lub nazwa terminala 2. niewykorzystane: zgodno¶æ z formatem passwd 3. adres zdaknt: nazwa (adres IP) ³acz±cego siê z nami komputera 4. adres lokalny: nazwa (adres IP) naszego serwera 5. netmaska: nemaska w notacji dziesiêtnej 6. komentarz: mo¿esz tu wstawiæ co chcesz 7. protokó³: Slip, CSlip itp. 8. MTU: liczba Przyk³ady pozycji pliku /etc/net/diphosts dla komputerów ³±cz±cych siê z nami: Sfredm::145.71.34.1:145.71.34.2:255.255.255.0:SLIP uwalt:SLIP,296 definuj±cej po³±czenie SLIP miêdzy naszym serwerem, a komputerem, który otrzyma adres 145.71.34.1, parametr MTU po³±czenia bêdzie wynosi³ 296, lub Sfredm::145.71.34.1:145.71.34.2:255.255.255.0:SLIP uwalt:CSLIP,1006 definiuj±cej po³±czenie cSLIP z komputerem, który otrzyma adres 145.71.34.1. parametr MRU po³±czenia wynosi³ 1008. Therefore, all users who you wish to be allowed a statically allocated dial-up IP access should have an entry in the /etc/diphosts and if you want users who call a particular port to have their details dynamically allocated you must have an entry for the tty device and do not configure a user based entry. You should remember to configure at least one entry for each tty device that your dialup users use to ensure that a suitable configuration is available for them regardless of which modem they call in on. When a user logs in, they will receive a normal login and password prompt, at which they should enter their SLIP-login userid and password. If they check out ok, then the user will see no special messages, they should just change into SLIP mode at their end and then they should be able to connect ok and be configured with the parameters from the diphosts file. 66..2266..33.. SSeerrwweerr SSLLIIPP kkoorrzzyyssttaajj±±ccyy zz ppaakkiieettuu _d_S_L_I_P.. Matt Dillon <dillon@apollo.west.oic.com> stworzy³ pakiet, który s³u¿y nie tylko do inicjowania po³±czenia z serwerem, ale równie dobrze mo¿e obs³ugiwaæ po³±czenia przychodz±ce. Jest to kombinacja ma³ych programów i skryptów zarz±dzaj±cych dla ciebie po³±czeniem. Musisz mieæ zainstalowan± pow³okê _t_c_s_h poniewa¿ przynajmniej jeden ze skryptów jej wymaga. Matt dostarcza binarn± kopiê programu _e_x_p_e_c_t, poniewa¿ wykorzystuje go inny ze skryptów. Prawdopodobnie zmuszenie pakietu do pracy bêdzie od ciebie wymaga³o trochê do¶wiadczenia w obchodzeniu siê z programem _e_x_p_e_c_t, lecz niech ciê to nie odstrêcza. Matt napisa³ dobry zestaw instrukcji instalacyjnych zgromadzonych w pliku README. Nie bêdê ich tutaj powtarza³. Pakiet _d_S_L_I_P mo¿esz pobraæ bezpo¶redni ze ¿ród³a: aappoolllloo..wweesstt..ooiicc..ccoomm /pub/linux/dillon_src/dSLIP203.tgz lub z: ssuunnssiittee..uunncc..eedduu /pub/Linux/system/Network/serial/dSLIP203.tgz Przeczytaj plik README i dodaj odpowiednie pozycje do pliku /etc/passwd i /etc/group zzaanniimm wydasz polecenie make install. 66..2277.. OObbss³³uuggaa pprroottookkoo³³uu SSTTRRIIPP ((SSttaarrmmooddee RRaaddiioo IIPP)) Urz±dzenia STRIP nosz± nazwy `st0', `st1', itd. OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Network device support ---> [*] Network device support .... [*] Radio network interfaces < > STRIP (Metricom starmode radio IP) STRIP to protokó³ zaprojektowany specjalnie dla radiowych modemów Metricom na uniwersystecie w Stanford w ramach projektu badawczego nosz±cego nazwê MosquitoNet Project <http://mosquitonet.Stanford.EDU/mosquitonet.html>. Zajdziesz tam mnóstwo ciekawych informacji, nawet je¶lo nie jeste¶ bezpo¶rednio zainteresowany projektem. Modemy Metrikom przy³±cza siê przez port szeregowy komputera, posiadaj± szerokie spektrum technologiczne i s± zdolne do pracy z prêdko¶ci± zbli¿on± do 100kbps. Informacje na temat samych modemów Metricom jest dostêpna tutaj: Metricom Web Server <http://www.metricom.com/>. W chwili obecnej standardowe narz±dzia sieciowe nie obs³uguj± drajwera STRIP. Musisz zdobyæ specjalistyczne narzêdzia dostêpne na serwerze www projektu MosquitoNet. Szczegó³y na temat niezbêdnego oprgoramowania znajdziesz tutaj: MosquitoNet STRIP Page <http://mosquitonet.Stanford.EDU/strip.html>. Konfiguracja sieci pracuj±cych z drejwerem STRIP polega na wykorzystaniu zmodyfikowanego programu _s_l_a_t_t_a_c_h, które ustawia tryb pracy linii szeregowej na STRIP, a nastêpnie na konfiguracji powsta³ego urz±dzenia `st[0-9]' w taki sam sposón, jak gdyby by³a to zwyk³a karta ethernetowa. Z jednym wyj±tkiem, z przyczyn technicznych STRIP nie obs³uguje protoko³u ARP, dlatego musisz rêcznie skonfigurowaæ tabelê ARP dla wszystkich komputerów w twojej podsieci. Co nie powinno sprawiæ wiêkszego k³opoty=u. 66..2288.. TTookkeenn RRiinngg Urz±dzenia Token Ring nosz± nazwy `tr0', `tr1' itd. Token Ring jest standardem sieci LAN opracowanym przez IBM, który unika kolizji wprowadzaj±c mechanizm pozwalaj±cy na transmisjê danych w jednej chili tylko jednej stacji przy³±czonej do sieci. "Token" w danej chwili mo¿e nale¿ej tylko do jednej stacji i to w³a¶nie ta stacja, która go posiada jest uprawniona do nadawania inforamcji. Po zakoñczonej transmisji przekazuje "Token" nastêpnej stacji. Przechodzi kolejno pomiêdzy wszystkimi aktywnymi koñcówkami sieci. St±d nazwa "Token Ring". OOppccjjee kkoonnffiigguurraaccjjii jj±±ddrraa: Network device support ---> [*] Network device support .... [*] Token Ring driver support < > IBM Tropic chipset based adaptor support Konfiguracja urz±dzeñ token ring jest identyczna, jak konfiguracja urz±dzeñ ethernetowych, z dok³adno¶ci± do nazwy urz±dzenia podlegaj±cego konfiguracji. 66..2299.. XX..2255 X.25 to obwodowy protokó³ komutacji pakietów zdefiniwany w C.C.I.T.T. (organizacji standaryzacyjnej uznawanej przez firmy telekomunikacyjne wiêkszo¶ci krajów ¶wiata. Ca³y czas trwaj± pracê nad implementacj± X25 u LAPB i najnowsze wersje j±dra 2.1.* zawieraj± kod odzwierciedlaj±cy aktualny stan prac. Jonathon Naylor jsn@cs.nott.ac.uk przewodzi grupie rozwijaj±cej to oprogramowanie i opiekuje siê list± utworzon± do dyskusji na tematy dotycz±ce X25 i Linuxa. Aby siê na ni± zapisaæ nale¿y na adres majordomo@vger.rutgers.edu napisaæ list o tre¶ci "subscribe linux- x25". Wczesne wersje narzêdzi konfiguracyjnych mo¿na uzyskac z archiwum ftp ftp.cs.nott.ac.uk <ftp://ftp.cs.nott.ac.uk/jsn/>. 66..3300.. WWaavveeLLaann CCaarrdd Urz±dzenia Wavelan nosz± nazwy `eth0', `eth1', itd. OOppccjjee kkoommppiillaaccjjii jj±±ddrraa: Network device support ---> [*] Network device support .... [*] Radio network interfaces .... <*> WaveLAN support Karty WaveLan to szerokopasmowe sieciowe karty bezprzewodowe. S± bardzo podobne do kart ethernetowych i praktycznie w wiêkszo¶ci s± konfigurowane w taki sam sposb. Wiêcej informacji na temat kart WaveLan znajdziesz na stronie Wavelan.com <http://www.wavelan.com/>. 77.. KKaabbllee ii ookkaabblloowwaanniiee Ci z was, którzy posiadaj± odpowiednie narzêdzia mog± chcieæ zrobiæ w³asne kable do po³±czenia ze sob± dwóch Linuxów. Poni¿sze schematy powinny wam w tym pomóc. 77..11.. SSzzeerreeggoowwyy kkaabbeekk bbeezzmmooddeemmoowwyy ((SSeerriiaall NNUULLLL MMooddeemm ccaabbllee)) Nie wszystkie kable bezmodemowe s± takie same. Du¿o kabli bezmodemowych oszukuje twój komputer, tak aby my¶la³, ¿e wszystkie potrzebne sygna³y s± obecne i zamienia ze sob± kana³y nadawania i idbioru danych. Taki kabel bêdzie dzia³a³ poprawnie, ale musisz stosowaæ softwareowe sterowanie przep³ywem danych (XON/XOFF), które jest znacznie mniej wydajne od sterowania sprzêtowego. Poni¿szy schemat przedstawia kabel umo¿liwiajacy transmisjê ze sprzêtowym sterowaniem przep³ywem danych (RTC/CTS). Pin Name Pin Pin Tx Data 2 ----------------------------- 3 Rx Data 3 ----------------------------- 2 RTS 4 ----------------------------- 5 CTS 5 ----------------------------- 4 Ground 7 ----------------------------- 7 DTR 20 -\--------------------------- 8 DSR 6 -/ RLSD/DCD 8 ---------------------------/- 20 \- 6 77..22.. KKAAbbeell ppoorrttuu rróówwnnoolleegg³³eeggoo ((kkaabbeell PPLLIIPP)) Je¶li zamierzasz korzystaæ z protoko³u PLIP, to kabel wykonany wg. poni¿szego schematu bêdzie dzia³a³ niezale¿nie od rodzaju posiadanego portu równoleg³ego. Pin Name pin pin STROBE 1* D0->ERROR 2 ----------- 15 D1->SLCT 3 ----------- 13 D2->PAPOUT 4 ----------- 12 D3->ACK 5 ----------- 10 D4->BUSY 6 ----------- 11 D5 7* D6 8* D7 9* ACK->D3 10 ----------- 5 BUSY->D4 11 ----------- 6 PAPOUT->D2 12 ----------- 4 SLCT->D1 13 ----------- 3 FEED 14* ERROR->D0 15 ----------- 2 INIT 16* SLCTIN 17* GROUND 25 ----------- 25 Uwagi: · Nie przy³±czaj nigdzie igie³ oznaczonych gwiazdk± `*'. · Dotakowe uziemienie znajduje siê na ig³ach 18,19,20,21,22,23 i 24. · Je¶³i u¿ywany przez ciebie kable posiada metalowy ekran, to powinien on byæ po³±czony do metalowej wtyczki DB-25, ale ttyyllkkoo zz jjeeddnneejj ssttrroonnyy. OOssttrrzzee¿¿eenniiee:: kkaabbeell zzee ¼¼llee wwyykkoonnaannyymmii ppoo³³±±cczzeenniiaammii mmoo¿¿ee ffiizzyycczznniiee zznniisszzcczzyyææ kkaarrttêê kkoonnttrroolloorraa ttwwoojjeeggoo kkoommppuutteerraa... B±d¼ bardzo ostro¿ny i dwukrotnie sprawdzaj ka¿de po³±czenie, aby nie naraziæ siê na niepotrzebny ból g³owy lub atak serca. 77..33.. OOkkaabblloowwaanniiee eetthheerrnneettoowwee 1100bbaassee22 ((cciieennkkii kkoonncceennttrryykk)) 10base2 jest standardem okablowania ethernetowego wykorzystuj±cego 52omowy kabel koncentryczny o ¶rednicy ok 5mm. £±cz±c ze sob± komputery za pomoc± okablowania 10base2 nale¿y pamiêtaæ o kilku zasadach. Po pierwsze musisz mieæ terminatory na oobbuu kkooññccaacchh kabla. Terminator to opornik o oporni¶ci 52 omy, zapewniaj±cy absorbjê sygna³u i zapobiegaj±cy jego odbiciom w momencie osi±gniêcia koñca kabla. Bez za³o¿onyc terminatorów, mo¿e siê okazaæ, ¿e siec nie jest pewna lub w ogóle nie nadaje siê do pracy. Zwykle posczególne komputery pod³±cza siê do kabla z pomoc± 'trójników'. Dlatego tak zbudowana sieæ wygl±da mniej wiêcej tak: |==========T=============T=============T==========T==========| | | | | | | | | ----- ----- ----- ----- | | | | | | | | ----- ----- ----- ----- gdzie `|' oznacza terminator na k±zdym zakoñczeniu kabla, `======' oznacza kabel koncentryczny, a `T' oznaczj± trójniki. Kabel ³±cz±cy trójnik z komputerem powinien byæ jak najkrótszy, najlepiej, gdy trójnik jest wpiêty bezpo¶rednio na kartê ethernetow± komputera. 77..44.. SSkkrrêêttkkaa ((TTwwiisstteedd PPaaiirr EEtthheerrnneett CCaabbllee)) Je¶li chcesz po³±czyæ ze sob± tylko dwie karty ethernetowe przez skrêtkê, to nie potrzebujesz ¿adnego koncentratora (hub'a). Schemat wykonania potrzebnego kabla znajdziesz w Ethernet-HOWTO <Ethernet- HOWTO.html> 88.. SSppiiss ssttoossoowwaannyycchh tteerrmmiinnóóww Poni¿sza lista zawiera najwa¿niejsze z terminów wykorzystywanych w tym dokumencie. AARRPP Skrót pochodz±cy od nazwy _A_d_d_r_e_s_s _R_e_s_o_l_u_t_i_o_n _P_r_o_t_o_c_o_l, okre¶la sposób przyporz±dkowywania adresów IP adresom sprzêtowym kart ethernetowych. AATTMM Skrót pochodz±cy od nazwy _A_s_y_n_c_h_r_o_n_o_u_s _T_r_a_n_s_f_e_r _M_o_d_e. Sieci ATM przesy³±j± dane w pakietach o ustalonej d³ugo¶ci. ATM jest technologi± sieci pakietowych z komutacj± kana³ów. kklliieenntt Jest to zwykle oprogramwoanie znajduj±ce siê po tej samej stronie po³±czenia co u¿ytkownik. S± oczywi¶æie wyj±tki od tej regu³y, np. w przypadku X11 to w³a¶nie serwe jest po stronie u¿ytkownika, a klient jest to aplikacja wykonuj±ca siê na zdalnej maszynie. Klient ot oprogramowanie lub koñsówka systemu korzystaj±ca z us³ug oferowanych przez serwer. W przypadku po³aczeñ _p_e_e_r _t_o _p_e_e_r (ka¿dy z ka¿dym) jakimi s± _s_l_i_p lub _p_p_p za klienta przyjmuje siê ten koniec po³±czenia, który je zainicjowa³, a drugi koniec nosi nazwê serwera. ddaattaaggrraamm Datagram jest pakietem informacji, który prócz danych posiada równie¿ nag³ówki zawieraj±ce adresy nadawcy i adresata. Jest podstawow± jednostl± przesy³ania informacji w sieci IP. Czêsto jest zastêpowany s³owem 'pakiet'. DDLLCCII DLCI oznacza skrót Data Link Connection Identifier, jest stosowany do jednoznacznej identyfikacji virtualnego po³±czenie punkt-punkt przez Frame Relay. DLCI s± zwykle przydzielane przez dostawcê us³ugi Frame Relay. FFrraammee RReellaayy Frame Relay oznacza technologiê sieciow± przeznaczon± przede wszystkim do przenosznia ruchu charaktyryzuj±cego siê neregularnym natê¿eniem lub o sporadycznej charakterysyce. Koszty sieci s± redukowane przez wspó³dzielenie no¶no¶ci sieci przez wielu u¿ytkowników, przu za³o¿eniu, ¿e ka¿dy z nich generuje najwiêkszy ruch o innej porze. AAddrreess sspprrzzêêttoowwyy Numer który jednoznacznie identyfikuje komputer na poziomie wartstwy fizycznej sieci (na poziome warstwy no¶nika). Przyk³adem takich adresów jest _a_d_r_e_s _k_a_r_t_y _e_t_h_e_r_n_e_t_o_w_e_j lub _a_d_r_e_s _A_X_._2_5. IISSDDNN ISDN oznacza skrót _I_n_t_e_g_r_a_t_e_d _S_e_r_v_i_c_e_s _D_e_d_i_c_a_t_e_d _N_e_t_w_o_r_k. ISDN umo¿liwia ujednolicony sposób dostarczania u¿ytkownikom informacji g³osowej lub cyfrowej. Technicznie ISDN jest sieci± danych z komutacj± kana³ów. IISSPP Jest to skrót Internet Service Provider (dostawca internetu). S± to organizacje lub firmy, które umo¿liwiaj± ludziom dostêp do Internetu, aaddrreess IIPP Jest to numer jednoznacznie identyfikuj±cy komputer w sieci TCP/IP. Adres sk³ada siê z 4rech bajtów i zwykle jest przedstawiany w tzw notacji dziesiêtnej, czyli takiej, w której ka¿du bajt jest reprezentowany przez liczbê w systemie dziesiêtnym, przy czym poszczególne bajty s± rozdzielone znakiem '.'. MMSSSS Maximum Segment Size (_M_S_S) oznacza maksymalny rozmiar porji danych, która mo¿e zostaæ przes³ana za jednym razem. Aby zapobiec lokalnej fragmentacji pakietów MSS powinno siê równaæ MTU-na³ówki IP. MMTTUU Maximum Transmission Unit (_M_T_U) to parametr, który okre¶la maksymalny rozmiar datagramu, jaki mo¿e zostaæ przes³any przez inerfejs, bez konieczno¶ci podzia³u go na mnijesze kawa³ki. MTU powinno byæwiêsze ni¿ najwiêkszy datagram jaki ma byc przesy³any w jednym kawa³ku. Pamietaj, ¿e ten parametr steruje jedyni lokaln± fragmentacja pakietów. Mo¿e siê zdarzyæ, ¿e które¶ z po³±czeñ le¿±cych na trasie do celu bêdzie mia³o mnijejsze MTU, a wtedy pakiet zostanie podzielony na kwaw³ki w tym w±skim garde. Standartowymi wielko¶ciami s± 1500 dla kart ethernetowych,576 dla interfejsu SLIP. ttrraassaa _t_r_a_s_a osnacza ¶cie¿kê jak± przebywaj± datagramy wêdrujac od nadawcy do odbiorcy. sseerrwweerr Oprogramowanie lub system po przeciwnej stronie po³±czenia w stosunku do pozycji u¿ytkownika. Serwer udostêpnia pewne us³ugi jednemu lub wiêcej klientom. Mog± to byæ us³ugi typu _f_t_p, _n_f_s lub _d_n_s. W przypaku po³±czeñ tyu _p_e_e_r_-_t_o_-_p_e_e_r (ka¿dy z ka¿dym) za serwer przyjmuje siê ten koniec po³±czenia, który odpowiada na wezwanie, koniec rozpoczynaj±cy sesje nosi nazwê klienta. wwiinnddooww _O_k_i_e_n_k_o to najwiêksza liczba bajtów jak± w danej chwili odbiorca jest w stanie przyj±c. 99.. LLiinnuuxx uu ddoossttaawwccóóww IInntteerrnneettuu ?? Je¶li jeste¶ zainteresowany wykorzystaniem Linuxa jako dostawca Internetu polecam stronê Linux ISP homepage <http://www.anime.net/linuxisp/>. Zawiera listê odno¶ników do informacji, które mog± ciê zainteresowaæ. 1100.. PPooddzziiêêkkoowwaanniiaa Chcia³bym podziekowaæ nastêpuj±cym ludziom, za ich wk³ad w powstanie tego dokumentu (kolejnosc nie ma¿adnego znaczenia): Axel Boldt, Arnt Gulbrandsen, Gary Allpike, Cees de Groot, Alan Cox, Jonathon Naylor. 1111.. CCooppyyrriigghhtt.. NET-3-HOWTO, informacja na temat instalacji i konfiguracji oprogramowania sieciowego pod Linuxem. Copyright (c) 1997 Terry Dawson. To jest darmowe oprogramowanie, mo¿esz je rozpowszechniaæ i modyfikowaæ na zasadach zgodnych z licencj± GNU General Public License wydan± przez Freee Software Foundation w wersji 2 (lub jak wolisz) pó¼niejszej. Ten program jest rozpowszechniany w nadziei, ¿e bedzie u¿yteczny, lecz BEZ ¯ADNYCH GWARANCJI; nawet bez gwarancji zdatno¶ci HANDLOWEJ lub U¯YTECZNO¦CI W KONKRETNYM ZASTOSOWANIU. Wiecej szczegó³ów w tek¶cie GNU General Public License. Wraz z tym programem powiniene¶ otrzymaæ kopie Licencji GNU General Public License, je¶li nie napisz do: Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 1122.. OOdd tt³³uummaacczzaa To t³umaczenie zawiera mnóstwo ró¿nego rodzaju b³êdów. Postanowie³em je udostêpniæ w takim stanie, poniewa¿ nie mam czasu na dok³adne sprawdzenie tego dokumentu (a jest tego troche), a szkoda mi trzymaæ to na dysku, czekaj±c na Woln± Chwile (TM), która byæ mo¿e nigdy nie nadejdzie. Dlatego bedê wdziêczny za ka¿d±, nawet najdrobniejsz± uwagê. Najnowsz± wersjê tego t³umaczenia znajdziesz tutaj: http://www.ippt.gov.pl/pub/Linux/JTZ/html/NET-3-HOWTO.pl.html <http://www.ippt.gov.pl/pub/Linux/JTZ/html/NET-3-HOWTO.pl.html>. piotr.pogorzelski@ippt.gov.pl