460
Spis treœci Spis treœci Wstêp ................................................ XIII Rozdzia³: 1 Wprowadzenie do sieci ............................... 1 Historia ....................................................... 1 Sieci TCP/IP ..................................................... 2 Sieci UUCP ..................................................... 12 Sieæ w Linuksie ................................................... 13 Utrzymywanie systemu.............................................. 15 Rozdzia³: 2 Wybrane problemy sieci TCP/IP .......................... 19 Interfejsy sieciowe ................................................. 19 Adresy IP ...................................................... 20 Rozwi¹zywanie adresów ............................................. 22 Ruting IP ...................................................... 23 Internetowy protokó³ komunikatów kontrolnych (ICMP) ........................... 28 Rozwi¹zywanie nazwy hosta ........................................... 29 Rozdzia³: 3 Konfigurowanie sprzêtu sieciowego........................ 31 Konfigurowanie j¹dra ............................................... 34 Wycieczka po urz¹dzeniach sieciowych Linuksa ................................ 40 Instalowanie Ethernetu .............................................. 41 Sterownik PLIP .................................................. 44 Sterowniki PPP i SLIP ............................................... 46 Inne typy sieci ................................................... 46 Rozdzia³ 4: Konfigurowanie urz¹dzeñ szeregowych...................... 47 Oprogramowanie komunikacyjne do po³¹czeñ modemowych ......................... 47 Wprowadzenie do urz¹dzeñ szeregowych ................................... 48 Dostêp do urz¹dzeñ szeregowych ........................................ 49 Urz¹dzenia szeregowe .............................................. 52 U¿ywanie narzêdzi konfiguracyjnych ...................................... 53 Urz¹dzenia szeregowe i monit login: ...................................... 57 Rozdzia³ 5: Konfigurowanie sieci TCP/IP ............................ 61 Montowanie systemu plików /proc ....................................... 62 Instalowanie plików binarnych.......................................... 62 Ustalanie nazwy hosta .............................................. 63 Przypisywanie adresu IP ............................................. 63 Tworzenie podsieci ................................................ 64 Tworzenie plików hosts i networks ....................................... 65 Konfigurowanie interfejsu dla IP ......................................... 66 Wszystko o ifconfig ................................................ 74 Polecenie netstat .................................................. 77 Sprawdzanie tablic ARP ............................................. 80 Rozdzia³ 6: Us³ugi nazewnicze i konfigurowanie resolvera .................. 83 Biblioteka resolvera ................................................ 84 Jak dzia³a DNS ................................................... 90 Eksploatacja named ................................................ 98

Linux to ta książka

Embed Size (px)

Citation preview

Spis treciSpis treci

Wstp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XIII Rozdzia: 1 Wprowadzenie do sieci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1Historia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Sieci TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Sieci UUCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Sie w Linuksie. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Utrzymywanie systemu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Rozdzia: 2

Wybrane problemy sieci TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . 19. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 20 22 23 28 29

Interfejsy sieciowe . . . . . . . . . . . . . . . . . . . . . . . Adresy IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rozwizywanie adresw . . . . . . . . . . . . . . . . . . . Ruting IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . Internetowy protok komunikatw kontrolnych (ICMP) . Rozwizywanie nazwy hosta. . . . . . . . . . . . . . . . .

Rozdzia: 3

Konfigurowanie sprztu sieciowego. . . . . . . . . . . . . . . . . . . . . . . . 31. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 40 41 44 46 46

Konfigurowanie jdra . . . . . . . . . . . . . . . . Wycieczka po urzdzeniach sieciowych Linuksa . Instalowanie Ethernetu . . . . . . . . . . . . . . . Sterownik PLIP . . . . . . . . . . . . . . . . . . . Sterowniki PPP i SLIP . . . . . . . . . . . . . . . . Inne typy sieci . . . . . . . . . . . . . . . . . . . .

Rozdzia 4:

Konfigurowanie urzdze szeregowych. . . . . . . . . . . . . . . . . . . . . . 47. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 48 49 52 53 57

Oprogramowanie komunikacyjne do pocze modemowych Wprowadzenie do urzdze szeregowych . . . . . . . . . . Dostp do urzdze szeregowych . . . . . . . . . . . . . . . Urzdzenia szeregowe . . . . . . . . . . . . . . . . . . . . . Uywanie narzdzi konfiguracyjnych . . . . . . . . . . . . . Urzdzenia szeregowe i monit login: . . . . . . . . . . . . .

Rozdzia 5:

Konfigurowanie sieci TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 62 63 63 64 65 66 74 77 80

Montowanie systemu plikw /proc Instalowanie plikw binarnych. . . Ustalanie nazwy hosta . . . . . . . Przypisywanie adresu IP . . . . . . Tworzenie podsieci . . . . . . . . . Tworzenie plikw hosts i networks Konfigurowanie interfejsu dla IP . . Wszystko o ifconfig . . . . . . . . . Polecenie netstat . . . . . . . . . . . Sprawdzanie tablic ARP . . . . . .

Rozdzia 6:

Usugi nazewnicze i konfigurowanie resolvera . . . . . . . . . . . . . . . . . . 83

Biblioteka resolvera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 Jak dziaa DNS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 Eksploatacja named . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

VI

Spis treci

Rozdzia 7:

IP cza szeregowego . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 114 116 117 122

Wymagania oglne. . . . . . . . Dziaanie SLIP-a . . . . . . . . . Korzystanie z sieci prywatnych . Korzystanie z polecenia dip . . . Dziaanie w trybie serwera . . .

Rozdzia 8:

Protok punkt-punkt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 127 128 129 132 135 137 137 141 142

PPP w Linuksie . . . . . . . . . . . . . . . . . . . . Eksploatacja pppd . . . . . . . . . . . . . . . . . . Uywanie plikw opcji. . . . . . . . . . . . . . . . Stosowanie chat do automatycznego dzwonienia . Opcje konfiguracyjne IP . . . . . . . . . . . . . . . Opcje sterowania czem. . . . . . . . . . . . . . . Uwagi na temat bezpieczestwa . . . . . . . . . . Uwierzytelnianie w PPP . . . . . . . . . . . . . . . Debugowanie twojej konfiguracji PPP . . . . . . . Bardziej zaawansowana konfiguracja PPP. . . . .

Rozdzia 9 :

Firewall TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 149 151 152 154 155 162 173 182 184 186

Metody ataku . . . . . . . . . . . . . . . . . Co to jest firewall . . . . . . . . . . . . . . . Co to jest filtrowanie IP. . . . . . . . . . . . Skonfigurowanie Linuksa w roli firewalla . Trzy sposoby realizacji filtrowania . . . . . Oryginalny firewall IP (jdra 2.0) . . . . . . acuchy firewalla IP (jdra 2.2) . . . . . . Netfilter i tabele IP (jdra 2.4) . . . . . . . . Operowanie bitem TOS . . . . . . . . . . . Testowanie konfiguracji firewalla . . . . . Przykadowa konfiguracja firewalla . . . .

Rozdzia 10: Liczenie ruchu IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195Konfigurowanie jdra do liczenia ruchu IP . . . Konfigurowanie liczenia ruchu IP . . . . . . . . Wykorzystywanie wynikw zliczania ruchu IP . Zerowanie licznikw. . . . . . . . . . . . . . . . Usuwanie zestaww regu. . . . . . . . . . . . . Bierne zbieranie danych o ruchu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 196 202 203 204 204

Rozdzia 11: Maskowanie IP i translacja adresw sieciowych . . . . . . . . . . . . . . . . 205Skutki uboczne i dodatkowe korzyci . . . . . . Konfigurowanie jdra do maskowania IP . . . . Konfigurowanie maskowania IP . . . . . . . . . Obsugiwanie przeszukiwania serwerw nazw. Wicej na temat translacji adresw sieciowych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 208 209 211 211

Rozdzia 12: Wane funkcje sieciowe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213Superserwer inetd . . . . . . . . . . . . . . . . . . . . Funkcja kontroli dostpu tcpd. . . . . . . . . . . . . . Pliki services i protocols . . . . . . . . . . . . . . . . . Zdalne wywoanie procedur . . . . . . . . . . . . . . Konfigurowanie zdalnego logowania i uruchamiania . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 216 218 219 220

Spis treci

VII

Rozdzia 13: System informacji sieciowej . . . . . . . . . . . . . . . . . . . . . . . . . . . 229Poznawanie NIS-a . . . . . . . . . . . . . NIS kontra NIS+ . . . . . . . . . . . . . . NIS strona klienta. . . . . . . . . . . . . Eksploatowanie serwera NIS . . . . . . . Bezpieczestwo serwera NIS . . . . . . . Konfigurowanie klienta NIS z GNU libc . Wybr odpowiednich map . . . . . . . . Korzystanie z map passwd i group . . . . Uywanie NIS-a z obsug hase shadow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230 233 233 234 235 236 238 240 242

Rozdzia 14: Sieciowy system plikw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243Przygotowanie NFS-a . . . . . Montowanie wolumenu NFS . Demony NFS . . . . . . . . . . Plik exports . . . . . . . . . . . Serwer NFSv2 oparty na jdrze Server NFSv3 oparty na jdrze . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244 245 247 248 250 251

Rozdzia 15: IPX i system plikw NCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253Xerox, Novell i historia. . . . . . . . . . . . . . . IPX i Linux . . . . . . . . . . . . . . . . . . . . . Konfigurowanie jdra do obsugi IPX-a i NCPFS Konfigurowanie interfejsw IPX . . . . . . . . . Konfigurowanie rutera IPX . . . . . . . . . . . . Montowanie zdalnych wolumenw NetWare . . Kilka innych narzdzi IPX . . . . . . . . . . . . . Drukowanie do kolejki NetWare . . . . . . . . . Emulacja serwera NetWare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 254 256 256 259 263 266 267 270

Rozdzia 16: Zarzdzanie UUCP Taylora . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271Przesyanie i zdalne wykonywanie w UUCP . . . . . . . . . . . . . . . Pliki konfiguracyjne UUCP . . . . . . . . . . . . . . . . . . . . . . . . . Kontrola dostpu do funkcji UUCP . . . . . . . . . . . . . . . . . . . . . Konfigurowanie systemu do przyjmowania pocze komutowanych . Protokoy niskiego poziomu w UUCP . . . . . . . . . . . . . . . . . . . Rozwizywanie problemw. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273 275 289 292 295 297

Rozdzia 17: Poczta elektroniczna . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301Co to jest wiadomo pocztowa . Jak jest dostarczana poczta. . . . Adresy e-mail . . . . . . . . . . . Jak dziaa ruting poczty . . . . . Konfigurowanie elma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302 305 306 308 313

Rozdzia 18: Sendmail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317Wprowadzenie do sendmaila . . . . . . . Instalacja sendmaila . . . . . . . . . . . . Przegld plikw konfiguracyjnych . . . . Pliki sendmail.cf i sendmail.mc . . . . . . Generowanie pliku sendmail.cf . . . . . . Interpretacja i pisanie regu podstawiania Konfigurowanie opcji sendmaila . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317 317 318 319 324 324 330

VIIIUyteczne konfiguracje sendmaila Testowanie konfiguracji . . . . . . Eksploatowanie sendmaila . . . . Sztuczki i kruczki . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Spis treci. . . . . . . . . . . . 331 339 342 343

Rozdzia 19: Exim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347Eksploatowanie Exima. . . . . . Jeeli twoja poczta nie dochodzi Kompilowanie Exima . . . . . . Tryby dostarczania poczty. . . . Rne opcje konfiguracyjne . . . Ruting i dostarczanie poczty . . Ochrona przed spamem . . . . . Konfigurowanie UUCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348 349 350 351 352 353 357 358

Rozdzia 20: Grupy dyskusyjne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361Historia Usenetu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361 Czym jest Usenet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362 Jak Usenet obsuguje grupy dyskusyjne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364

Rozdzia: 21 C News . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367Dostarczanie grup dyskusyjnych . . . Instalacja . . . . . . . . . . . . . . . . Plik sys. . . . . . . . . . . . . . . . . . Plik active . . . . . . . . . . . . . . . . Przetwarzanie wsadowe artykuw . Wygasanie grup dyskusyjnych . . . . Rne dodatkowe pliki . . . . . . . . Wiadomoci kontrolne . . . . . . . . . C News w rodowisku NFS . . . . . . Narzdzia i zadania administracyjne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367 369 371 374 375 378 380 382 384 385

