1. ZASADA DZIAŁANIA SIECI INTERNET
Jak już wspomnieliśmy wcześniej Internet nie jest jedną siecią, lecz związkiem wielu mniejszych sieci. Głównym założeniem było, aby każdy komputer pracujący w dowolnej części Internetu może nawiązać łączność z dowolnym innym użytkownikiem sieci. kluczową rolę w takiej strukturze odgrywają tzw. "routery" czyli mechanizmy zajmujące się przesyłaniem pakietów danych z jednej części sieci do innej. Routery mogą mieć postać sprzętową lub występować jako programy dla Linuxa, czy Windows. Router jest punktem, który łączy ze sobą dwie sieci i każda z tych sieci interpretuje go jako swój element. W każdej części Internetu zainstalowany jest co najmniej jeden router zbierający wszystkie pakiety danych, które nie mogą być dostarczone w ramach danej sieci lokalnej i przekazuje je dalej, po czym następny router sprawdza, czy dane adresowane są do jego sieci - jeśli tak, to przekazuje je do serwera, a jeśli nie, to przesyła kolejnemu routerowi i tak do skutku, aż dane dotrą do adresata. Jeżeli jedna z dołączonych podsieci ulegnie awarii lub będzie niedostępna z powodu przeciążenia, to pakiety mogą zostać skierowane do adresata (i dotrzeć do niego) inną drogą. W ten sposób Internet spełnia najważniejszy warunek, jaki pierwotnie narzuciła mu armia Stanów Zjednoczonych: może funkcjonować dalej, pomimo uszkodzenia poszczególnych podsieci. Inną ważną cechą jest to, że choć poszczególne podsieci różnią się od siebie sposobem komunikacji, rodzajem osprzętu mogą się one komunikować ze sobą bez przeszkód dzięki odpowiednim protokołom i standardom. Protokoły internetowe dbają o to, aby odmienne właściwości poszczególnych podsieci były niewidoczne dla aplikacji internetowych.
Podstawowym protokołem w sieci Internet jest protokół TCP/IP. Najniżej w hierarchii stoi protokół IP (Internet Protocol). Pakietowy sposób przesyłu danych wymaga, aby informacje przesyłaną podzielić na ściśle określone części - pakiety. Każdy z takich pakietów, dzięki protokołowi IP, otrzymuje nagłówek, który pełni rolę etykiety adresowej. Znajdują się tam takie informacje jak: adres nadawcy i odbiorcy, długość pakietu, suma kontrolna i inne. Z danych tych korzystają m.in. routery, aby właściwie dostarczyć dane do adresata. Jednak protokól IP "nie interesuje się" co się dzieje z pakietami po wysłaniu, dlatego potrzebny jest dodatkowy protokół TCP (Transmission Control Protocol), który jest nadrzędny wobec IP i dba o to, aby pakiety dotarły w całości do adresata. Do każdego pakietu dołącza on swoją część nagłówka, w której m.in. numeruje wszystkie wychodzące pakiety i oczekuje odpowiedzi od serwera adresata czy wszystkie przesyłki dotarły, jeżeli nie, ponawia wysyłanie zagubionych części. W nagłówku TCP znajduje się również nr portu, który identyfikuje określoną usługę w sieci. Po dotarciu do serwera docelowego, serwer właśnie po tym numerze stwierdza, który z programów ma zająć się obsługą otrzymanych danych. Adresem każdego komputera w sieci Internet jest czteroliczbowy identyfikator - unikalny w skali światowej, zwany adresem IP (np. 195.164.188.161) - gdzie każda z liczb może przybierać wartość od 0 do 255. W związku z tym, że korzystanie z tak zapisanych adresów jest dość uciążliwe, wprowadzono sposób adresowania bardziej przystępny dla ludzi. Każdy z serwerów ma określoną nazwę (np. zszosw) oraz utworzono drzewiastą strukturę domen, w których serwery zostały umieszczone (np. zsosw.petex.com.pl) Poszczególne domeny oddzielone są od siebie kropkami, tak jak w adresie IP. Na samym szczycie tego systemu znajdują się "Domeny Najwyższego Poziomu" (Top-Level-Domains). Jest to ostatnia część adresu (z prawej strony). Do tej kategorii należą domeny grupujące serwery wg ich znaczenia (treści):
.com - instytucje komercyjne, np. sony.com (to w USA)
.edu - instytucje edukacyjne, np. fuw.edu.pl (w Polsce)
.gov - instytucje państwowe, agendy rządowe
.mil - organizacje wojskowe
.net - firmy oferujące usługi sieciowe
.org - organizacje niehandlowe
lub pochodzenia geograficznego np.:
.pl - Polska
.de - Niemcy
.it - Włochy
.fr - Francja
.au - Australia
.tw - Tajwan
.jp - Japonia
(spis wszystkich domen najwyższego poziomu znajduje się w "Dodatku C" - na końcu pracy)
Domeny te zdefiniowane są na stałe i nie można do nich dodawać kolejnych elementów. Jeżeli więc ktoś chce utworzyć nową domenę musi umieścić ją w ramach jednej z domen TLD. Wtedy domena ta jest Domeną Drugiego Poziomu np. (com.pl, wp.pl, nasa.gov). W taki sam sposób tworzy się domeny trzeciego (petex.com.pl, agh.edu.pl), czwartego (zszosw.petex.com.pl, zeus.polsl.gliwice.pl) itd... poziomu. W związku z tym, że programy posługują się zapisem cyfrowym (adres IP), a ludzie zazwyczaj za pomocą adresów domenowych (tekstowych) potrzebne jest oprogramowanie, które potrafi zamienić - przetłumaczyć pierwszy zapis na drugi i odwrotnie. Rolę taką spełnia usługa zwana DNS (Domain Name System). Po wpisaniu np. do przeglądarki adresu w postaci domenowej program łączy się z serwerem DNS i pobiera z niego cyfrową wersję adresu. Dopiero wówczas przystępuje do połączenia z danym komputerem.
W przypadku adresowania poczty elektronicznej do adresu komputera dodajemy jeszcze identyfikator (login) użytkownika - adresata pracującego na danej maszynie, łącząc go z adresem komputera za pomocą znaku @ np. janek@zszosw.petex.com.pl, co jest oczywiście równoważne zapisowi janek@195.164.188.161
W celu nawiązania komunikacji z serwerem internetowym potencjalny klient musi znać nie tylko jego numer IP, ale również numer portu. Z tego względu poszczególne numery portów z przedziału do 0 do 1024 są na stałe przyporządkowane różnym usługom internetowym (takim jak FTP czy IRC).
Najpopularniejsze usługi i ich numery portów:
Port |
Protokół |
Zadanie |
20 i 21 |
FTP |
Transmisja danych |
23 |
Telnet |
Zdalne połączenie |
25 |
SMTP |
Wysyłanie listów e-mail |
80 |
http |
Transmisja stron WWW |
110 |
POP3 |
Pobieranie przesyłek e-mail |
119 |
NNTP |
Usenet - listy dyskusyjne |
6667 |
IRC |
Internetowe rozmowy na żywo |
Danych tych nie trzeba pamiętać, gdyż programy same wiedzą, z jakim portem serwera mają się łączyć. Numer portu należy podać jedynie wtedy, gdy usługa uruchomiona jest na niestandardowym porcie. Metody takie stosuje się, aby ukryć określone usługi przed zwykłymi użytkownikami. W przypadku, gdy serwer WWW uruchomiony jest nie na 80 lecz np. na 7436 porcie, dostęp będą mieli tyko ci, którzy wskażą przeglądarce ten właśnie port wpisując np. : http://zszosw.petex.com.pl:7436.
2.domenowa struktura sieci
Domena internetowa - to adres, pod którym strony WWW, konta E-mail i serwery FTP są widoczne w Sieci Internet. Stanowi on niepowtarzalny identyfikator, odróżniając zasoby od innych i pozwalając w prosty sposób do nich dotrzeć
Domeny internetowe - elementy nazwy
Nazwa domeny nie jest ciągiem przypadkowych znaków - składa się z liter, cyfr i kropek zapisanych w ściśle określonej kolejności. Pod pojęciem tym kryje się część adresu internetowego znajdująca się pomiędzy "http://" lub "www." a pierwszym pojawiającym się dalej znakiem "/".
DNS - to system serwerów oraz protokół komunikacyjny zapewniający zamianę adresów znanych użytkownikom Internetu na adresy zrozumiałe dla urządzeń tworzących sieć komputerową. Adresy DNS składają się z domen internetowych rozdzielonych kropkami. DNS to złożony system komputerowy oraz prawny. Zapewnia z jednej strony rejestrację nazw domen internetowych i ich powiązanie z numerami IP.
Subdomena jest to domena podrzędna wobec innej domeny. Jest tworzona przez podmiot zarządzający domeną nadrzędną i przypisywana do określonego katalogu www.
W Domain Name System domeną drugiego poziomu jest domena znajdującą się w strukturze poniżej domeny najwyższego poziomu (TLD), inaczej ujmując domena drugiego poziomu jest subdomeną domeny najwyższego poziomu. Np. w adresie pl.wikipedia.org domeną drugiego poziomu jest wikipedia, która jest zaraz poniżej domeny najwyższego poziomu .org
Domena najwyższego poziomu (ang. TLD - Top-Level Domain) to domena internetowa powyżej której nie istnieją żadne inne domeny w systemie DNS. Każda domena w Internecie składa się z pewnej liczby nazw, oddzielonych kropkami. Ostatnia z tych nazw jest domeną najwyższego poziomu. Na przykład w 'pl.wikipedia.org' domeną najwyższego poziomu jest 'org'
Domeny krajowe są zawsze dwuliterowe, oprócz państw przyporządkowuje się je odrębnym lub autonomicznym obszarom geograficznym, np. oddzielną domenę posiada Hongkong (.hk) należący do Chińskiej Republiki Ludowej oraz Antyle Holenderskie (.an) należące do Holandii itd.
Przykłady domen krajowych
ac - Wyspa Wniebowstąpienia
ad - Andora
ae - Zjednoczone Emiraty Arabskie
af - Afganistan
ag - Antigua i Barbuda
ai - Anguilla
al - Albania
Usługi sieci Internet (angielskie Internet services), podstawowymi usługami sieci Internet, istniejącymi w niej od początku są: poczta elektroniczna i protokół przesyłania plików. Wraz z ich upowszechnieniem spopularyzowały się usługi nazywane listami dyskusyjnymi. Oprócz łączności pośredniej dużą popularnością cieszą się usługi interakcyjne, np. IRC lub ICQ.
Spopularyzowanie usługi WWW i internetowych witryn spowodowało ogromny wzrost usług komercyjnych. Internet jest, bez przesady, światową tablicą ogłoszeniową, z której bardzo łatwo można trafić do internetowego sklepu i - nie wychodząc z domu - zrobić wszechstronne zakupy. W tej masie informacji pomagają się odnaleźć internetowe wyszukiwarki.
Protokoły internetowe to podzbiór protokołów komunikacyjnych, mający zastosowanie w środowisku internetu. Protokoły internetowe to zbiór ścisłych reguł i kroków postępowania, które są automatycznie wykonywane przez urządzenia w celu nawiązania łączności i wymiany danych.
Do najpopularniejszych należą:
wiele innych
Klasy adresów IP
Poniżej przedstawiam podział na adresy prywatne i publiczne IPv4. Wyróżniamy 5 klas adresów IPv4, klasy od A do C mają podział na część sieciową i częsć hostów, maska wyznacza granice bitów przeznaczonych na sieć:
klasa A: zakres bitów na pierwszym bajcie 00000000 do 01111111, czyli adresy IP od 0.0.0.0 do 127.255.255.255, przy czym adresy od 127.0.0.0 do 127.255.255.255 są wykorzystywane dla programowej pętli testowej - loopback. Maska sieciowa 8-mio bitowa: 255.0.0.0, inny zapis maski: /8;
klasa B: zakres bitów na pierwszym bajcie 10000000 do 10111111, czyli adresy IP od 128.0.0.0 do 191.255.255.255. Maska sieciowa 16-to bitowa: 255.255.0.0; inny zapis maski: /16;
klasa C: zakres bitów na pierwszym bajcie 11000000 do 11011111, czyli adresy IP od 192.0.0.0 do 223.255.255.255. Maska sieciowa 24-ro bitowa: 255.255.255.0; inny zapis maski: /24;
klasa D: zakres bitów na pierwszym bajcie 11100000 do 11101111, czyli adresy IP od 224.0.0.0 do 239.255.255.255. Przeznaczona dla multicastu.
klasa E: zakres bitów na pierwszym bajcie 11110000 do 11111111, czyli adresy IP od 240.0.0.0 do 239.255.255.255. Zarezerwowana dla celów badawczych
Przykładowy adres IP
Adres IP 192.168.1.1 pochodzi z klasy C, więc ma maskę 24-ro bitową. Możemy to zapisać na dwa sposoby: 192.168.1.1 maska 255.255.255.0 albo 192.168.1.1/24. Adres 192.168.1.1 możemy zapisać w postaci binarnej jako 11000000.10101000.00000001.00000001.
Jak sprawdzić w jakiej sieci znajduje się dany adres IP?
Nic prostszego. Stosujemy logiczny AND miedzy adresem IP a jego maską. Przypomnę podstawowe działania na AND:
0 AND 0 = 0
0 AND 1 = 0
1 AND 0 = 0
1 AND 1 = 1
Zatem adres 192.168.1.1 z maską 255.255.255.0 potraktowany AND wygląda następująco:
11000000.10101000.00000001.00000001 (adres 192.168.1.1)
AND 11111111.11111111.11111111.00000000 (maska 24 bitowa) wynik 11000000.10101000.00000001.00000000 (czyli 192.168.1.0) Adres 192.168.1.0 jest adresem zarezerwowanym dla sieci, w której znajduje się host 192.168.1.1 z maską 255.255.255.0. Czyli adres sieci, to taki który w części przeznaczonej na adresację hostów ma same bity "0". Drugim adresem zarezerwowanym jest adres broadcastowy dla tej sieci (to taki który na części bitów przeznaczonej na adresację hostów ma bity ustawione na "1"), czyli 192.168.1.255. Adresacja prywatna IP W celu dowolnego wykorzystywania adresów IP stworzono specjalne prywatne pule adresowe w poszczególnych klasach adresów IP. Adresy można dowolnie stosować w sieciach prywatnych, natomiast aby sieć prywatną z tymi adresami IP podłaczyć do sieci globalnej (publicznej) musimy zastosować NAT (translację adresów) i posiadać przyznany adres publiczny. Adresy prywatne IP to:
Adresy IP specjalnego przeznaczenia (oprócz adresów prywatnych):
Jak optymalnie wykorzystać adresy IP? W budowaniu sieci i przydzielaniu hostom adresów pojawia się problem, tzw marnowania przestrzeni adresowej IP. Co to oznacza? Załóżmy, że mamy do dyspozycji pulę adresów sieciowych z klasy C prywatnej 192.168.1.0 z maską 255.255.255.0. Daje to nam możliwość przydzielenia 254 hostom adresów. Załóżmy, że nie mamy tak dużej ilości hostów w sieci, że potrzeba nam jest tylko kilkanaście adresów (np. 12), w takim przypadku tracimy w takiej sieci 242 adresy sieciowe. Rozwiązaniem tego problemu jest stosowanie zmiennej maski sieciowej VLSM (Variable-Length Subnet Masks), czyli możliwość podzielenia sieci na mniejsze fragmenty po tyle hostów ile nam jest potrzebne, dając nam dodatkowo możliwość podzielenia całej przestrzeni adresowej IP na wiele mniejszych podsieci. Tabela poniżej przedstawia podział VLSM sieci klasy C na ilość podsieci i liczbę adresów (łącznie z adresem podsieci i broadcastem tej podsieci): Ostatni oktet maski Reprezentacja bitowa Liczba podsieci Liczba adresów
128 1000 0000 2 128
192 1100 0000 4 64
224 1110 0000 8 32
240 1111 0000 16 16
248 1111 1000 32 8
252 1111 1100 64 4
Ostatni oktet maski należy rozumieć jako 255.255.255.X, gdzie X jest jest tym oktetem (np. maska sieciowa 255.255.255.128, pozwoli nam na zdefiniowanie 2 podsieci ze 128 adresami). Idąc dalej tym rozumowaniem daną podsieć możemy jeszcze dalej dzielić na mniejsze podsieci dostając np. w wyniku podziału jedną podsieć z maską 255.255.255.128 i dwie podsieci z maską 255.255.255.192. |