2. Zasada działania sieci Internet
Internet to ogólnoświatowa sieć komputerowa, logicznie połączona w jednorodną sieć adresową opartą na protokole IP {Internet Protocol). Początki Internetu sięgają końca lat 60. XX wieku i związane są z projektem ARPANET realizowanym na potrzeby Departamentu Obrony rządu Stanów Zjednoczonych. Projekt ten miał na celu stworzenie sieci komunikacyjnej dla celów wojskowych, odpornej na zniszczenie. Z tego powodu sieć ta ma charakter zdecentralizowany.
Internet nie jest jedną siecią lecz związkiem wielu mniejszych sieci lokalnych połączonych razem. Każdy komputer pracujący w dowolnej części Internetu może nawiązać łączność z dowolnym innym użytkownikiem sieci. Poszczególne sieci lokalne mogą różnić się sposobem komunikacji, rodzajem sprzętu, ale mogą się komunikować ze sobą 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.
Protokoły internetowe to podzbiór protokołów komunikacyjnych, stosowanych w sieci Internet. Protokoły komunikacyjne są podzielone na warstwy. Każda warstwa zapewnia funkcjonalność wymaganą przez wyższą warstwę. Komputery w Internecie komunikują się za pomocą protokołu IP (Internet Protocol) działającego w warstwie sieciowej i TCP (Transmission ControI Protocol) działającego w warstwie transportowej. Inne protokoły, takie jak HTTP (Hypertext Transfer Protocol), wykorzystywane są w warstwie aplikacji.
Aby pracować w sieci Internet, komputer musi być w stanie komunikować się z innymi systemami za pomocą protokołu TCP/IP, a także posiadać oprogramowanie klienckie, pozwalające na wykorzystanie usług oferowanych przez innych użytkowników.
Działanie sieci Internet oparte jest na stosie protokołów TCP/IP Dane przesyłane w sieci dzielone są na pakiety. Każdy pakiet opatrzony jest nagłówkiem IP zawierającym między innymi adresy nadawcy i odbiorcy. Na podstawie tych informacji routery podejmują decyzję, jaką drogą dany pakiet powinien być dostarczony do miejsca przeznaczenia. Protokół IP nie posiada możliwości sprawdzenia, czy pakiet dotarł do miejsca przeznaczenia. W tym celu używany jest protokół TCP (Transmission Control Protocol). Do każdego pakietu dołącza on swój nagłówek, w którym między innymi numeruje wszystkie wychodzące pakiety. Jeżeli nie otrzyma od adresata potwierdzenia otrzymania pakietu, wysyła go ponownie. W nagłówku TCP znajduje się również numer portu, który identyfikuje usługę w sieci, dla której przeznaczony jest pakiet, np. port 80 zarezerwowany jest dla WWW.
Internet wykorzystywany jest coraz częściej w biznesie, edukacji, rozrywce i wielu innych dziedzinach życia. Dzięki Internetowi można:
korzystać z informacji znajdujących się na innych komputerach, przesyłać korespondencję,
przesyłać pliki, np. zawierające obrazy, filmy, dźwięki, prowadzić dyskusje z innymi użytkownikami,
dokonywać zakupów w sklepach internetowych,
korzystać z porad innych użytkowników w ramach grup dyskusyjnych.
Aby zrealizować określone zadanie w Internecie, musimy skorzystać z oferowanej w sieci usługi. Usługi mogą być świadczone przez wszystkich użytkowników sieci oraz przez dostawców usługi Internetu ISP (Internet Service Provider), którzy oprócz łącza mogą oferować również: hosting stron internetowych WWW, hosting serwerów internetowych FTP, pocztę elektroniczną (e-mail).
Do najważniejszych usług oferowanych w Internecie należą:
WWW (World Wide Web) - umożliwia przeglądanie informacji znajdujących się na serwerach,
poczta elektroniczna (e-mail) - polega na przesyłaniu informacji tekstowych lub HTML w postaci elektronicznej między użytkownikami sieci. Do informacji mogą być dołączone inne pliki w postaci załączników.
grupy dyskusyjne - umożliwia przesyłanie poczty do grupy użytkowników zainteresowanych danym zagadnieniem, co może prowadzić do otwartej dyskusji na dany temat.
IRC (Internet Relay Chat) - umożliwia rozmowę w postaci wymiany komunikatów tekstowych z kilkoma użytkownikami Internetu jednocześnie.
|
|
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
W warstwie aplikacji funkcjonują protokoły obsługujące daną usługę. Ich nazwa może być taka sama jak nazwa usługi, np. protokół FTP obsługuje usługę FTP. Usługa może być też obsługiwana przez różne protokoły, np. do obsługi poczty elektronicznej wykorzystywany jest protokół SMTP - wysyłanie poczty oraz POP3 lub IMAP - odbieranie poczty.
Najpopularniejsze protokoły internetowe warstwy aplikacji przedstawiono w tab. 2.1. Tabela 2.1. Wybrane protokoły internetowe warstwy aplikacji
|
|
|
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Korzystając z sieci komputerowej, musimy zidentyfikować komputer, z którego zasobów chcemy skorzystać. Możemy w tym celu wykorzystać jego adres IP, ale zapamiętanie długiego ciągu liczb jest dla przeciętnego użytkownika trudne. Ludzie łatwiej zapamiętują nazwy niż ciągi liczb. Komputerom w sieci zaczęto więc nadawać unikatowe nazwy wykorzystywane do ich identyfikacji. Nazwy te tworzą drzewiastą strukturę domen. Poszczególne domeny oddzielone są od siebie kropkami. Na samym szczycie drzewa znajdują się Domeny Najwyższego Poziomu (Top-Level-Domains). Domeny te grupują serwery według ich przeznaczenia, np.
.com - instytucje komercyjne,
.edu - instytucje edukacyjne,
,gov - instytucje państwowe, agendy rządowe,
.mil - organizacje wojskowe,
.net - firmy oferujące usługi sieciowe,
.org - organizacje niekomercyjne,
lub położenia geograficznego, np.
.pl - Polska, .de - Niemcy, .it - Włochy, .fr - Francja itd.
Domeny te są zdefiniowane na stałe i nie można do nich dodawać kolejnych elementów. Nowe domeny tworzone są w ramach jednej z istniejących domen, np. onet.pl utworzona jest jako poddomena domeny .pl.
Za zamianę unikatowej nazwy komputera w sieci na jego adres IP odpowiada domenowy system nazw DNS (Domain Name Sewer). System DNS jest rozproszoną bazą danych. Dane zapisane są na serwerach nazw domen, przy czym każdy serwer DNS posiada informacje o komputerach z domeny, którą obsługuje oraz informacje o adresie serwera obsługującego domenę nadrzędną. Gdy wpisujemy w okno adres domenowy, przeglądarka komunikuje się z serwerami DNS i uzyskuje informacje o adresie IP komputera, na którego dysku są umieszczone pliki danej strony.
Korzystanie z Internetu dla wielu ludzi stało się sprawą naturalną, wykonywaną codziennie. Czasami powoduje to narażanie się na niekorzystne czynniki. Głównym z nich jest uzależnienie się od Internetu. Wielu ludzi, zwłaszcza młodych, przestaje dostrzegać różnicę pomiędzy światem realnym a Internetem. Często zdarza się, że Internauta ma problemy z kontaktami z ludźmi bez pomocy Internetu. Młodzi ludzie często poświęcają cały swój czas na „surfowanie po sieci", gry on- line lub pogawędki, co wiąże się z zaniedbywaniem obowiązków i innych form życia społecznego.
W sieci wolność słowa jest nieograniczona, co jest niewątpliwie wielką zaletą ale często bywa nadużywana. Wprawdzie istnieje netykieta, czyli zbiór zasad zachowania w sieci, ale wielu ludzi jej nie przestrzega. Ludzie czują się w Internecie anonimowi, choć w rzeczywistości tacy nie są w związku z tym nie zawsze zachowują się tak, jak w środowisku realnym, gdzie podlegają kontroli otoczenia. Internet stanowi również doskonały środek do propagowania treści niezgodnych z ogólnie przyjętymi normami. Zwłaszcza młodzi ludzie i dzieci narażeni są na treści faszystowskie, pornografię, przemoc itp.
Inną kategorią zagrożeń jest zagrożenie prywatności. Wielu użytkowników sieci udostępnia swoje dane personalne, adresy, numery telefonów, a w przypadku transakcji finansowych, również numery kont i kart kredytowych. Informacje tego typu mogą być wykorzystane przez innych użytkowników sieci nie zawsze zgodnie z prawem i przez to narazić Internautę na nieprzyjemności i straty finansowe. Szczególną uwagę należy zwrócić podczas korzystania z usług wymagających podania hasła lub numeru karty kredytowej. Podczas korzystania z tego typu usług należy bezwzględnie korzystać z „bezpiecznych protokołów", które stosują szyfrowanie informacji przesyłanych przez sieć. Aby odczytać ich treść, konieczna jest znajomość klucza kryptograficznego. Przed dokonaniem transakcji internetowej należy upewnić się, że korzystamy z bezpiecznego protokołu. W przypadku przeglądarki internetowej, zamiast domyślnego protokołu http będzie używany szyfrowany protokół https, a dodatkowo pojawi się symbol kłódki oznaczającej szyfrowanie treści przesyłanych danych. Na rysunku 2.1 zaznaczono miejsca, na które należy zwrócić uwagę. W przypadku wątpliwości dotyczących autentyczności strony możemy dodatkowo zweryfikować certyfikat serwera. Każda instytucja dokonująca transakcji finansowych powinna posiadać aktualny certyfikat potwierdzający autentyczność ich strony internetowej. Pokazany na rys. 2.2 certyfikat pojawi się po kliknięciu na ikonę wystawcy certyfikatu (rys. 2.1).
Rys. 2.1. Bezpieczny protokół przeglądania stron
Rys. 2.2. Certyfikat potwierdzający autentyczność strony
Liczba komputerów przyłączonych do Internetu ciągle rośnie. Każdy z komputerów pracujących w sieci musi posiadać unikatowy adres IP przydzielony przez odpowiedni urząd Internet AssignedNumbers Authority (IANA). Adresy takie nazywane są publicznymi; możemy je uzyskać w urzędzie IANA lub od naszego dostawcy usług internetowych. W takim przypadku otrzymujemy adres z puli przydzielonej naszemu dostawcy.
Aby umożliwić wszystkim komputerom w danej instytucji, np. szkole, korzystanie z Internetu, należałoby przydzielić każdemu z nich indywidualny adres publiczny. Sytuacja taka byłaby niekorzystna z powodu szybkiego wyczerpania dostępnej puli adresów. Aby rozwiązać ten problem, zarezerwowano pule adresów prywatnych. Adresy te można dowolnie stosować w sieciach lokalnych. Komputery z adresami prywatnymi nie mogą bezpośrednio wymieniać danych w Internecie. Możliwe jest to dopiero po przetłumaczeniu adresów prywatnych na adres publiczny za pomocą usługi NAT (Network Address Translation). Tłumaczenie adresów odbywa się w bramie internetowej umieszczonej pomiędzy siecią prywatną a Internetem. Adresy prywatne pakietów wychodzących z sieci prywatnej są tłumaczone na adres publiczny bramy. Pakiety przychodzące z Internetu adresowane są do bramy i tłumaczone przez NAT na adresy prywatne.
Sieć lokalna może być przyłączona do Internetu za pośrednictwem urządzenia nazywanego routerem. Router jest urządzeniem wyposażonym w co najmniej dwa interfejsy sieciowe. Jeden z nich wykorzystywany jest do przyłączenia sieci do Internetu (interfejs zewnętrzny), drugi umożliwia przyłączenie sieci lokalnej (interfejs wewnętrzny). Rolę routera może pełnić komputer wyposażony np. w dwie karty sieciowe oraz odpowiednie oprogramowanie (router programowy), albo specjalnie do tego celu zaprojektowane urządzenie sieciowe - router sprzętowy. W sieci lokalnej możemy używać adresów prywatnych. Przyłączenie sieci do Internetu wymaga, co najmniej jednego, publicznego adresu, który będzie przypisany do interfejsu zewnętrznego routera. Od strony Internetu cała sieć lokalna widziana będzie pod tym adresem. Router pełnił będzie rolę bramy, przez którą przechodzić będą wszystkie dane pomiędzy siecią lokalną a Internetem. Router będzie realizował usługę translacji adresów, to znaczy będzie tłumaczył adresy prywatne, używane w sieci lokalnej, na adres publiczny (lub wiele adresów). Schemat przyłączenia sieci lokalnej do Internetu pokazano na rys. 2.3.
Istnieją dwie odmiany translacji adresów:
Translacja adresów źródłowych SNAT (Source NAT) - umożliwia komputerom w sieci prywatnej dostęp do Internetu. W pakietach, których źródłem są komputery w sieci lokalnej, opuszczających sieć źródłową router zamienia prywatny adres IP źródła na adres publiczny swojego interfejsu, a numer portu źródłowego na inny, wolny numer portu. Router zapamiętuje tę zmianę w tablicy translacji w postaci odwzorowania
lokalny adres IP.lokalny port^publiczny adres IP.publiczny port Na tej podstawie, gdy do routera, na adres interfejsu zewnętrznego, dotrze pakiet z odpowiedzią będzie mógł przetłumaczyć adres i numer portu zgodnie z zapamiętanym odwzorowaniem i skierować pakiet do odpowiedniego komputera w sieci lokalnej. Numer portu pozwala na jednoczesne korzystanie z jednego adresu IP przez wiele komputerów w sieci lokalnej.
Translacja adresów docelowych DNAT (Destination NAT) - umożliwia komputerom z sieci publicznej, np. Internetu, dostęp do usług oferowanych przez serwery znajdujące się w sieci lokalnej. W pakietach, których źródłem są komputery w Internecie, docelowy adres IP jest ustawiony na publiczny adres zewnętrznego interfejsu routera. Router zamienia ten adres na adres serwera zgodnie z zapisanym w konfiguracji odwzorowaniem. Numer portu docelowego na ogół nie ulega zmianie. Gdy router otrzymuje odpowiedź od serwera w sieci lokalnej, dokonuje translacji prywatnego adresu źródłowego na adres publiczny swojego zewnętrznego interfejsu i przesyła pakiet do komputera w Internecie. Przykład konfiguracji interfejsów routera sprzętowego firmy Linksys pokazano na rys. 2.4.
Oprócz usługi NAT większość routerów oferuje również funkcje zapory sieciowej.
Rys. 2.4. Konfiguracja interfejsów routera sprzętowego
Zapora sieciowa (firewall) - jest jedną z możliwości zabezpieczania sieci i systemów przed nieuprawnionym dostępem, np. z Internetu lub przed nieuprawnionym wypływem danych z sieci lokalnej na zewnątrz. Zapora sieciowa może stanowić ochronę pojedynczego komputera, np. funkcja ta wbudowana jest w nowoczesne systemy operacyjne i niektóre programy antywirusowe. Może również chronić całą sieć i w takim przypadku najlepiej skonfigurować tę usługę na urządzeniu pełniącym rolę bramy. Podstawowym zadaniem zapory jest filtrowanie ruchu danych przechodzących przez urządzenie. Filtrowanie danych może polegać na odrzuceniu lub zaakceptowaniu danych na podstawie zdefiniowanych reguł. Reguły pozwalają na filtrowanie ruchu na różnych poziomach na podstawie informacji w nagłówkach:
warstwy dostępu do sieci (źródłowe i docelowe adresy MAC),
warstwy sieciowej (adresy IP nadawcy i odbiorcy, rodzaj przenoszonego protokołu),
warstwy transportowej (porty źródłowe i docelowe),
warstwy aplikacji (protokoły takie jak FTP, HTTP, Telnet).
Najbardziej zaawansowane rozwiązania pozwalają również na kontrolowanie zawartości pakietów w poszukiwaniu na przykład słów uznawanych za niebezpieczne.
Zwykle najprostsze reguły filtrowania ograniczają się do kontroli adresu źródłowego, adresu docelowego i numeru portu. Jeżeli pakiet danych spełnia wymagania administratora jest przepuszczany, jeśli nie jest blokowany.
Na rysunku 2.5 pokazano przykład konfigurowania zapory w routerze sprzętowym.
Rys. 2.5. Konfigurowanie zapory w routerze sprzętowym
Serwer pośredniczący (prozy) to specjalny serwer, którego zadaniem jest buforowanie na dysku lokalnym odwiedzonych wcześniej stron WWW. Serwer proxy może być skonfigurowany na komputerze w sieci lokalnej. Przeglądarka WWW najpierw sprawdza, czy żądanych stron nie ma na serwerze proxy. Jeśli są to pobiera je z serwera, korzystając z sieci lokalnej. W takim przypadku pobieranie stron wcześniej przeglądanych, np. przez innego użytkownika sieci, nie wymaga pobrania danych z Internetu. Jeśli strony nie ma w buforze, to pobiera ją z Internetu i zapisuje w buforze. Korzystanie z proxy zmniejsza obciążenie połączenia z Internetem, skracając jednocześnie czas oczekiwania na dane (ale dotyczy to tylko stron wcześniej odwiedzonych).
Ćwiczenie 2.1. Konfiguracja przeglądarki do współpracy z serwerem proxy
Aby skonfigurować przeglądarkę Internet Explorer do współpracy z serwerem proxy, należy:
Uruchomić przeglądarkę.
Wybrać z menu polecenie Narzędzia/Opcje internetowe.
Kliknąć zakładkę Połączenia, a następnie przycisk Ustawienia sieci LAN.
Zaznaczyć opcję Użyj serwera proxy...
Wpisać adres IP serwera proxy w polu Adres oraz numer portu w polu Port (rys. 2.6).
Zatwierdzić wybrane opcje klawiszem OK.
Rys. 2.6. Konfiguracja serwera Proxy
Sprawdź w sieci adres IP swojego komputera, adres bramy internetowej oraz adresy serwerów DNS. Czy adres Twojego komputera jest prywatny, czy publiczny?
Połącz się z witryną internetową dowolnego banku i sprawdź jego certyfikat autentyczności.