Rozdzia 22: NNTP i demon nntpd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387Protok NNTP . . . . . . . . Instalowanie serwera NNTP Ograniczanie dostpu NNTP Autoryzacja NNTP . . . . . . Wsppraca nntpd z C News . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389 395 395 396 397

Rozdzia 23: Internet News . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399Pewne tajniki wewntrzne INN-a. . . . Przegldarki grup dyskusyjnych i INN Instalowanie INN-a . . . . . . . . . . . Podstawowe konfigurowanie INN-a . . Pliki konfiguracyjne INN-a . . . . . . . Eksploatowanie INN-a. . . . . . . . . . Zarzdzanie INN-em: polecenie ctlinnd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399 402 402 403 403 418 419

Rozdzia 24: Konfigurowanie przegldarki grup dyskusyjnych. . . . . . . . . . . . . . . . 425Konfigurowanie tina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426 Konfigurowanie trn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426 Konfigurowanie nn. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427

Spis treci

IX

Dodatek A: Dodatek B: Dodatek C: Dodatek D:

Przykadowa sie: browar wirtualny . . . . . . . . . . . . . . . . . . . . . . . 429 Przydatne konfiguracje kabli . . . . . . . . . . . . . . . . . . . . . . . . . . . 431 Linux Podrcznik administratora. Wydanie drugie*. Informacje o prawach autorskich . . . . . . . . . . . . . . . . . . . . . . . . 4330 SAGE: cech administratorw systemu. . . . . . . . . . . . . . . . . . . . . . 441

Indeks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

WstpWstp

Termin Internet zadomowi si ju na dobre w wielu jzykach, a mnstwo, skdind powanych ludzi, z radoci podruje po infostradzie. Dlatego mona powiedzie, e sieci komputerowe staj si ju czym tak zwykym jak telewizory i kuchenki mikrofalowe. Internet cieszy si niezwykym zainteresowaniem mediw, a studenci socjologii zaczynaj si specjalizowa w grupach dyskusyjnych Usenetu, rodowiskach elektronicznej rzeczywistoci wirtualnej i WWW, badajc w ten sposb now kultur internetow . Oczywicie sie istnieje z dawien dawna. czenie komputerw tak, aby tworzyy sieci lokalne, byo powszechne w przypadku maych instalacji, a gdy maszyny byy od siebie oddalone wykorzystywano cza telekomunikacyjne. Jednake szybki rozwj sieci oglnowiatowych da szans przyczenia si do globalnej wioski wielu zwykym uytkownikom komputerw oraz maym, niedochodowym organizacjom prywatnym. Wyranie spadaj ceny hostw internetowych z obsug poczty i grup dyskusyjnych przez dostp komutowany oraz ISDN, a pojawienie si DSL (Digital Subscriber Line) oraz technologii modemw kablowych niewtpliwie podtrzyma t tendencj. Jeeli mwimy o sieciach komputerowych, nie sposb nie wspomnie o Uniksie. Oczywicie Unix nie jest jedynym systemem operacyjnym, ktry moe pracowa w sieci, ani te nawet nie jest najpopularniejszym z nich, ale w biznesie sieciowym istnieje od dawna i z ca pewnoci bdzie istnia jeszcze przez jaki czas. Unix jest szczeglnie ciekawy dla zwykych uytkownikw dziki temu, e woono wiele wysiku w stworzenie dla PC darmowych uniksowych systemw operacyjnych, takich jak 386BSD, FreeBSD czy Linux. Linux jest, dystrybuowan bezpatnie odmian Uniksa, przeznaczon dla komputerw osobistych. Aktualnie dziaa na rnych maszynach, i na tych z procesami firmy Intel, z procesorami Motorola 680x0, (np. Commodore Amiga i Apple Macintosh); na maszynach Sun SPARC i Ultra-SPARC; na Alphach firmy Compaq; MIPS-ach; na PowerPC, czyli na nowej generacji komputerw Apple Macintosh, i na Strong-

XII

Wstp

ARM-ach, takich jak Netwinder firmy rebel.com czy palmtopy firmy 3Com. Linux zosta zaadaptowany take na pewne stosunkowo mao znane platformy, takie jak Fujitsu AP-1000 i IBM System 3/90. Aktualnie realizowane s adaptacje na inne interesujce architektury, a zadanie przeniesienia Linuksa do postaci zamknitego kontrolera take wyglda obiecujco. Linux rozwija si dziki zaangaowaniu duej grupy ochotnikw z Internetu. Projekt zosta zapocztkowany w 1990 roku przez Linusa Torvaldsa wwczas studenta fiskiego college'u w ramach zaj z systemw operacyjnych. Od tego czasu Linux urs do rangi penego klonu Uniksa, na ktrym mona uruchamia aplikacje tak rnorodne, jak programy do symulacji i modelowania, procesory tekstu, systemy rozpoznawania mowy, przegldarki WWW i mnstwo innego oprogramowania, wczajc w to rne doskonae gry. Wsppracuje z rnorodnym sprztem, a zawiera pen implementacj sieci TCP/IP, (cznie z protokoami SLIP i PPP oraz firewallami), pen implementacj protokou IPX, a take implementacje wielu funkcji oraz protokow, ktrych nie znajdziemy w adnym innym systemie operacyjnym. Linux jest wydajny, szybki i darmowy, a jego popularno na wiecie poza Internetem ronie w szybkim tempie. Sam system operacyjny Linux zosta objty licencj publiczn GNU, t sam, ktra jest uywana przez oprogramowanie tworzone przez Free Software (Foundation Fundacj Wolnego Oprogramowania). Licencja pozwala kademu na dystrybuowanie i modyfikowanie oprogramowania (bezpatnie lub dla zysku) dopty, dopki wszystkie modyfikacje i dystrybucje s rwnie bezpatnie udostpniane. Okrelenie wolne oprogramowanie oznacza wolno aplikacji, a nie wolno kosztw.

Po co i dla kogo jest ta ksikaNiniejsza ksika zostaa napisana po to, aby w jednym miejscu zebra informacje potrzebne administratorom sieci rodowiska Linux. Zarwno pocztkujcy, jak i zaawansowani uytkownicy powinni tu znale informacje potrzebne do wykonania wikszoci najwaniejszych zada administracyjnych, wymaganych do konfiguracji sieci w Linuksie. Temat tej ksiki sieci jest prawie nieograniczony, a wic oczywicie niemoliwoci jest opisanie wszystkiego i w kadym aspekcie. Podjlimy prb prezentacji wikszoci wanych i powszechnie spotykanych zada. Naszym zamierzeniem byo, aby ta ksika suya pomoc nawet pocztkujcym adeptom sieci linuksowych (take tym, ktrzy nie mieli jeszcze do czynienia z uniksopodobnym systemem operacyjnym), aby po jej lekturze mogli poprawnie skonfigurowa swoj sie w Linuksie. Istnieje wiele ksiek i innych rde informacji, ktre poruszaj tematy opisane w tej ksice (z maymi wyjtkami prawdziwie linuksowych funkcji, takich jak nowy interfejs firewala, ktry nie jest nigdzie indziej dobrze udokumentowany). Gdyby chcia si dowiedzie wicej, w poniszym podrozdziale zamieszczamy bibliografi.

rda informacji

XIII

rda informacjiJeeli jeste nowicjuszem w wiecie Linuksa, masz wiele do przejrzenia i przeczytania. Pomocne, aczkolwiek niekonieczne, jest posiadanie dostpu do Internetu. Przewodniki zespou Linux Documentation Project (Projekt Dokumentacji Linuksa LDP) Projekt Dokumentacji Linuksa to grupa ochotnikw, ktry opracowuj ksiki (przewodniki), dokumenty HOWTO, strony podrcznika elektronicznego na rne tematy: od instalacji po programowanie jdra. Publikacje LDP to midzy innymi: Linux Installation and Getting Started Ta ksika, napisana pod kierunkiem Matta Welsha; opisuje, jak zdoby, zainstalowa i uywa Linuksa. Zawiera wprowadzenie do Uniksa i informacje o administracji systemu, systemie X Window oraz sieci. Linux System Administration Guide Ta ksika, napisana przez Larsa Wirzeniusa i Joann Oja, jest oglnym przewodnikiem po administracji Linuksa i porusza takie tematy, jak tworzenie i konfigurowanie uytkownikw, wykonywanie kopii zapasowych systemu, konfigurowanie podstawowych pakietw i instalowanie oraz uaktualnianie oprogramowania. Linux System Administration Made Easy Ta ksika, napisana przez Steve'a Framptona, opisuje codzienne zadania administracyjne i zagadnienia zwizane z utrzymaniem Linuksa w odniesieniu do jego uytkownikw. Linux Programmers Guide Ta ksika, napisana przez B. Scotta Burketta, Svena Goldta, Johna D. Harpera, Svena van der Meera i Matta Welsha, bdzie interesujca dla tych, ktrzy chc tworzy aplikacje dla Linuksa. The Linux Kernel Ta ksika, napisana przez Davida A. Ruslinga, zawiera wprowadzenie do jdra Linuksa: opisuje jego budow oraz dziaanie. The Linux Kernel Module Programming Guide Ta ksika, napisana przez Ori Pomerantza, stanowi przewodnik wyjaniajcy, jak pisa moduy jdra Linuksa. W fazie tworzenia s kolejne podrczniki. Wicej informacji na temat LDP znajdziesz na stronach WWW pod adresem http://www.linuxdoc.org/ lub jednym z jego serwerw lustrzanych. Dokumenty HOWTO Dokumenty HOWTO powicone Linuksowi to szereg szczegowych opracowa omawiajcych bardzo rne aspekty systemu, takie jak instalacja i konfiguracja oprogramowania systemu X Window lub pisanie w asemblerze pod Linuksem. Generalnie znajduj si one w podkatalogu HOWTO orodkw FTP lub s dostpne na stronach WWW zawierajcych dokumenty Projektu Dokumentacji Linuksa. W pliku HOWTO-INDEX znajdziesz list tego, co jest dostpne.

XIV

Wstp

Mog ci si przyda: Installation HOWTO, opisujcy jak zainstalowa Linuksa na twoim komputerze, Hardware Compatibility HOWTO, zawierajcy list urzdze, o ktrych wiadomo, e dziaaj w Linuksie, oraz Distribution HOWTO, zawierajcy list sprzedawcw oprogramowania oferujcych Linuksa na dyskietkach lub na pytach CD-ROM. Czsto zadawane pytania na temat Linuxa (Linux Frequently Asked Questions), FAQ FAQ (The Linux Frequently Asked Questions with Answers) gromadzi rnorodne pytania i odpowiedzi na temat systemu. Jest to obowizkowa lektura dla kadego nowicjusza.

Dokumentacja dostpna przez FTPJeeli masz dostp do anonimowych serwerw FTP, moesz z nich pobra ca wspomnian tutaj dokumentacj Linuksa. Wyprbuj takie adresy jak metalab.unc.edu:/pub/Linux/docs i tsx-11.mit.edu/pub/linux/docs.

Dokumentacja dostpna przez WWWDostpnych jest wiele orodkw WWW zwizanych z Linuksem. Macierzysta strona Projektu Dokumentacji Linuksa znajduje si pod adresem http://www.linuxdoc.org/. OSWG (Open Source Writers Guild) jest projektem wykraczajcym poza Linuksa. OSWG, podobnie jak ta ksika, opowiada si za tworzeniem dokumentacji OpenSource. Witryna macierzysta OSWG znajduje si pod adresem http://www.oswg. org:8080/oswg. Obie powysze witryny zawieraj wersje hipertekstowe (i inne) wielu dokumentw zwizanych z Linuksem.

Dokumentacja dostpna odpatnieLiczne wydawnictwa i sprzedawcy oprogramowania publikuj prace stworzone w ramach Projektu Dokumentacji Linuksa. Dwaj przykadowi sprzedawcy to: Specialized Systems Consultants, Inc. (SSC) http://www.ssc.com/ P.O. Box 55549 Seattle, WA 98155-0549 1-206-782-7733 1-206-782-7191 (faks) [email protected] oraz Linux Systems Labs http://www.lsl.com/ 18300 Tara Drive Clinton Township, MI 48036 1-810-987-8807 1-810-987-3562 (faks) [email protected]

rda informacji

XV

Obie firmy sprzedaj kompendia dokumentw HOWTO i innej dokumentacji dotyczcej Linuksa w formie drukowanej. O'Reilly & Associates wydaje seri ksiek o Linuksie. Niniejsza ksika powstaa w ramach Projektu Dokumentacji Linuksa, ale wikszo zostaa napisana niezalenie. Nale do nich: Running Linux (wyd. pol.: Linux, Wydawnictwo RM, Warszawa 2000) Przewodnik po instalacji i uytkowaniu systemu, opisujcy, jak najlepiej wykorzysta komputer osobisty, pracujc w Linuksie. Learning Debian GNU/Linux Learning Red Hat Linux (wyd. pol.: Red Hat Linux, Wydawnictwo RM, Warszawa 2000) Ksiki bardziej podstawowe ni Running Linux. Zawieraj one popularne dystrybucje na pycie CD-ROM i informuj dokadnie, jak je skonfigurowa i jak z nich korzysta. Linux in Nutshell (wyd. pol.: Linux podrcznik uytkownika, Wydawnictwo RM, Warszawa 1999) Kolejna ksika z doskonaej serii podrcznik uytkownika. Daje wyczerpujcy opis poszczeglnych polece Linuksa.

Linux Journal and Linux MagazineLinux Journal i Linux Magazine to miesiczniki dla spoecznoci linuksowej, pisane i wydawane przez licznych linuksowych aktywistw. Poziom artykuw jest bardzo rny: od pyta nowicjuszy, po odpowiedzi dotyczce programowania jdra. Nawet jeeli masz dostp do grup dyskusyjnych Usenetu, te czasopisma s doskonaym sposobem, aby by na bieco ze sprawami spoecznoci Linuksa. Linux Journal jest najstarszym czasopismem i jest wydawany przez wspomniane wczeniej SSC, Incorporated. Czasopismo to moesz take znale w sieci WWW pod adresem http://www.linuxjournal.com/. Linux Magazine jest nowsz, niezalen publikacj. Macierzysty adres WWW tego czasopisma to http://www.linuxmagazine.com/.

Linuksowe grupy dyskusyjne UsenetuOto grupy dyskusyjne Usenetu powicone Linuksowi: comp.os.linux.announce Moderowana grupa dyskusyjna zawierajca zapowiedzi nowego oprogramowania, dystrybucji, raporty o bdach i nowinki z ycia spoecznoci Linuksa. Wszyscy uytkownicy Linuksa powinni czyta t grup. Propozycje mog by wysyane na adres [email protected]. comp.os.linux.help Oglne pytania i odpowiedzi na temat instalacji i uytkowania Linuksa. comp.os.linux.admin Dyskusje zwizane z administrowaniem systemu Linux.

XVI

Wstp

comp.os.linux.networking Dyskusje zwizane z sieci w Linuksie. comp.os.linux.development Dyskusje na temat tworzenia jdra Linuksa i samego systemu. comp.os.linux.misc Inne dyskusje, ktre nie pasuj do adnej z poprzednich kategorii. Istnieje rwnie kilka innych grup powiconych Linuksowi i prowadzonych w jzykach innych ni angielski, a nale do nich na przykad fr.comp.os.linux po francusku czy de.comp.os.linux po niemiecku.

Pocztowe listy dyskusyjne zwizane z LinuksemIstnieje szereg specjalistycznych pocztowych list dyskusyjnych na temat Linuksa, na ktrych spotkasz wiele osb, ktre chtnie odpowiedz na twoje pytania. Najbardziej znane z nich to listy obsugiwane przez uniwersytet Rutgers. Moesz si do nich zapisa, wysyajc wiadomo e-mail sformatowan w nastpujcy sposb: To: [email protected] Subject: anything at all Body: subscribe nazwa-listy Niektre listy zwizane z sieci w Linuksie to: linux-net Dyskusje zwizane z sieci w Linuksie. linux-ppp Dyskusje zwizane z implementacj PPP w Linuksie. linux-kernel Dyskusje zwizane z tworzeniem jdra Linuksa.

Elektroniczne wsparcie LinuksaW wielu miejscach w sieci mona uzyska pomoc elektroniczn. Ochotnicy z caego wiata oferuj tam swoj specjalistyczn wiedz i usugi tym uytkownikom, ktrzy maj pytania i problemy. Sie OpenProjects IRC to sie IRC powicona w caoci projektom otwartym zarwno Open Source, jak i Open Hardware. Niektre kanay s przeznaczone do udostpniania elektronicznego wsparcia dla Linuksa. IRC to skrt od Internet Relay Chat. Jest to usuga sieciowa pozwalajca interaktywnie rozmawia przez Internet z innymi uytkownikami. Sieci IRC obsuguj wiele kanaw, na ktrych grupy prowadz pisane rozmowy. Cokolwiek napiszesz na kanale, bdzie to widoczne dla wszystkich pozostaych uczestnikw rozmowy. W sieci OpenProjects IRC istnieje szereg aktywnych kanaw, na ktrych spotkasz uytkownikw przez 24 godziny na dob, 7 dni w tygodniu. S to uytkownicy, kt-

rda informacji

XVII

rzy chc i potrafi pomc w rozwizaniu twoich problemw z Linuksem albo mog po prostu z tob pogada. Z usugi tej moesz korzysta po zainstalowaniu klienta IRC, na przykad irc-II, podczeniu si do serwera o zadanej nazwie, np. irc.openprojects.org:6667, i przyczeniu si do kanau #linpeople.

Grupy uytkownikw LinuksaBezporedni pomoc oferuje te wiele grup uytkownikw Linuksa z caego wiata. Ich uczestnicy angauj si w tak dziaalno, jak organizowanie dni instalacji, seminaria i dyskusje panelowe, prezentacje i inne imprezy towarzyskie. Grupy uytkownikw Linuksa s doskonaym sposobem na spotkanie si z innymi linuksowcami z twojego rejonu. Istnieje szereg list grup uytkownikw Linuksa. Do lepiej znanych nale: Group of Linux Users Everywhere http://www.ssc.com/glue/groups LUG list project http://www.nllgg.nl/lugww/ LUG registry http://www.linux.org/users/

Skd wzi LinuksaNie ma jednej jedynej dystrybucji oprogramowania dla Linuksa. Takich dystrybucji jest wiele, m.in. Debian, RedHat, Caldera, Corel, SuSE i Slackware. Kada dystrybucja zawiera wszystko, czego potrzebujesz do uruchomienia penego systemu Linux: jdro, podstawowe programy uytkowe, biblioteki, pliki pomocnicze i aplikacje. Dystrybucje Linuksa mona zdoby z szeregu rde elektronicznych, jak Internet. Kada powana dystrybucja posiada wasny orodek FTP i WWW. Oto niektre orodki: Caldera http://www.caldera.com/ftp://ftp.caldera.com/ Corel http://www.corel.com/ftp://ftp.corel.com/ Debian http://www.debian.org/ftp://ftp.debian.org/ RedHat http://www.redhat.com/ftp://ftp.redhat.com/ Slackware http://www.slackware.com/ftp://ftp.slackware.com/ SuSE http://www.suse.com/ftp://ftp.suse.com/ Popularne archiwa FTP rwnie zawieraj rne dystrybucje Linuksa. Najbardziej znane z nich to: metalab.unc.edu:/pub/Linux/distributions/ ftp.funet.fi:/pub/Linux/mirrors/ tsx-11.mit.edu:/pub/linux/distributions/ mirror.aarnet.edu.au:/pub/linux/distributions/

XVIII

Wstp

Wiele z nowoczesnych dystrybucji mona zainstalowa bezporednio z Internetu. Jednak w przypadku typowej instalacji naley cign spor liczb oprogramowania, a wic prawdopodobnie zdecydujesz si na to, tylko jeeli masz szybkie stae poczenie sieciowe lub jeeli musisz uaktualni swoj instalacj*. Linuksa mona kupi na pycie CD-ROM u coraz wikszej liczby sprzedawcw. Jeeli w twoim sklepie komputerowym go nie ma, moesz poprosi o sprowadzenie. Wikszo popularnych dystrybucji mona zdoby na pycie CD-ROM. Niektrzy sprzedawcy tworz produkty skadajce si z wielu pyt CD-ROM zawierajcych poszczeglne dystrybucje Linuksa. Jest to idealny sposb na wyprbowanie rnych dystrybucji, aby mc stwierdzi, ktra jest nasz ulubion.

Standardy systemw plikwNiegdy jednym z problemw, ktry dotyka dystrybucji Linuksa oraz pakietw oprogramowania, by brak jednolitego systemu plikw. Wynikay z tego niezgodnoci pomidzy rnymi pakietami, co wymagao od uytkownikw i administratorw lokalizowania rnych plikw i programw. Aby zaradzi tej kopotliwej sytuacji w sierpniu 1993 roku powoano zesp do spraw standaryzacji systemu plikw Linuksa (Linux File System Standard Group FSSTND). W cigu szeciu miesicy opracowano szkic spjnej struktury systemu plikw i zdefiniowano rozkad wikszoci istotnych programw i plikw konfiguracyjnych. Oczekiwano, e standard ten zostanie zaimplementowany w wikszoci gwnych dystrybucji Linuksa i pakietach. Niezupenie tak si stao. Cho w wikszoci dystrybutcji starano si speni wymogi FSSTND, udao si to tylko w niewielu. W ksice tej zakadamy, e wszelkie omawiane pliki znajduj si w miejscach okrelonych przez standard. Alternatywne niestandardowe lokalizacje bd przywoywane tylko wtedy, gdy s utrwalane dug tradycj. Linux FSSTND obowizywa do 1997 roku, kiedy zosta zastpiony przez FHS (Linux File Hierarchy Standard). FHS rozwizuje zagadnienia midzyarchitekturowe, nie uwzgldnione przez FSSTND. FHS mona zdoby z katalogu z dokumentacj wikszoci orodkw FTP Linuksa i ich serwerw lustrzanych lub ze strony macierzystej pod adresem http://www.pathname.com/fhs/. Z Danielem Quinlanem koordynatorem grupy FHS mona skontaktowa si pod adresem [email protected].

Standardowa podstawa LinuksaWielo dystrybucji Linuksa, cho umoliwia wybr jego uytkownikom, przysparza problemw twrcom oprogramowania szczeglnie tego, ktre nie jest darmowe.

*

...lub jeeli jeste strasznie niecierpliwy, nie chcesz czeka 3 dni na dostarczenie ci pyty z oprogramowaniem do domu i wolisz przez 24 godziny ( bo tyle moe to trwa) ciga je z Internetu.

O tej ksice

XIX

Kada dystrybucja zawiera pewne podstawowe biblioteki, narzdzia konfiguracyjne, aplikacje systemowe i pliki konfiguracyjne. Niestety, rnice pomidzy wersjami, nazwami i lokalizacjami powoduj, e bardzo trudno jest zgadn, co bdzie w danej dystrybucji. A bez tej wiedzy nie da si stworzy binarnych wersji aplikacji, ktre dziaayby niezawodnie we wszystkich dystrybucjach Linuksa. Aby rozwiza ten problem, powoano nowy projekt o nazwie Linux Standard Base (standardowa podstawa Linuksa). Jego celem jest opisanie standardowej podstawy dystrybucji, do ktrej dostosuj si poszczeglne dystrybucje. Jeeli programista stworzy aplikacj w oparciu o standardow podstaw, to bdzie ona dziaaa we wszelkich dystrybucjach zgodnych ze standardem. Informacje na temat stanu projektu standardowej podstawy Linuksa moesz znale na jego stronie macierzystej pod adresem http://www.linuxbase.org/. Jeeli martwisz si o zgodno, szczeglnie oprogramowania komercyjnego, powiniene upewni si, czy w przypadku twojej dystrybucji zostay podjte kroki prowadzce do zgodnoci z projektem standaryzacyjnym.

O tej ksiceGdy Olaf doczy do Projektu Dokumentacji Linuksa w 1992 roku, napisa dwa mae rozdziay na temat UUCP i smaila, ktre zamierza umieci w Przewodniku administratora systemu (System Administrator's Guide). Sieci TCP/IP zaczy dopiero powstawa. W miar ich rozwoju te dwa mae rozdziay zaczy si rozrasta. Wtedy Olaf pomyla, e byoby dobrze mie przewodnik po sieci. Kady mwi: wietny pomys, zrb to!. A wic wzi si do pracy i napisa pierwsz wersj przewodnika po sieci, ktra zostaa wydana we wrzeniu 1993 roku. Olaf kontynuowa prace nad przewodnikiem po sieci i ostatecznie stworzy znacznie rozszerzon jego wersj. Rozdzia na temat sendmaila napisa Vince Skahan W tym wydaniu rozdzia ten zosta cakowicie zmieniony, ze wzgldu na nowy interfejs konfiguracyjny sendmaila. Wersja przewodnika, ktr czytasz, zostaa skorygowana i uaktualniona przez Terry'ego Dawsona* na yczenie wydawnictwa O'Reilly & Associates. Terry przez 20 lat by operatorem radia amatorskiego, z czego 15 lat przepracowa w przemyle telekomunikacyjnym. By wspautorem dokumentu NET-FAQ i napisa oraz utrzymywa rne dokumenty HOWTO zwizane z sieci. Terry zawsze z entuzjazmem wspiera projekt przewodnika administratora sieci i doda w niniejszej edycji kilka rozdziaw na najnowsze tematy, ktre ze zrozumiaych wzgldw nie trafiy do pierwszego wydania. Dokona te mnstwa zmian w celu uaktualnienia caej ksiki. Rozdzia omawiajcy exim napisa Philip Hazel**, ktry jest gwnym twrc pakietu.* Z Terrym Dawsonem mona si skontaktowa pod adresem [email protected]. ** Z Philipem Hazelem mona skontaktowa si pod adresem [email protected].

XX

Wstp

Ksika ta ma form sekwencji krokw, jakie naley podj, by skonfigurowa system do pracy w sieci. Rozpoczyna si omwieniem podstawowych poj sieciowych, a w szczeglnoci sieci opartych na TCP/IP. Nastpnie kolejno wprowadza w konfigurowanie TCP/IP na poziomie urzdzenia konfigurowanie firewalli, liczenie ruchu IP (accounting) i maskowanie IP, wreszcie w konfigurowanie popularnych aplikacji, takich jak rlogin i tym podobne, sieciowego systemu plikw (NFS Network File System) oraz systemu informacji sieciowej (NIS Network Information System). Dalej znajduje si rozdzia o tym, jak skonfigurowa maszyn jako wze UUCP. Wikszo pozostaych podrozdziaw jest powicona dwm podstawowym aplikacjom, ktre dziaaj na TCP/IP i UUCP: poczcie elektronicznej i grupom dyskusyjnym. Specjalny rozdzia zosta powicony protokoowi IPX i systemowi plikw NCP, poniewa s one uywane w rodowiskach korporacyjnych, w ktrych spotyka si Linuksa. W czci omawiajcej poczt znajduje si bardziej gruntowne wprowadzenie do transportu i rutingu poczty oraz miriady schematw adresowania, ktre moesz napotka. Opisuje ona konfiguracj exima i zarzdzanie nim. Exim to agent transportowy poczty, idealny tam, gdzie nie s wymagane UUCP ani tym bardziej sendmail, ktry jest dla realizujcych ruting bardziej skomplikowany, ni te obsugiwane przez UUCP. Cz powicona grupom dyskusyjnym daje pojcie o tym, jak dziaa Usenet. Omawia INN i C News dwa powszechnie uywane pakiety oprogramowania transportowego grup dyskusyjnych oraz zastosowanie NNTP do zapewnienia dostpu do czytania grup w sieci lokalnej. Ksik zamyka rozdzia na temat stosowania najpopularniejszych programw do czytania grup dyskusyjnych w Linuksie. Oczywicie ksika ta na pewno nie jest w stanie wyczerpujco odpowiedzie na wszystkie potencjalne pytania. Tak wic, jeeli bdziesz postpowa zgodnie z instrukcjami w niej zawartymi, a co wci nie bdzie dziaao, bd cierpliwy. Niektre z twoich problemw mog wynika z naszych bdw (zobacz podrozdzia Zgaszanie uwag w dalszej czci wstpu), ale mog take by spowodowane zmianami w oprogramowaniu sieciowym. Dlatego powiniene sprawdzi najpierw informacje zawarte w zasobach. Istnieje due prawdopodobiestwo, e nie tylko ty masz takie problemy, a wic poprawka lub przynajmniej proponowane rozwizanie jest ju by moe znane. Jeeli masz okazj, powiniene take sprbowa zdoby najnowsz wersje jdra i sieci z jednego z linuksowych orodkw FTP lub z pobliskiego BBS-u. Wiele problemw wynika z nierwnomiernego rozwoju rnego oprogramowania, ktre nie wsppracuje poprawnie ze sob. W kocu Linux to praca w toku.

Oficjalna wersja drukowanaNa jesieni 1993 roku Andy Oram, ktry prawie od pocztku by zwizany z list dyskusyjn LDP, zaproponowa Olafowi opublikowanie tej ksiki w wydawnictwie O'Reilly & Associates. By ni zachwycony, ale nigdy nie przypuszcza, e odniesie ona taki sukces. Postanowiono, e O'Reilly stworzy rozszerzon oficjaln wersj

Oficjalna wersja drukowana

XXI

drukowan przewodnika po sieci, natomiast Olaf zatrzyma prawa autorskie i rda ksiki bd mogy by rozpowszechniane za darmo. Oznacza to, e masz wolny wybr: moesz wzi rne darmowe wersje dokumentu z najbliszego orodka lustrzanego Projektu Dokumentacji Linuksa i wydrukowa je sobie albo zakupi oficjaln wersj drukowan wydan przez O'Reilly'ego. Nasuwa si pytanie: dlaczego masz paci za co, co moesz mie za darmo? Czy Tim O'Reilly postrada zmysy i wydaje co, co kady moe sobie sam wydrukowa, a nawet sam sprzedawa?*. Czy istniej jakie rnice pomidzy tymi wersjami? Odpowiedzi brzmi to zaley, nie, zdecydowanie nie i tak i nie. O'Reilly & Associates podejmuje ryzyko, wydajc przewodnik po sieci w formie tradycyjnej, ale jako si im to opaca (poprosili nas, bymy przygotowali nastpne wydanie). Wierzymy, e to przedsiwzicie jest doskonaym przykadem tego, jak wiat darmowego oprogramowania i firmy komercyjne mog ze sob wsppracowa, by stworzy co, z czego obie strony czerpi korzyci. Z naszego punktu widzenia wydawnictwo O'Reilly przysuyo si spoecznoci Linuksa (nie tylko t ksik, ktra jest dostpna w twojej ksigarni). Dziki niemu Linux zacz by rozpoznawany jako co powanego: jako rentowna i uyteczna alternatywa dla innych, komercyjnych systemw operacyjnych. Jeeli jaka ksigarnia techniczna nie ma u siebie przynajmniej jednej pki z ksikami wydawnictwa O'Reilly, to jest to kiepska ksigarnia. Dlaczego to wydaj? Uznaj to za swoj specjalno. Oto, czego oczekuj, podpisujc z autorami kontrakt na napisanie ksiki o Linuksie: tempo, poziom szczegowoci i styl maj dokadnie odpowiada innym wydanym przez nich ksikom. Celem licencji LDP jest zapewnienie, wszystkim dostpu do ksiki. Niektrzy mog wydrukowa sobie t ksik sami i nikt nie bdzie ci wini, jeeli z niej skorzystasz. Jednak, jeeli nie miae okazji zobaczy wersji wydawnictwa O'Reilly, sprbuj przej si do ksigarni albo obejrzyj ksik u kolegi. Wydaje nam si, e spodoba ci si to, co zobaczysz, i bdziesz chcia ksik kupi. Jakie s wic rnice pomidzy wersj drukowan a wersj elektroniczn? Andy Oram woy wiele pracy w to, aby przetworzy nasze chaotyczne myli w potoczysty wykad wart wydrukowania. (Dokona take korekty kilku innych ksiek stworzonych w ramach Projektu Dokumentacji Linuksa, suc spoecznoci Linuksa ca swoj fachow wiedz). Na redakcji Andy'ego ksika znacznie zyskaa w stosunku do wersji oryginalnej. Nie mona byo marnowa okazji skorzystania z usug i umiejtnoci profesjonalnego redaktora. Pod wieloma wzgldami praca Andy'ego jest rwnie wana jak autorw. To samo dotyczy rwnie redaktorw technicznych, ktrzy nadali ksice obecny ksztat. Wszystkie te poprawki zostay rwnie wprowadzone w wersji elektronicznej, a wic w zawartoci nie ma rnic.

*

Zwr uwag, e cho moesz wydrukowa wersj elektroniczn, nie moesz kserowa ksiki O'Reilly'ego ani sprzedawa adnych jej kopii.

XXII

Wstp

Jednak wci wersja wydana przez O'Reilly'ego bdzie inna. Jest porzdnie oprawiona. Moesz mie problemy z adnym wydrukowaniem wersji domowej. Jest te mao prawdopodobne, aby uzyska zblion jako, a jeli ju to zapewne za duo wiksze pienidze. Ponadto nasze amatorskie ilustracje zostay w wersji drukowanej zastpione innymi grafikami, piknie przygotowanymi przez profesjonalnych artystw z wydawnictwa O'Reilly. Dla wersji drukowanej przygotowano te nowe, dokadniejsze indeksy, dziki czemu duo atwiej wyszukuje si informacje. Jeeli ta ksika jest czym, co zamierzasz przeczyta od pocztku do koca, powiniene zastanowi si nad przeczytaniem oficjalnej wersji drukowanej.

Przegld treciRozdzia 1, Wprowadzenie do sieci, omawia histori Linuksa i podaje podstawowe informacje o UUCP, TCP/IP, rnych protokoach, sprzcie i bezpieczestwie. Kolejne kilka rozdziaw omawia konfigurowanie Linuksa w sieci TCP/IP i uruchamianie podstawowych aplikacji. Nieco dokadniej przygldamy si IP w rozdziale 2, Wybrane problemy sieci TCP/IP, zanim przejdziemy do edycji plikw i tym podobnych tematw. Jeeli wiesz ju, jak dziaa ruting IP i na czym polega rozwizywanie adresw, moesz pomin ten rozdzia. Rozdzia 3, Konfigurowanie sprztu sieciowego, omawia podstawowe zagadnienia konfiguracyjne, takie jak tworzenie jdra i konfigurowanie karty Ethernet. Konfiguracja portw szeregowych jest przedstawiona oddzielnie w rozdziale 4, Konfigurowanie urzdze szeregowych, poniewa ten temat nie dotyczy jedynie sieci TCP/IP, ale ma take zwizek z UUCP. Rozdzia 5, Konfigurowanie sieci TCP/IP, pomaga skonfigurowa maszyn w sieci TCP/IP. Zawiera wskazwki instalacyjne dla samodzielnych hostw z wczonym jedynie interfejsem ptli zwrotnej i hostw podczonych do sieci Ethernet. Pokazuje take kilka przydatnych narzdzi, ktrych moesz uywa do testowania i debugowania swojej konfiguracji. Rozdzia 6, Usugi nazewnicze i konfigurowanie resolvera, wyjania, jak skonfigurowa rozwizywanie nazw i uruchomi serwer nazw. Rozdzia 7, IP cza szeregowego, pokazuje, jak zestawi poczenie SLIP i szczegowo omawia dip narzdzie pozwalajce na automatyzacj wikszoci niezbdnych krokw. Rozdzia 8, Protok punkt-punkt, jest powicony PPP i pppd demonowi PPP. Rozdzia 9, Firewall TCP/IP, rozwija zagadnienia bezpieczestwa sieciowego i opisuje firewall TCP/IP dla Linuksa oraz narzdzia do jego konfiguracji: ipfwadm, ipchains i iptables. Firewall IP zapewnia dokadn kontrol nadal tym, kto dostaje si do sieci i z jakiego hosta. Rozdzia 10, Liczenie ruchu IP, wyjania, jak skonfigurowa funkcj liczenia ruchu IP w Linuksie, tak aby ledzi, jak duy jest ruch wychodzcy i kto go generuje. Rozdzia 11, Maskowanie IP i translacja adresw sieciowych, omawia wasnoci specjalnego typu oprogramowania sieciowego Linuksa zwanego maskowaniem IP, ktre

Konwencje zastosowane w tej ksice

XXIII

pozwala czy ze sob cae sieci IP i korzysta z Internetu tylko przy uyciu jednego adresu IP, tak e wewntrzna struktura sieci staje si niewidoczna. Rozdzia 12, Wane funkcje sieciowe, stanowi krtkie wprowadzenie do konfigurowania pewnych waniejszych aplikacji sieciowych, takich jak rlogin, ssh i tym podobne. Rozdzia ten omawia rwnie zarzdzanie usugami przez inetd i podpowiada, w jaki sposb mona zwikszy bezpieczestwo pewnych usug skierowanych do zaufanych hostw. Rozdzia 13, System informacji sieciowej, i rozdzia 14, Sieciowy system plikw, omawiaj NIS i NFS. NIS to narzdzie uywane do dystrybuowania informacji administracyjnych, takich jak hasa uytkownika w sieci lokalnej. NFS pozwala na wspdzielenie systemw plikw pomidzy hostami w sieci. W rozdziale 15, IPX i system plikw NCP, omawiamy protok IPX i system plikw NCP. Pozwalaj one zintegrowa Linuksa ze rodowiskiem Novell Netware przez wspdzielenie plikw oraz drukarek z maszynami nielinuksowymi. Rozdzia 16, Zarzdzanie UUCP Taylora, stanowi wyczerpujce wprowadzenie do administrowania UUCP Taylora darmow implementacj UUCP. Pozostae rozdziay ksiki szczegowo przedstawiaj poczt elektroniczn i grupy dyskusyjne Usenetu. Rozdzia 17, Poczta elektroniczna, wprowadza w gwne zagadnienia poczty elektronicznej, takie jak wygld adresw pocztowych i sposb, w jaki system obsuguje poczt, by dotara do adresata. Rozdzia 18, Sendmail, i rozdzia 19, Exim, omawiaj konfiguracj programw sendmail i exim dwch maych agentw transportowych, ktre moesz wykorzysta w Linuksie. Przedstawiamy oba, poniewa exim jest atwiejszy do zainstalowania dla pocztkujcego, a sendmail obsuguje UUCP. Od rozdziau 20, Grupy dyskusyjne, do rozdziau 23, Internet News, wyjaniamy obsug wiadomoci Usenetu i sposb instalacji i uywania C News, nntpd i INN trzech popularnych pakietw oprogramowania do zarzdzania wiadomociami Usenetu. Po krtkim wprowadzeniu w rozdziale 20, moesz przeczyta rozdzia 21, C News, jeeli chcesz przesya wiadomoci za pomoc C News tradycyjnej usugi uywanej wraz z UUCP. Kolejne rozdziay omawiaj nowoczeniejsze metody wykorzystujce protok internetowy NNTP (Network News Transport Protocol). Rozdzia 22, NNTP i demon nntpd, przedstawia sposb konfiguracji prostego demona NNTP o nazwie nntp, ktry zapewnia dostp do czytania wiadomoci w sieci lokalnej. Natomiast rozdzia 23 opisuje silniejszy serwer do bardziej intensywnych transferw NetNews'w: INN (InterNet News). I na koniec rozdzia 24, Konfigurowanie przegldarki grup, pokazuje ci, jak skonfigurowa rne programy do czytania grup.

Konwencje zastosowane w tej ksiceWe wszystkich przykadach przedstawionych w tej ksice zakadamy, e uywasz powoki, ktra jest kompatybilna z sh. Standardow powok wszystkich dystrybucji Linuksa jest bash kompatybilna z sh. Jeeli korzystasz z csh, bdziesz musia odpowiednio zmodyfikowa przykady.

XXIV

Wstp

Poniej przedstawiamy list konwencji typograficznych uytych w ksice: Czcionka pochya Uywana do oznaczenia nazw plikw i katalogw, programw i polece, opcji wiersza polece, adresw e-mail i cieki, URL i do podkrelenia nowych poj. Czcionka pogrubiona Uywana do nazw maszyn, hostw, orodkw, uytkownikw i ID oraz, okazjonalnie, do podkrelania poj. Czcionka o staej szerokoci Uywana w przykadach do pokazania zawartoci kodu plikw lub wyniku dziaania polece oraz wskazywania zmiennych rodowiskowych i sw kluczowych, ktre pojawiaj si w kodzie. Czcionka pochya o staej szerokoci Uywana do wskazania opcji zmiennych, sw kluczowych albo tekstu, ktry uytkownik ma zastpi konkretn wartoci. Czcionka pogrubiona o staej szerokoci Uywana w przykadach do pokazania polece lub innego tekstu, ktry powinien by wpisywany przez uytkownika dosownie.Ramka z t ikon zawiera ostrzeenie. atwo tu o bd, ktry moe le si skoczy dla twojego systemu lub jest trudny od naprawienia.

Ramka z t ikon zawiera komentarz do pobliskiego tekstu.

Zgaszanie uwagInformacje zawarte w tej ksice sprawdzalimy i weryfikowalimy na tyle, na ile bylimy w stanie, ale pewne rzeczy mogy si zmieni (lub my moglimy popeni bd!). Bdziemy wdziczni za powiadomienie nas o wszelkich dostrzeonych bdach oraz podzielenie si swoimi sugestiami co do przyszych wyda. Prosimy pisa na adres: O'Reilly & Associates, Inc. 101 Morris Street Sebastopol, CA 95472 1-800-998-9938 (w USA lub Kanadzie) 1-707-829-0515 (midzynarodowy lub lokalny) 1-707-829-0104 (faks)

Podzikowania

XXV

Moesz nam take wysya wiadomoci elektronicznie. Aby zapisa si na list dyskusyjn lub poprosi o katalog, wylij e-mail na adres: [email protected] Aby poprosi o pomoc techniczn lub komentarz na temat ksiki, wylij e-mail na adres: [email protected] Prowadzimy witryn WWW dla niniejszej ksiki. Znajduj si na niej przykady, errata i plany przyszych wyda. Strona ta znajduje si pod adresem: http://www.oreilly.com/catalog/linag2 Wicej informacji na temat tej i innych ksiek znajdziesz w witrynie WWW wydawnictwa O'Reilly: http://www.oreilly.com/

PodzikowaniaTo wydanie Przewodnika po sieci jest niemal wyczn zasug Olafa i Vince'a. Trudno doceni wysiek woony w badania i napisanie tego typu ksiki, jeeli nie zrobi si tego samemu. Uaktualnianie ksiki byo wyzwaniem powanym, ale dziki dobrej podstawie take przyjemnym. Ksika wiele zawdzicza tym, ktrzy powicili czas na jej korekt i pomogli usun wiele bdw, zarwno technicznych, jak i jzykowych. W tym dziaaniu znakomicie si uzupeniali Phil Hughes, John Macdonald i Erik Ratcliffe. Serdeczne podzikowania kierujemy do czonkw zespou redakcyjnego wydawnictwa O'Reilly, z ktrymi mielimy przyjemno pracowa. Dzikujemy Sarah Jane Shangraw, ktra nadaa ksice obecny ksztat; Maurren Dempsey, ktra redagowaa tekst; Robowi Romano, Rhonowi Porterowi i Chrisowi Reileyowi, ktrzy wykonali rysunki, Hannie Dyer, ktra zaprojektowaa okadk, Alicii Cech, Davidowi Futato i Jennifer Niedhers za ukad wewntrzny, Larsowi Kaufowi, ktry wpad na pomys zamieszczenia drzeworytw; Judy Hoer za indeks i na koniec Timowi O'Reilly'emu za odwag podjcia takiego projektu. Na nasz wdziczno zasuyli te Andres Seplveda, Wolfgang Michael, Michael K. Johnson i wszyscy programici, ktrzy powicili wolny czas na sprawdzenie informacji zawartych w Przewodniku po sieci. Phil Hughes, John MacDonald i Eric Ratcliffe zgosili nieocenione komentarze do drugiego wydania. Chcemy rwnie podzikowa wszystkim, ktrzy przeczytali pierwsze wydanie Przewodnika po sieci i przysali poprawki i sugestie. Pen, miejmy nadziej, list tych osb moesz znale w pliku Thanks w wersji elektronicznej. Ostatecznie ta ksika nie powstaaby bez wsparcia Holgera Grothego, ktry udostpni Olafowi podczenie do Internetu, niezbdne do powstania oryginalnej wersji. Olaf chciaby rwnie podzikowa nastpujcym grupom i firmom, ktre wydrukoway pierwsze wydanie Przewodnika po sieci i wspary finansowo zarwno jego osob, jak i cay Projekt Dokumentacji Linuksa: Linux Support Team, Erlangen,

XXVI

Wstp

Niemcy; S.u.S.E. GmbH, Fuerth, Niemcy; oraz Linux System Labs, Inc., Clinton Twp., USA; RedHat Software, Poudniowa Karolina, USA. Terry dzikuje swojej onie Maggie, ktra niestrudzenie wspieraa go w pracy na rzecz Projektu mimo wyzwania jakie stawiao przed ni urodzenie ich pierwszego dziecka, Jacka. Ponadto dzikuje wielu osobom ze spoecznoci Linuksa, dziki ktrym osign poziom pozwalajcy mu na wzicie udziau w tym przedsiwziciu. Pomog ci, jeeli obiecasz pomc za to komu innemu.

Lista zasuonychJest jeszcze wiele osb, poza ju wspomnianymi, ktre przyczyniy si do powstania Przewodnika po sieci. Zapoznali si z nim i przesyali nam poprawki i sugestie. Jestemy im bardzo wdziczni. Oto lista tych, ktrych dziaalno pozostawia lad w naszych folderach pocztowych. Al Longyear, Alan Cox, Andres Seplveda, Ben Cooper, Cameron Spitzer, Colin McCormack, D.J. Roberts, Emilio Lopes, Fred N. van Kempen, Gert Doering, Greg Hankins, Heiko Eissfeldt, J.P. Szikora, Johannes Stille, Karl Eichwalder, Les Johnson, Ludger Kunz, Marc van Diest, Michael K. Johnson, Michael Nebel, Michael Wing, Mitch D'Souza, Paul Gortmaker, Peter Brouwer, Peter Eriksson, Phil Hughes, Raul Deluth Miller, Rich Braun, Rick Sladkey, Ronald Aarts, Swen Themmler, Terry Dawson, Thomas Quinot i Yury Shevchuk.

Wprowadzenie do sieciRozdzia 1: Wprowadzenie do sieci

1

HistoriaIdea sieci jest prawdopodobnie tak stara jak sama komunikacja. Signijmy do epoki kamiennej, kiedy to ludzie uywali bbnw do przesyania wiadomoci. Zamy, e jaskiniowiec A chce zaprosi jaskiniowca B do gry w rzucanie kamieniami, ale mieszkaj oni zbyt daleko od siebie, by B usysza uderzenia A w bben. Co moe zrobi jaskiniowiec A? Moe on 1) i do miejsca zamieszkania B, 2) uy wikszego bbna lub 3) poprosi C, ktry mieszka w poowie drogi pomidzy nimi, aby przekaza komunikat. Ostatni moliwo mona nazwa sieci. Oczywicie od czasw naszych przodkw zmieniy si metody i urzdzenia suce komunikacji. Obecnie mamy komputery poczone ze sob zwojami drutw, wiatowodami, mikrofalami i tym podobnymi; za ich pomoc umawiamy si na sobotni mecz piki nonej*. Poniej opiszemy, jakimi rodkami i metodami mona nakoni komputery do porozumiewania si, cho pominiemy i druty, i pik non. W tym przewodniku opiszemy trzy typy sieci. Gwnie skupimy si na sieciach opartych na TCP/IP, ktry jest najpopularniejszym zestawem protokow stosowanym zarwno w sieciach lokalnych (Local Area Networks LAN), jak i w sieciach rozlegych (Wide Area Networks WAN), takich jak Internet. Przyjrzymy si rwnie protokoom UUCP i IPX. Swego czasu UUCP by powszechnie uywany do przesyania wiadomoci Usenet i poczty przez komutowane poczenia telefoniczne. Obecnie jest mniej popularny, ale wci bywa przydatny w pewnych sytuacjach. Protok IPX jest uywany przewanie w rodowisku Novell NetWare. Opiszemy, jak wykorzysta go do podczenia maszyny linuksowej do sieci Novell. Kady z wymienionych protokow jest protokoem sieciowym sucym do przesyania da* Co si jeszcze czasem zdarza w Europie.

2

Rozdzia 1: Wprowadzenie do sieci

nych pomidzy komputerami. Omwimy, jak s one uywane, i pokaemy rzdzce nimi zasady. Sie definiujemy jako zbir hostw, ktre s w stanie komunikowa si ze sob, czsto za porednictwem pewnych wybranych spord nich hostw, ktre rozsyaj dane pomidzy uczestnikw. Hosty to czsto komputery, ale nie zawsze za hosty mona uzna take X terminale czy inteligentne drukarki. Niewielkie zbiorowiska hostw s nazywane rwnie orodkami (ang. sites). Komunikacja nie jest moliwa bez pewnego rodzaju jzyka czy kodu. W sieciach komputerowych te jzyki s nazywane protokoami. Jednak protokou sieciowego nie powiniene kojarzy z pisemnym sprawozdaniem z zebrania. Trafniejsza jest analogia do sformalizowanych regu zachowania obowizujcych, gdy na przykad spotykaj si gowy pastw, czyli do protokou dyplomatycznego. Podobne protokoy uywane w sieciach komputerowych to po prostu sztywne zasady wymiany komunikatw pomidzy dwoma lub wicej hostami.

Sieci TCP/IPNowoczesne aplikacje sieciowe wymagaj wyrafinowanego podejcia do przesyania danych z jednej maszyny do drugiej. Jeeli zarzdzasz maszyn z Linuksem, z ktrej korzysta wielu uytkownikw, to moe si zdarzy, e wszyscy jednoczenie bd chcieli poczy si ze zdalnymi hostami w sieci. Potrzebujesz wic sposobu, ktry pozwoli im wspdzieli poczenie sieciowe bez przeszkadzania sobie wzajemnie. Rozwizanie, ktre wykorzystuje wiele wspczesnych protokow sieciowych, nazywane jest przeczaniem pakietw. Pakiet to maa porcja danych, przesyana przez sie z jednej maszyny do drugiej. Przeczanie wystpuje w momencie, gdy datagram jest przenoszony przez dowolne cze w sieci. W sieci z przeczaniem pakietw jedno cze jest wspdzielone przez wielu uytkownikw w ten sposb, e przez to cze pakiety s wysyane kolejno od jednego uytkownika do drugiego. Rozwizanie, ktre przyjo si w wielu systemach Unix, a nastpnie take w systemach nieuniksowych, nosi nazw TCP/IP. Przy omawianiu sieci TCP/IP spotkasz si z okreleniem datagram, ktre jest czsto uywane wymiennie z okreleniem pakiet, cho ma te inne, techniczne znaczenie. W tym podrozdziale przyjrzymy si podstawowym pojciom zwizanym z TCP/IP.

Wprowadzenie do sieci TCP/IPPocztki TCP/IP sigaj programu badawczego finansowanego przez amerykask agencj rzdow DARPA (Defense Advanced Research Projects Agency) w 1969 roku. ARPANET bya sieci eksperymentaln, ktra w 1975 roku, po latach zakoczonych sukcesem bada, staa si sieci operacyjn. W 1983 roku jako standard przyjto nowy zestaw protokow o nazwie TCP/IP, ktrego miay uywa wszystkie hosty w sieci. Ostatecznie ARPANET przeksztaci si w Internet (sam ARPANET przesta istnie w 1990 roku), a zestaw TCP/IP jest stosowany take poza nim. Wiele firm stworzyo korporacyjne sieci TCP/IP, a Inter-

Sieci TCP/IP

3

net osign poziom, w ktrym mona go uzna za wszechobecn technologi. Trudno jest, czytajc gazet lub czasopismo, nie zauway odnonikw do Internetu prawie kady ma dzi do niego dostp. Aby nasze rozwaania o TCP/IP oprze na czym konkretnym, wemy jako przykad sie uniwersytetu Groucho Marx (GMU), znajdujcego si gdzie w Fredland. Wikszo wydziaw tej uczelni posiada wasne sieci lokalne, jednak niektre wspdziel jedn sie, a inne maj ich po kilka. Wszystkie one s poczone ze sob i podczone do Internetu poprzez jedno szybkie cze. Zamy, e twj linuksowy komputer jest podczony do sieci LAN zbudowanej z hostw uniksowych na wydziale matematyki i nazywa si erdos. Aby dosta si do hosta, powiedzmy quark, na wydziale fizyki, wprowadzasz nastpujce polecenie:$ rlogin quark.physics Welcome to the Physics Department at GMU (ttyq2) login:

Po monicie wpisujesz nazw uytkownika, powiedzmy andres, i swoje haso. Nastpnie uzyskujesz dostp do powoki* komputera quark, w ktrej moesz pisa tak, jakby siedzia przy jego konsoli. Gdy wyjdziesz z powoki, powracasz do monitu wasnej maszyny. Wanie uye jednej z natychmiastowych, interaktywnych aplikacji, udostpnianych przez TCP/IP: zdalnego logowania. Gdy jeste zalogowany do maszyny quark, moesz rwnie uruchomi aplikacj graficzn, np. program procesora tekstw, program do rysowania czy przegldark WWW. System X Window jest w peni sieciowym rodowiskiem graficznym, dostpnym dla wielu rnych systemw komputerowych. Aby powiedzie aplikacji, e chcesz, aby na ekranie twojego hosta ukazyway si jej okna, musisz ustawi zmienn rodowiskow DISPLAY:$ DISPLAY=erdos.maths:0.0 $ export DISPLAY

Jeeli teraz uruchomisz swoj aplikacj, skontaktuje si ona z twoim X serwerem, a nie z tym dziaajcym na quarku, i wywietli wszystkie okna na twoim ekranie. Oczywicie na erdosie musi dziaa X11. Istota sprawy polega na tym, e TCP/IP pozwala quarkowi i erdosowi na wysyanie pakietw X11 w t i z powrotem, std masz wraenie, e znajdujesz si w jednym systemie. Sie jest tu niemal przezroczysta. Kolejn bardzo wan aplikacj TCP/IP jest NFS. Jej nazwa to skrt od sw Network File System (sieciowy system plikw). Jest to inny sposb na spowodowanie, by sie bya przezroczysta. NFS pozwala na traktowanie hierarchii katalogw z innych hostw tak, jakby byy one lokalnymi systemami plikw, i sprawia, e wygldaj one jak inne katalogi na twoim hocie. Na przykad katalogi domowe wszystkich uytkownikw mog by przechowywane na serwerze centralnym, z ktrego mog je montowa wszystkie hosty w sieci LAN. W efekcie uytkownicy mog logowa si do dowolnej maszyny i znale si w tym samym katalogu. Podobnie moliwe jest wspdzielenie duej liczby danych (takich jak bazy danych, dokumentacje czy apli* Powoka to interfejs wiersza polece systemu operacyjnego Unix. Jest ona podobna do monitu DOS-a w rodowisku Microsoft Windows, cho ma duo wiksze moliwoci.

4

Rozdzia 1: Wprowadzenie do sieci

kacje) przez wiele hostw w ten sposb, e na serwerze jest utrzymywana jedna baza danych, do ktrej maj dostp inne hosty. Do NFS-u powrcimy w rozdziale 14, Sieciowy system plikw. Oczywicie s to tylko przykady tego, co moesz zrobi w sieciach TCP/IP. Moliwoci s prawie nieograniczone i podczas lektury tej ksiki poznasz ich wicej. Teraz przyjrzymy si bliej sposobowi dziaania TCP/IP. Wiedza ta pomoe ci zrozumie, jak musisz skonfigurowa swj komputer i dlaczego. Rozpoczniemy od analizy sprztu.

EthernetNajpopularniejszym rodzajem sprztu w sieci lokalnej jest Ethernet. W najprostszej postaci skada si z jednego kabla i hostw podczonych do niego przez wtyczki lub transceivery. Prosta instalacja ethernetowa jest stosunkowo niedroga, co wraz z przepustowoci sieci rzdu 10, 100 czy nawet 1000 megabitw na sekund przyczynio si do duej popularnoci tego standardu sprztowego. Ethernet wystpuje w trzech odmianach: cienki, grupy i skrtkowy. Cienki Ethernet i gruby Ethernet wykorzystuj kable wsposiowe, ktre rni si rednic i sposobem podczania kabla do hosta. Cienki Ethernet wykorzystuje zcza BNC w ksztacie litery T, ktre wkadasz w kabel i wkrcasz do gniazda z tyu komputera. Gruby Ethernet wymaga wywiercenia niewielkiej dziurki w kablu i podczenia transceivera za pomoc zaczepu wampirowego (ang. vampire tap). Nastpnie do transceivera mona podczy hosty (jeden lub wicej). Cienki kabel ethernetowy moe mie maksymalnie 200 metrw dugoci, za kabel gruby 500; ich nazwy to, odpowiednio, 10base-2 i 10base-5. Base odnosi si do modulacji pasma podstawowego (ang. baseband modulation) i po prostu oznacza, e dane s wysyane do kabla bezporednio, bez adnego modemu. Liczba na pocztku oznacza prdko w megabitach na sekund, a liczba na kocu maksymaln dugo kabla w setkach metrw. Sie skrtkowa wykorzystuje kabel zbudowany z dwch par drutw miedzianych i zwykle wymaga dodatkowego urzdzenia zwanego hubem aktywnym. Sie skrtkowa jest take znana pod nazw 10base-T, gdzie T oznacza skrtk. Wersja sieci dziaajca z prdkoci 100 megabitw nosi nazw 100base-T. Aby doda host do sieci zbudowanej w oparciu o cienki Ethernet, musisz przerwa jej dziaanie na co najmniej kilka minut, poniewa trzeba rozczy kabel i dooy wtyczki. Chocia dodanie hosta do instalacji zbudowanej w oparciu o gruby Ethernet jest nieco bardziej skomplikowane, zwykle nie wymaga wyczenia sieci. Ethernet oparty na skrtce jest jeszcze mniej kopotliwy. Wykorzystuje urzdzenie zwane hubem. Peni ono rol punktu podczeniowego. Moesz docza hosty do huba lub odcza je bez przerywania pracy caej sieci. Wiele osb woli cienki Ethernet w maych sieciach, poniewa jest on niedrogi. Karty PC kosztuj okoo 30 USD (obecnie wiele firm dosownie je wyrzuca), a kabel kilka centw za metr. Jednak w duych instalacjach lepszy jest gruby Ethernet lub skrtka. Na przykad na wydziale matematyki GMU pierwotnie wybrano gruby Ethernet, poniewa kabel musia by dugi, a wic ruch nie moe by zakcany za kadym ra-

Sieci TCP/IP

5

zem, gdy do sieci jest dodawany nowy host. Instalacje skrtkowe s obecnie bardzo popularne. Huby taniej, a mniejsze jednostki mona dosta za cen, ktra jest atrakcyjna nawet dla maych sieci domowych. Okablowanie skrtkowe moe by znacznie tasze w przypadku duych instalacji, a sam kabel jest duo bardziej elastyczny ni kable wsposiowe uywane w innych rodzajach sieci Ethernet. Administratorzy sieci na wydziale matematyki GMU planuj w przyszym roku finansowym wymieni istniejce okablowanie i urzdzenia na skrtkowe, by unowoczeni sie i zaoszczdzi czas przy instalowaniu nowych hostw i przenoszeniu istniejcych z miejsca na miejsce. Jedn z wad technologii Ethernet jest ograniczenie dugoci kabla, co uniemoliwia jej zastosowanie w sieciach innych ni LAN. Jednak za pomoc wzmacniakw (ang. repeater), brydy i ruterw moliwe jest czenie ze sob segmentw sieci Ethernet. Wzmacniaki po prostu kopiuj sygnay pomidzy dwoma lub wicej segmentami tak, e wszystkie segmenty dziaaj jakby to bya jedna sie Ethernet. Ze wzgldu na wymagania czasowe, mona umieci co najwyej cztery wzmacniaki pomidzy dwoma hostami w sieci. Bryde i rutery s bardziej inteligentne. Analizuj nadchodzce dane i przekazuj je tylko wtedy, jeeli docelowy host nie znajduje si w sieci lokalnej. Ethernet dziaa na zasadzie systemu magistralowego, gdzie host moe wysya pakiety (lub ramki) o wielkoci do 1500 bajtw do innego hosta w tej samej sieci Ethernet. Host jest identyfikowany za pomoc szeciobajtowego adresu trwale zapisanego w oprogramowaniu firmowym interfejsu karty sieciowej Ethernet (Network Interface Card, NIC). Adresy te s zwykle sekwencj dwucyfrowych liczb szesnastkowych oddzielonych dwukropkami, czyli na przykad aa:bb:cc:dd:ee:ff. Ramk wysyan przez jedn stacj widz wszystkie podczone stacje, ale tylko host, dla ktrego jest przeznaczona, odczytuje j i przetwarza. Jeeli dwie stacje prbuj wysa ramk w tym samym czasie, dochodzi do kolizji. Kolizje w sieci Ethernet s wykrywane bardzo szybko przez elektronik kart interfejsu i s rozwizywane przez przerwanie wysyania z obu stacji, odczekanie przez kad z nich losowego przedziau czasu i ponown prb transmisji. Nieraz spotkasz si z opini, e kolizje w Ethernecie s problemem i e przez nie wykorzystanie Ethernetu wynosi zaledwie okoo 30 procent dostpnego pasma. Kolizje s zjawiskiem typowym dla sieci Ethernet i nie powiniene by zaskoczony, zwaszcza jeli sie jest przeciona. Moe ich by maksymalnie 30 procent. Wykorzystanie sieci Ethernet jest w rzeczywistoci ograniczone do okoo 60 procent dopiero jeeli nie osigniesz tej wartoci, to moesz zacz si martwi*.

Inne typy urzdzeW wikszych instalacjach, takich jak na uniwersytecie Groucho Marx, Ethernet zwykle nie jest jedynym typem uywanego sprztu. Istnieje wiele innych protokow* Lista pyta FAQ dotyczca Ethernetu, ktra znajduje si pod adresem http://www.faqs.org/faqs/LANs/ ethernet-faq/, omawia to zagadnienie, a spory zasb szczegowych informacji historycznych i technicznych jest dostpny na stronie powiconej Ethernetowi prowadzonej przez Charlesa Spurgeona pod adresem http://wwwhost.ots.utexas.edu/ethernet/.

6

Rozdzia 1: Wprowadzenie do sieci

przesyania danych, ktre mona wykorzystywa. Wszystkie wymienione poniej protokoy s obsugiwane przez Linuksa, ale ze wzgldu na ograniczon ilo miejsca przedstawimy je skrtowo. Szczegowy opis wielu innych protokow znajduje si w odpowiednich dokumentach HOWTO, moesz tam zajrze, jeeli jeste zainteresowany poznaniem tych, ktrych nie opisujemy w naszej ksice. Na uniwersytecie Groucho Marx sie LAN kadego wydziau jest podczona do szybkiej sieci szkieletowej, w ktrej wykorzystano wiatowd i technologi sieciow FDDI (Fiber Distributed Data Interface). FDDI prezentuje cakiem inne podejcie do przesyania danych, zasadniczo polegajce na wysyaniu etonw (ang. tokens). Stacja ma prawo wysa ramk tylko wtedy, jeeli wczeniej odbierze eton. Gwn zalet protokou przekazywania etonw jest zmniejszenie liczby kolizji. Protok moe duo prociej osign pen prdko przesyania, w przypadku FDDI do 100 Mb/s. FDDI oparte na wiatowodzie ma wiele zalet, poniewa dopuszczalna dugo kabla jest duo wiksza ni w technologiach wykorzystujcych zwyky kabel miedziany. Limit wynosi tutaj okoo 200 km, co sprawia, e FDDI znakomicie nadaje si do czenia wielu budynkw w miecie lub, tak jak w naszym przykadzie, wielu budynkw campusu. Podobnie jeeli w okolicy znajduj si urzdzenia sieciowe firmy IBM, prawdopodobnie zainstalowano sie IBM Token Ring. Token Ring jest stosowana jako alternatywa dla Ethernetu w niektrych sieciach LAN i ma te same zalety co FDDI, jeli chodzi o prdko, ale mniejsz przepustowo (4 lub 16 Mb/s). Jest te tasza, poniewa wykorzystuje kabel miedziany, a nie wiatowodowy. W Linuksie sie Token Ring jest konfigurowana prawie tak samo jak Ethernet, a wic nie musimy jej tutaj powica wicej uwagi. W sieciach lokalnych LAN mog by te stosowane inne technologie, takie jak ArcNet czy DECNet, cho obecnie ju raczej sporadycznie. Linux rwnie je obsuguje, ale nie bdziemy ich tu opisywa. Wiele sieci pastwowych obsugiwanych przez firmy telekomunikacyjne wykorzystuje protokoy przeczania pakietw. Chyba najwiksz popularnoci cieszy si standard o nazwie X.25. Wiele sieci publicznych, takich jak Tymnet w USA, Austpac w Australii i Datex-P w Niemczech, oferuje t usug. X.25 definiuje zestaw protokow sieciowych, ktre opisuj, jak urzdzenie bdce terminalem danych, takie jak host, czy si ze urzdzeniem do przesyania danych (przecznikiem X.25). X.25 wymaga synchronicznego cza danych, a zatem specjalnego synchronicznego portu szeregowego. Mona stosowa X.25 z normalnymi portami szeregowymi pod warunkiem, e ma si specjalne urzdzenie o nazwie PAD (Packet Assembler Disassembler). PAD jest samodzielnym urzdzeniem udostpniajcym synchroniczne i asynchroniczne porty szeregowe. Obsuguje protok X.25, tak wic proste urzdzenia terminalowe mog nawizywa i przyjmowa poczenia realizowane za pomoc tego protokou. X.25 jest czsto uywany do przesyania innych protokow sieciowych, takich jak TCP/IP. Poniewa datagramy IP nie mog by w prosty sposb przetumaczone na X.25 (lub odwrotnie), s one enkapsulowane w pakietach X.25 i wysyane przez sie. W Linuksie dostpna jest eksperymentalna implementacja protokou X.25.

Sieci TCP/IP

7

Nowszym protokoem, powszechnie oferowanym przez firmy telekomunikacyjne, jest Frame Relay. Pod wzgldem technicznym ma on wiele wsplnego z protokoem X.25, ale w dziaaniu bardziej przypomina protok IP. Podobnie jak X.25, tak Frame Relay wymaga specjalnego synchronicznego portu szeregowego. Std wiele kart obsuguje oba te protokoy. Alternatyw jest urzdzenie nazywane Frame Relay Access Device (FRAD) obsugujce enkapsulacj pakietw Ethernet w pakietach Frame Relay na czas transmisji w sieci. Frame Relay znakomicie nadaje si do przesyania pakietw TCP/IP pomidzy orodkami. Linux jest wyposaony w sterowniki, ktre obsuguj pewne typy wewntrznych urzdze Frame Relay. Jeeli potrzebujesz szybszej sieci, ktra bdzie przesya wiele rnych i nietypowych rodzajw danych, takich jak cyfrowo zapisany gos i wideo, to zapewne zainteresuje ci ATM (Asynchronous Transfer Mode). ATM jest now technologi sieciow, ktra zostaa zaprojektowana tak, by zapewni atwe zarzdzanie, du prdko, mae opnienia przy przesyaniu danych i kontrol nad jakoci usug (Quality of Service QS). Wiele firm telekomunikacyjnych, ktre licz na usprawnienie zarzdzania sieci i jej obsugi, siga po infrastruktur sieci ATM, poniewa pozwala ona czy wiele rnych usug sieciowych na jednej platformie. ATM jest czsto uywana do przesyania protokou TCP/IP. W Networking-HOWTO znajdziesz informacje na temat obsugi ATM-u przez Linuksa. Czsto radioamatorzy wykorzystuj swj sprzt do czenia komputerw w sie powszechnie nosi to nazw radia pakietowego (ang. packet radio). Jednym z protokow wykorzystywanych przez nich jest AX.25, w pewnym stopniu oparty na X.25. Radioamatorzy uywaj protokou AX.25 do przesyania TCP/IP, a take innych protokow. AX.25, podobnie jak X.25, wymaga urzdzenia szeregowego, ktre moe dziaa w trybie synchronicznym lub urzdzenia zewntrznego o nazwie Terminal Node Controller, ktre konwertuje pakiety przesyane przez cze asynchroniczne na pakiety przesyane synchronicznie. Istnieje szereg rnych kart interfejsw obsugujcych radio pakietowe mwi si, e s to karty oparte na Z8530 SCC. Nazwa ta odnosi si do najpopularniejszego kontrolera komunikacyjnego uywanego do ich budowy. Dwa inne protokoy, czsto przesyane przez AX.25, to NetRom i Rose s to protokoy warstwy sieciowej. Poniewa protokoy te dziaaj w oparciu o AX.25, maj te same wymagania sprztowe. Linux w peni implementuje protokoy AX.25, NetRom i Rose. AX25-HOWTO jest dobrym rdem informacji na temat implementacji tych protokow w Linuksie. Dostp do Internetu mona rwnie uzyska poprzez poczenia komutowane do systemu centralnego korzystajce z wolnych, ale tanich czy szeregowych (telefon, ISDN i tym podobne). Wymagaj one jeszcze innych protokow przesyania pakietw, takich jak SLIP czy PPP. Opiszemy je pniej.

Protok internetowy (IP)Zapewne szczytem twoich marze nie jest sie oparta na jednym poczeniu ethernetowym lub typu punkt-punkt. Idealnie byoby, gdyby mg czy si z hostem bez wzgldu na to, jakiego typu czem fizycznym jest podczony do sieci. Na przykad w duych instalacjach, takich jak na przykadowym uniwersytecie Gro-

8

Rozdzia 1: Wprowadzenie do sieci

ucho Marx, zwykle masz kilka oddzielnych sieci, ktre s w pewien sposb ze sob poczone. Wydzia matematyki ma dwie sieci Ethernet, jedn z szybkimi maszynami dla profesorw i absolwentw, a drug z wolnymi komputerami dla studentw. Obie s podczone do szkieletowej sieci FDDI w campusie. Poczenie to jest obsugiwane przez dedykowany host zwany gatewayem, ktry obsuguje nadchodzce i wychodzce pakiety, kopiujc je midzy dwoma Ethernetami i kablem optycznym w sieci FDDI. Na przykad gdyby by na wydziale matematyki i chciaby dosta si ze swojego Linuksa do komputera quark na wydziale fizyki, oprogramowanie sieciowe nie wysaoby pakietw bezporednio do komputera quark, poniewa nie znajduje si on w tym samym segmencie Ethernet. W tym wypadku jako przekanik zostanie wykorzystany gateway. Gateway (o nazwie sophus) przekazuje te pakiety poprzez sie szkieletow do gatewaya niels na wydziale fizyki. Dopiero niels dostarcza je do docelowej maszyny. Przepyw danych pomidzy komputerami erdos i quark pokazano na rysunku 1-1.

FDDI Campus Backbone2

sophus

niels

Mathematics Ethernet1

Physics Ethernet3

erdos

quark

Rysunek 1-1. Trzy etapy wysania datagramu z erdosa do quarka

Taki sposb przekazywania danych do zdalnego hosta nazywa si rutowaniem, a w tym kontekcie pakiety czsto s nazywane datagramami. Aby uproci opisan procedur, wymian datagramw niezalenie od stosowanych urzdze, powierza si zawsze temu samemu protokoowi, ktry nosi nazw protokou internetowego (Internet Protocol IP). W rozdziale 2, Wybrane problemy sieci TCP/IP, opiszemy bardziej szczegowo zarwno IP, jak i ruting.

Sieci TCP/IP

9

Gwn zalet IP jest to, e przeksztaca on fizycznie rne od siebie sieci w jedn, stuprocentowo homogeniczn sie. Nazywa si to wspdziaaniem midzysieciowym (ang. internetworking), a uzyskana metasie to internet. Zwr tutaj uwag na subteln rnic pomidzy nazwami internet a Internet. Ta ostatnia to nazwa wasna konkretnego internetu o globalnym zasigu. Oczywicie IP wymaga take niezalenego od sprztu schematu adresowania. Taki schemat to unikalny 32-bitowy numer przypisywany kademu hostowi, zwany adresem IP. Adres IP ma zwykle posta czterech liczb dziesitnych, oddzielonych kropkami, po jednej liczbie na kady 8-bitowy segment. Na przykad quark mgby mie adres IP o postaci 0x954C0C04, ktry byby zapisany jako 149.76.12.4. Format ten jest rwnie nazywany kropkow notacj dziesitn (ang. dotted decimal notation), a czasem kropkow notacj czwrkow (ang. dotted quad notation). Dla adresw IP coraz czciej spotyka si nazw IPv4 (od Internet Protocol Version 4), poniewa nowy standard o nazwie IPv6 oferuje duo bardziej elastyczny sposb adresowania oraz inne, nowoczesne wasnoci. Ale minie co najmniej rok od wydania tej ksiki, zanim wejdzie on w ycie. Zapewne ju zauwaye, e mamy teraz trzy rne typy adresw: pierwszy to nazwa hosta, jak quark, nastpnie adres IP i jeszcze adresy sprztowe, takie jak 6-bajtowy adres ethernetowy. Wszystkie te adresy w pewien sposb musz do siebie pasowa, tak eby po napisaniu rlogin quark, oprogramowanie sieciowe mogo poda adres IP komputera quark, a nastpnie znale adres ethernetowy odpowiadajcy adresowi IP, wtedy gdy IP dostarczy ju dane do sieci Ethernet na wydziale fizyki. Sytuacj t omwimy w rozdziale 2. Teraz wystarczy zapamita, e wyszukiwanie adresw jest nazywane albo rozwizywaniem nazwy hosta, jeli dotyczy zamiany nazw hostw na adresy IP, albo rozwizywaniem adresw, jeli ma nastpi zamiana tych drugich na adresy sprztowe.

IP w czach szeregowychW czach szeregowych obowizuje standard znany jako SLIP (Serial Line IP protok internetowy cza szeregowego). Zmodyfikowana wersja SLIP, znana pod nazw CSLIP (Compressed SLIP - SLIP z kompresj), kompresuje nagwki IP, co pozwala lepiej wykorzysta relatywnie ma przepustowo cechujc wikszo czy szeregowych. Innym protokoem szeregowym jest PPP (Point-to-Point Protocol protok punkt-punkt). PPP jest bardziej nowoczesny, ni SLIP i posiada rne waciwoci, ktre stanowi o jego wikszej atrakcyjnoci. Jego gwn zalet w stosunku do SLIP jest to, e nie ogranicza si do przesyania datagramw IP, ale jest zaprojektowany tak, by mona byo przez niego przesya dowolny protok.

Protok kontroli transmisji (TCP)Wysyanie datagramw z jednego hosta do innego to nie wszystko. Jeeli zalogujesz si do quarka, bdziesz chcia mie niezawodne poczenie pomidzy twoim procesem rlogin na erdosie a procesem powoki na quarku. Tak wic informacja wysana tam i z powrotem musi by podzielona na pakiety przez nadawc i ponownie

10

Rozdzia 1: Wprowadzenie do sieci

poczona w cig znakw przez odbiorc. Cho wydaje si to trywialne, jest jednak czynnoci do zoon. Naley pamita, e IP jest z zaoenia protokoem zawodnym. Zamy, e dziesi osb w twojej sieci Ethernet rozpoczo pobieranie najnowszej wersji kodu rdowego przegldarki Netscape z serwera FTP nalecego do przykadowego uniwersytetu. Wygenerowany w ten sposb ruch moe by za duy dla gatewaya, ktry jest za wolny, i ma za mao pamici. Jeeli teraz zdarzy si, e wylesz pakiet do quarka, sophusowi moe zabrakn przez chwil miejsca na buforowanie i nie bdzie w stanie przekaza twojego pakietu. W tej sytuacji IP po prostu gubi pakiet, ktry znika bezpowrotnie. Dlatego to komunikujce si hosty s odpowiedzialne za sprawdzenie integralnoci i kompletnoci danych oraz ich ponown transmisj w przypadku bdu. To zadanie jest realizowane przez inny protok TCP (Transmission Control Protocol), ktry jest niezawodn usug ponad IP. Istotn wasnoci TCP jest to, e uywa on IP, by da ci wraenie prostego poczenia pomidzy dwoma procesami, odpowiednio na twoim hocie i zdalnej maszynie, a wic nie musisz martwi si o to, jak i ktrdy s w rzeczywistoci przesyane twoje dane. Poczenie TCP dziaa w rzeczywistoci jak dwukierunkowy potok, do ktrego oba procesy mog zapisywa i odczytywa. Dobra jest tu analogia do rozmowy telefonicznej. TCP identyfikuje punkty kocowe kadego poczenia po adresach IP dwch komunikujcych si hostw i numerach portw na kadym z nich. Porty mog by postrzegane jako punkty zaczepienia pocze sieciowych. Gdybymy wrcili do przykadu z rozmow telefoniczn, to mona sobie wyobrazi, e hosty to miasta, za adresy IP to numery kierunkowe (gdzie numery odwzorowuj miasta), a numery portw to konkretne numery lokalne (gdzie numery odwzorowuj indywidualne numery telefonw). Pojedynczy host moe realizowa wiele rnych usug, rozpoznawanych po numerze portu. W przykadzie rlogin, aplikacja klienta (rlogin) otwiera port na hocie erdos i czy si z portem 513 hosta quark, na ktrym nasuchuje serwer rlogind. W ten sposb zostaje nawizane poczenie TCP. Za pomoc tego poczenia rlogind przeprowadza procedur autoryzacji, a nastpnie uruchamia powok. Standardowe wejcie i wyjcie powoki s przekierowywane na poczenie TCP, a wic wszystko, co napiszesz w aplikacji rlogin na swojej maszynie, zostanie przekazane przez strumie TCP i podane powoce jako standardowe wejcie.

Protok datagramw uytkownika (UDP)Oczywicie TCP nie jest jedynym protokoem uytkownika w sieci TCP/IP. Cho jest odpowiedni dla aplikacji takich jak rlogin, jego zoono uniemoliwia wykorzystanie go w aplikacjach, takich jak NFS, ktre z kolei uywaj bratniego protokou UDP (User Datagram Protocol protok datagramw uytkownika). Podobnie jak TCP, UDP pozwala aplikacji na czenie si z usug na pewnym porcie zdalnej maszyny, ale bez zestawiania poczenia. Mona go wykorzysta do wysyania pojedynczych pakietw do docelowej usugi std nazwa.

Sieci TCP/IP

11

Zamy, e chcesz poprosi o niewielk porcj danych z serwera baz danych. Zestawienie poczenia TCP wymaga co najmniej trzech datagramw, kolejne trzy s potrzebne do wysania i potwierdzenia niewielkiej porcji danych w kad stron, a nastpne trzy do zamknicia poczenia. UDP obsuy takie poczenie za pomoc tylko dwch datagramw, a efekt kocowy bdzie taki sam. UDP jest protokoem bezpoczeniowym i nie wymaga zestawiania i zamykania sesji. Po prostu umieszczamy dane w datagramie i wysyamy go do serwera serwer przygotowuje odpowied, umieszcza dane w datagramie zaadresowanym zwrotnie (do nas) i przesya go z powrotem. Cho w przypadku prostych transakcji UDP dziaa szybciej i bardziej efektywnie ni TCP, nie reaguje na gubienie datagramw. Dbao o kompletno danych pozostawia si aplikacji, na przykad aplikacji serwera nazw.

Wicej na temat portwPorty mona traktowa jako punkty zaczepienia pocze sieciowych. Jeeli aplikacja chce udostpni jak usug, podcza si sama do portu i czeka na klientw (czsto nazywa si to nasuchiwaniem na porcie). Klient, ktry chce skorzysta z tej usugi, alokuje port na swoim hocie lokalnym i podcza si do portu serwera na hocie zdalnym. Ten sam port moe by otwarty na wielu rnych maszynach, ale na kadej maszynie tylko jeden proces moe otworzy port w danej chwili. Istotn wasnoci portw jest to, e gdy zostanie ustanowione poczenie pomidzy klientem a serwerem, inna kopia serwera moe podczy si do portu serwera i oczekiwa kolejnych klientw. Ta waciwo pozwala na przykad na kilka jednoczesnych zdalnych logowa do tego samego hosta wykorzystujcych port 513. TCP jest w stanie rozrni te poczenia, poniewa przychodz one z rnych portw lub hostw. Jeeli zalogujesz si dwukrotnie z erdosa do quarka, pierwszy klient rlogin wykorzysta port lokalny 1023, a drugi port 1022. Jednak oba podcz si do tego samego portu 513 hosta quark. Te dwa poczenia bd rozrniane poprzez numery portw na erdosie. W powyszym przykadzie uyto portw jako miejsca spotkania klient kontaktuje si z okrelonym portem, by uzyska dan usug. Aby klient wiedzia, z jakim numerem portu ma si kontaktowa, administratorzy obu systemw musz uzgodni przypisanie numerw portw. W przypadku popularnych usug, takich jak rlogin, numerami tymi administruje centralnie organizacja IETF (Internet Engineering Task Force), ktra regularnie publikuje RFC o nazwie Assigned Numbers (RFC-1700). Dokument ten zawiera midzy innymi numery portw przypisane dobrze znanym usugom. Linux wykorzystuje plik o nazwie /etc/services, ktry kojarzy nazwy usug z numerami portw. Warto zauway, e cho zarwno poczenia TCP, jak i UDP opieraj si na portach, to ich numery nie kc si ze sob. Oznacza to, e na przykad port 513 TCP rni si od portu 513 UDP. W rzeczywistoci porty te dziaaj jako punkty dostpu dla dwch rnych usug: rlogin (TCP) i rwho (UDP).

12

Rozdzia 1: Wprowadzenie do sieci

Biblioteka socketW uniksowych systemach operacyjnych oprogramowanie realizujce wszystkie zadania i obsugujce opisane powyej protokoy jest zwykle czci jdra. Podobnie jest w Linuksie. Najpopularniejszym interfejsem programowania w wiecie Uniksa jest biblioteka Berkeley Socket. Jej nazwa wywodzi si z popularnej analogii, w ktrej port jest postrzegany jako gniazdo, a podczanie si do portu jako wczanie do gniazda. Biblioteka udostpnia wywoanie bind, w ktrym podaje si zdalny host, protok transportowy i usug, do ktrej program moe si podczy lub ktrej ma nasuchiwa (za pomoc connect, listen i accept). Biblioteka socket jest nieco bardziej oglna, poniewa udostpnia nie tylko klas gniazd opartych na TCP/IP (gniazda AF_INET), ale take klas, ktra obsuguje poczenia lokalne do maszyny (klasa AF_UNIX). Niektre implementacje mog take obsugiwa inne klasy, takie jak protok XNS (Xerox Networking System) lub X.25. W Linuksie biblioteka socket jest czci standardowej biblioteki lib C. Obsuguje gniazda AF_INET i AF_INET6 dla TCP/IP oraz AF_UNIX dla gniazd domeny Uniksa. Obsuguje rwnie gniazda AF_IPX dla protokow sieci Novell, AF_X25 dla protokou sieci X.25, AF_ATMPVC i AF_ATMSVC dla protokow sieci ATM i AF_AX25, AF_NETROM i AF_ROSE dla protokow radia amatorskiego. Inne rodzi