Model TCP/IP
Plan wykładu Wstęp Warstwy modelu TCP/IP Protokoły IP i ICMP Protokoły TCP i UDP Adresacja w protokole IP Protokoły warstwy aplikacji Podsumowanie
Plan wykładu Wstęp Warstwy modelu TCP/IP Protokoły IP i ICMP Protokoły TCP i UDP Adresacja w protokole IP Protokoły warstwy aplikacji Podsumowanie
Wstęp (1) Podstawy TCP/IP są efektem pracy grupy rozwojowej sieci ARPANET stworzonej w 1968 roku w ramach programu Departamentu Obrony USA W 1971 roku projekt ARPANET został przejęty przez amerykańską agencję zaawansowanych badań systemów obrony DARPA (ang. Defence Advanced Research Projects Agency) W 1975 roku przeprowadzono pierwszy test połączenia TCP/IP między dwoma sieciami w Stanford and University College London (UCL) W 1977 roku zostało zestawione połączenie między 3 sieciami TCP/IP w USA, Wielkiej Brytanii i Norwegii
Wstęp (2) Obecnie protokoły TCP/IP są najbardziej popularnym zestawem protokołów dzięki rozwojowi Internetu Architektura TCP/IP została opracowana w celu umożliwienia komunikacji pomiędzy systemami pochodzącymi o wielu różnych dostawców Architektura TCP/IP jest powiązana z rozwojem Internetu, je standaryzacją i rozwojem zajmuje się organizacja IETF (ang. Internet Engineering Task Force), która publikuje dokumenty o nazwie RFC (ang. Request For Comments) Koncepcja funkcjonowania sieci TCP/IP zarówno w komunikacji między warstwowej i warstwowej jest taka sama jak w modelu OSI/OSI
Plan wykładu Wstęp Warstwy modelu TCP/IP Protokoły IP i ICMP Protokoły TCP i UDP Adresacja w protokole IP Protokoły warstwy aplikacji Podsumowanie
Warstwy modelu TCP/IP (1) Model TCP/IP Model ISO/OSI Warstwa aplikacji Warstwa aplikacji Warstwa prezentacji Warstwa sesji Warstwa transportowa Warstwa transportowa Warstwa sieciowa Warstwa sieciowa Warstwa dostępu do sieci Warstwa łącza danych Warstwa fizyczna
Warstwy modelu TCP/IP (2) W przypadku warstw 1 i 2 TCP/IP korzysta z już istniejących standardów sieciowych i technologii, np. Ethernet, WiFi Podstawowy protokół warstwy 3 to IP (ang. Internet Protocol), który izoluje wyższe warstwy od zagadnień pracy sieci, adresuje datagramy, zapewnia wymianę danych między niejednorodnymi systemami. Warstwa 3 używa również protokołu ICMP (ang. Internet Control Message Protocol)
Warstwy modelu TCP/IP (3) Większość zadań warstwy 4 jest realizowana przez protokół połączeniowy TCP (ang. Transmission Control Protocol), który gwarantuje dostarczenie do danych do adresata. Innym protokołem tej warstwy jest bezpołączeniowy protokół datagramowy UDP (ang. User Datagram Protocol), który nie gwarantuje pełnej poprawności i integralności przesyłanych danych Warstwie 5 i częściowo 6 odpowiadają protokoły Telnet i wirtualnego terminala Warstwom 6 i 7 odpowiada protokół przekazu plików FTP (ang. File Transfer Protocol), które zapewniają przekaz plików między niejednorodnymi urządzeniami i systemami operacyjnymi
Jednostki danych i ich przepływ TCP UDP Warstwa aplikacji strumień wiadomość DANE DANE Warstwa transportowa segment pakiet N DANE N DANE Warstwa Internet datagram datagram N N DANE N N DANE Warstwa dostępu do sieci ramka ramka N N N DANE N N N DANE
Przykładowe protokoły TCP/IP Warstwa aplikacji SMTP FTP Telnet RPC SNMP DNS Warstwa transportowa TCP UDP Warstwa Internet IP, ICMP ARP Warstwa dostępu do sieci IEEE 802.x (np. Ethernet, WiFi)
Plan wykładu Wstęp Warstwy modelu TCP/IP Protokoły IP i ICMP Protokoły TCP i UDP Adresacja w protokole IP Protokoły warstwy aplikacji Podsumowanie
Protokół IP Protokół IP (ang. Internet Protocol) jest protokołem bezpołączeniowym Protokół IPv4 został opisany w dokumencie RFC791 Informacje między stacjami są wymieniane bez potrzeby zawiązywania sesji i ustalania jej parametrów Zapewnia to prostotę działania, ale nie zapewnia niezawodnego dostarczenia danych do odbiorcy (odtworzenia połączenia po awarii) Brak kontroli przepływu pakietów
Nagłówek IPv4 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 Wersja Dł. Nagł. Typ usługi Długość całkowita Identyfikator Flagi Przesunięcie Czas życia TTL Protokół Suma kontrola Źródłowy adres IP Docelowy adres IP Opcje Uzupełn. Suma kontrolna służy do kontroli poprawności nagłówka, kontrolą nie jest objęta część pakietu zawierająca dane Protokół wskazuje na następny w hierarchii protokół zawarty w danym pakiecie IP Na koniec nagłówka mogą być dołączone dodatkowe informacje (opcje), jednak ich długość musi być wielokrotnością 32 bitów Czas życia TTL (ang. Time To Live) pomaga routerom mierzyć czas jaki pakiet pozostaje w sieci zmniejszając o 1 wartość tego pola po każdym kolejnym routerze. Kiedy TTL osiągnie wartość 0 pakiet jest usuwany z sieci Adresy IP umożliwiają przesyłanie i odbieranie pakietów Długość całkowita określa całkowitą długość pakietu IP wraz z nagłówkiem w bajtach (maksymalnie 65535) Numer wersji podaje numer wersji protokołu IP używanego przez nadawcę (np. IPv4, IPv6) Długość nagłówka to wielkość nagłówka w 32 bitowych słowach, to pole jest wykorzystywane do określenia początku nagłówka protokołu wyższej warstwy Typ obsługi (ang. Type of Service) definiuje typ usług oferowanych przez IP. Pole jest ignorowane przez większość urządzeń w sieci. Wykorzystywane również jako DSCP (ang. Differentiated Services Code Point) Identyfikator, flagi, przesunięcie służą do kontroli segmentacji pakietu, umożliwia przesyłanie pakietów podzielonych na części
Defragmentacja pakietu IP Dla każdej sieci określany jest parametr MTU (ang. Maximum Transmission Unit), który wskazują maksymalny rozmiar datagramu, który może być przesłany w sieci bez fragmentacji datagramu Jeżeli rozmiar datagramu IP przekracza MTU to datagram jest dzielony na fragmenty o wielkości niewiększej niż MTU Każdy fragment jest przesyłany w oddzielnym datagramie z odpowiednio ustawionym polem przesunięcia Po stronie odbierającej pierwotny datagram jest odtwarzany z otrzymanych fragmentów
Protokół IPv6 Protokół IPv6 to najnowsza wersja protokołu IP, będąca następcą IPv4 Pierwsze dokumenty RFC dotyczące IPv6 ukazały się w 1995 roku Do stworzenia nowej wersji IP przyczynił się w problem z kończącej się ilości adresów IPv4 oraz braki protokołu IPv4 w zakresie bezpieczeństwa, konfiguracji Adres IPv6 ma długość 128 bitów Protokół IPv6 zawiera wsparcie dla wielu nowych mechanizmów sieciowych z zakresu bezpieczeństwa, autokonfiguracji Trudno określić kiedy nastąpi przejście z IPv4 do IPv6
Protokół ICMP Protokół IP nie zawiera żadnych mechanizmów umożliwiających kontrolę pracy sieci W celu realizacji tych mechanizmów opracowano protokół ICMP (ang. Internet Control Message Protocol) opisany w RFC792 ICMP działa w warstwie sieciowej modelu TCP/IP Komunikaty protokołu ICMP przesyłane są wewnątrz datagramów IP Protokół ICMP jest wykorzystywany przez programy ping oraz traceroute
Plan wykładu Wstęp Warstwy modelu TCP/IP Protokoły IP i ICMP Protokoły TCP i UDP Adresacja w protokole IP Protokoły warstwy aplikacji Podsumowanie
Protokół TCP TCP (ang. Transmission Control Protocol) to protokół zorientowany połączeniowo działający w warstwie transportowej modelu TCP/IP Został zdefiniowany w RFC793 Protokół TCP zapewnia niezawodny system transmisji –umożliwia sterowanie przepływem, potwierdzanie odbioru, zachowanie kolejności danych, kontrolę błędów, przeprowadzanie retransmisji Wiąże się to z dość skomplikowanym i rozbudowanym sposobem obsługi i dużym nagłówkiem pakietu
Nagłówek TCP 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 Port źródłowy Port docelowy Numer sekwencyjny Numer potwierdzenia Dł. Nagł. Rezerwa Znaczniki Okno Suma kontrola Wskaźnik priorytetu Opcje Uzupełn. Suma kontrolna służy do kontroli poprawności całego pakietu Długość nagłówka wielkość nagłówka w 32 bitowych słowach Pole znaczniki zawiera bitowe flagi dotyczące dodatkowych informacji/poleceń dotyczących danego pakietu Port źródłowy oraz port docelowy zawierają numery portów procesów aplikacyjnych wysyłających oraz odbierających dane korzystających z usług TCP Numer potwierdzenia zawiera numer sekwencyjny następnego oczekiwanego bajtu po stronie odbiorczej, jednocześnie potwierdza poprawne odebranie poprzednich bajtów Okno określa liczbę bajtów jaką może zaakceptować odbiorca Numer sekwencyjny zawiera numer pierwszego bajta w segmencie
Znaczniki TCP UGR wskazuje na ważność pola wskaźnik pilności ACK wskazuje na ważność pola numer potwierdzenia PSH wskazuje na działanie funkcji wymuszającej wysyłanie segmentu RST powoduje przywrócenie stanu początkowego (wyzerowanie) połączenia SYN wskazuje, że w polu numer sekwencyjny umieszczony jest inicjujący numer sekwencyjny INS. Jest on przeznaczony do synchronizacji numerów sekwencyjnych w fazie ustanowienia połączenia FIN wskazuje, że nadawca nie ma nic więcej do nadania. Jest on traktowany jako sygnał końca danych
Połączenie TCP Do nawiązania połączenia TCP wykorzystywana jest procedura three-way handshaking Host inicjujący połączenie wysyła pakiet zawierający segment TCP z ustawioną w polu znaczniki flagą SYN Host odbierający połączenie, jeśli zechce je obsłużyć, odsyła pakiet z ustawionymi flagami SYN i ACK Następnie host rozpoczynający transmisję wysła pierwszą porcję danych z ustawioną flagę ACK. Jeśli host odbierający połączenie nie chce lub nie może odebrać połączenia odpowiada pakietem z ustawioną flagą RST Zakończenie połączenia polega na wysłaniu flagi FIN
Three-way handshaking B CLOSED LISTEN SYN-SENT <SEQ=100><CTL=SYN> SYN-RECEIVED <SEQ=300><ACK=101><CTL=SYN,ACK> SYN-RECEIVED ESTABLISHED czas ESTABLISHED <SEQ=101><ACK=301><CTL=ACK> ESTABLISHED <SEQ=101><ACK=301><CTL=ACK><DATA> ESTABLISHED ESTABLISHED
Mechanizm okna Mechanizm przesuwającego się okna (ang. Sliding window) jest używany w TCP do kontroli przepływu Rozmiar okna określa ilość danych, które nadawca może wysłać bez potwierdzenia odbioru od odbiorcy Po otrzymaniu pozytywnego potwierdzenia nadawca może wysłać kolejne dane aż do limitu wskazanego przez rozmiar okna Brak otrzymania potwierdzenia w określonym czasie powoduje retransmisje danych Potwierdzenie negatywne (np. z powodu błędu w danych) również prowadzi do retransmisji Opracowano wiele algorytmów mających na celu usprawnienie mechanizmu okna w TCP
Mechanizm okna – przykład Rozmiar wysyłanych danych wynosi 2 Rozmiar okna wynosi 4 (czyli dwa pakiety) Nadawca 9 8 7 6 5 4 3 2 1 0 Potwierdzone 5 1 -1 Odbiorca Odebrane 5 7 9 3 -1 1 ACK=5 ACK=1
UDP UDP (ang. User Datagram Protocol) to protokół bezpołączeniowy nie posiadający mechanizmów sprawdzających poprawność transmisji UDP został opisany w RFC768 Protokół UDP jest przeznaczony do transmisji krótkich wiadomości lub danych wymagających szybkiego przesłania
Nagłówek UDP 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 Port źródłowy Port docelowy Długość Suma kontrola Port źródłowy oraz port docelowy zawierają numery portów procesów aplikacyjnych wysyłających oraz odbierających dane korzystających z usług TCP Suma kontrolna służy do kontroli poprawności całego pakietu Długość nagłówka wielkość nagłówka w 32 bitowych słowach
Porty TCP i UDP Porty w protokołach TCP i UDP są używanymi w Internecie do identyfikowania działających procesów sieciowych Numery portów to liczby naturalne z zakresu od 0 do 65535 (216 - 1) Numery portów od 0 do 1023 są ogólnie znane (ang. well-known port numbers) i zarezerwowane dla standardowych usług sieciowych Porty o numerach od 1024 do 49151 mogą być używane po zarejstrowaniu w organizacji IANA Lista zarejestrowanych portów jest dostępna pod adresem http://www.iana.org/assignments/port-numbers
Przykładowe porty TCP i UDP ftp-data 20 (TCP, UDP) File Transfer Protocol telnet 23 (TCP, UDP) smtp 25 (TCP, UDP) Simple Mail Transfer Protocol DNS 53 (TCP, UDP) Domain Name Server http 80 (TCP, UDP) World Wide Web HTTP pop3 110 (TCP, UDP) Post Office Protocol - Version 3 snmp 161 (TCP, UDP) Simple Network Management Protocol https 443 (TCP, UDP) http protocol over TLS/SSL
TCP kontra UDP TCP UDP Kontrola poprawności transmisji Duży narzut informacyjny Potrzeba zestawiania połączenia Szybka transmisja Sterowania przepływem Identyfikacja procesów TAK NIE TAK NIE TAK NIE NIE TAK TAK NIE TAK TAK
Plan wykładu Wstęp Warstwy modelu TCP/IP Protokoły IP i ICMP Protokoły TCP i UDP Adresacja w protokole IP Protokoły warstwy aplikacji Podsumowanie
Adresacja w protokole IP W sieciach IP używa się adresu 32 bitowego Adres zapisuje się dziesiętnie oddzielając kolejne oktety (8 bitów) kropkami, np. 156.17.5.2 Adres ten składa się z dwóch elementów: numeru sieci oraz numeru komputera w sieci, przy czym wielkość tych elementów może się zmieniać Decyduje o tym tzw. maska, która także jest 32 bitowym ciągiem, posiadającym wartość jeden na pozycjach bitów odpowiadających numerowi sieci, a wartość zero na pozycjach bitów odpowiadających numerowi urządzenia w sieci
Klasy adresów IP Klasa A Klasa B Klasa C Klasa D Klasa A 126 (27–2) Numer sieci (7 bitów) Numer urządzenia (24 bity) 0-127 Klasa B 10 Numer sieci (14 bitów) Numer urządzenia (16 bitów) 128-191 Klasa C 110 Numer sieci (21 bitów) Numer urządzenia (8 bitów) 192-223 Klasa D 1110 Adres rozgłoszeniowy (28 bitów) Ilość sieci Ilość urządzeń Klasa A 126 (27–2) 16 777 124 (224–2) Klasa B 16 384 (214–2) 65 534 (216–2) Klasa C 2 097 152 (221–2) 254 (28–2)
Prywatne adresy IP W niepublicznej sieci intranet (wewnętrznej sieci w firmie) można wykorzystać adresy prywatne (niepubliczne) 10.0.0.0 – 10.255.255.255 172.16.0.0 – 172.31.255.255 192.168.0.0 – 192.168.255.255 Pozostałe adresy to adresy publiczne, które nie mogą się powtarzać, gdyż są widoczne w publicznym Internecie
Konfiguracja urządzenia w sieci IP Adres, który służy do identyfikacji urządzenia, musi to być adres unikalny, nie powtarzający się w sieci. Wyjątek stanowią adresy prywatne. Posiadając swój adres urządzenie może wysyłać i otrzymywać pakiety IP. Maska, która służy do określenia podsieci, do której dane urządzenie należy Brama, która umożliwia komunikację ze urządzeniami znajdującymi się w innej podsieci niż dana stacja. Adres bramy musi się mieścić w tej samej podsieci co adres stacji. Rolę bramę pełnie zazwyczaj ruter lub inne urządzenie pracujące w warstwie 3
Zastosowanie maski w adresacji IP (1) Patrząc z perspektywy pojedynczego urządzenia w sieci IP dzieli się na dwie strefy: podsieć, do której stacja należy i cała reszta W momencie pojawienia się potrzeby wysłania pakietu IP, urządzenie wylicza czy docelowy adres IP należy do tej samej podsieci Jeżeli ten warunek jest spełniony, to pakiet jest bezpośrednio wysyłany do urządzenia docelowego wykorzystując ramki warstwy drugiej (np. Ethernet) W przeciwnym razie, kiedy adres docelowy jest poza podsiecią urządzenie, to pakiet jest wysyłany na adres bramy, która jest odpowiedzialna za przekazanie tego pakietu dalej
Zastosowanie maski w adresacji IP (2) Maska ma długość 32 bitów. Pierwsza część maski składająca się z samych bitów równych 1 określa adres podsieci. Na końcowych bitach równych 0 zapisywane są adresy w ramach danej podsieci Maskę zapisuje się jak adres IP, np. 255.255.255.0 lub w postaci /24, czyli podaje się liczbę bitów określających adres podsieci Maska umożliwia adresowanie bezklasowe CIDR, wymaga to dopisania do adresu maski. Zazwyczaj dopisuje się to w postaci 156.17.30.100/24, gdzie /24 oznacza rozmiar podsieci
Przykładowe maski 255.255.255.0 (/24) rozmiar podsieci 28=256 11111111 11111111 11111111 00000000 255.255.255.128 (/25) rozmiar podsieci 27=128 11111111 11111111 11111111 10000000 255.255.255.192 (/26) rozmiar podsieci 26=64 11111111 11111111 11111111 11000000 255.255.255.224 (/27) rozmiar podsieci 25=32 11111111 11111111 11111111 11100000 255.255.255.252 (/30) rozmiar podsieci 22=4 11111111 11111111 11111111 11111100
Specjalne adresy w podsieci Pierwszy adres z zakresu wyznaczonego przez adres urządzenia i maskę to adres podsieci Jest to adres mający bity równe 0 na tych samych pozycjach co maska Na pozostałych bitach ma takie same wartości co adres urządzenia Ostatni adres z zakresu wyznaczonego przez adres urządzenia i maskę to adres rozgłoszeniowy podsieci Jest to adres mający bity równe 1 na tych samych pozycjach co maska ma bity równe 0 Adres sieci i adres rozgłoszeniowy nie może być przydzielony dla urządzenia
Liczba adresów w podsieci Zapis /n oznacza, że liczba adresów w danej podsieci to 2(32-n) , np. dla maski /24 mamy 28 = 256 adresów Pierwszy i ostatni adres z zakresu podsieci nie może być przypisany do stacji (adres podsieci i rozgłoszeniowy) Maksymalna liczba stacji w podsieci wynosi (2(32-n)–2) Dodatkowo jeden adres z zakresu musimy zarezerwować na adres bramy, czyli po odliczeniu adresu bramy zostaje (2(32-n)–3) adresów Na przykład maska 255.255.255.0 (/24) oznacza liczbę stacji w podsieci 253+1
Wyliczanie adresu podsieci - przykład 1 Adres źródłowy: 192.168.0.3 Maska: 255.255.255.0 Adres docelowy: 192.168.0.6 Adres podsieci dla stacji źródłowej (iloczyn logiczny AND) 11000000 10101000 00000000 00000011=192.168.0.3 11111111 11111111 11111111 00000000=255.255.255.0 11000000 10101000 00000000 00000000=192.168.0.0 Adres podsieci dla stacji docelowej (iloczyn logiczny AND) 11000000 10101000 00000000 00000110=192.168.0.6 Adres źródłowy i docelowy należą do tej samej podsieci
Wyliczanie adresu podsieci - przykład 1 Adres źródłowy: 192.168.0.3/24 Adres docelowy: 192.168.0.6/24 Maska /24 (255.255.255.0) oznacza, że zakres podsieci ma postać, x.x.x.0- x.x.x.255, wiec w rozważanym przypadku ten zakres to 192.168.0.0-192.168.0.255 Ponieważ adres źródłowy i docelowy mieszczą się w tym zakresie, więc należą do tej samej podsieci
Wyliczanie adresu podsieci - przykład 2 Adres źródłowy: 156.17.30.200/25 Adres docelowy: 156.17.30.130/25 Maska /25 (255.255.255.128) oznacza, że zakres podsieci ma postać, x.x.x.0- x.x.x.127 lub x.x.x.128- x.x.x.255 wiec w rozważanym przypadku te zakresy to 156.17.30.0-156.17.30.127 lub 156.17.30.128-156.17.30.255 Ponieważ adres źródłowy i docelowy mieszczą się w zakresie 156.17.30.128-156.17.30.255, więc należą do tej samej podsieci
Wyliczanie adresu podsieci - przykład 3 Adres źródłowy: 156.17.40.200/26 Adres docelowy: 156.17.40.3/26 Maska /26 (255.255.255.192) oznacza zakresy podsieci x.x.x.0- x.x.x.63 x.x.x.64- x.x.x.127 x.x.x.128- x.x.x.191 x.x.x.192- x.x.x.255 Ponieważ adres źródłowy jest w zakresie x.x.x.192- x.x.x.255, a adres docelowy w zakresie x.x.x.0- x.x.x.63, więc rozważane adresy nie należą do tej samej podsieci
Wyliczanie adresu podsieci - przykład 4 Adres źródłowy: 156.17.30.100/27 Adres docelowy: 156.17.30.70/27 Maska /27 (255.255.255.224) oznacza zakresy podsieci x.x.x.0- x.x.x.31 x.x.x.32- x.x.x.63 x.x.x.64- x.x.x.91 x.x.x.92- x.x.x.127 x.x.x.128- x.x.x.159 x.x.x.160- x.x.x.191 x.x.x.192- x.x.x.223 x.x.x.224- x.x.x.255 Ponieważ adres źródłowy jest w zakresie x.x.x.92- x.x.x.127, a adres docelowy w zakresie x.x.x.64- x.x.x.91, więc rozważane adresy nie należą do tej samej podsieci
Adres, maska i brama – przykład 1 Adres źródłowy: 10.1.0.6/16 Maska: 255.255.0.0 Brama: 10.1.0.1 Brama jest w tej samej podsieci co stacja, więc jest to prawidłowa konfiguracja
Adres, maska i brama - przykład 2 Adres źródłowy: 192.168.0.3/24 Maska: 255.255.255.0 Brama: 192.168.1.1 Brama nie jest w tej samej podsieci co stacja, więc nieprawidłowa jest brama lub maska
Adres, maska i brama - przykład 3 Adres źródłowy: 156.17.43.81/30 Maska: 255.255.255.252 Brama: 156.17.43.83 Brama to adres rozgłoszeniowy podsieci wyznaczonej przez adres i maskę, więc jest to nieprawidłowa konfiguracja
Adres, maska i brama – przykład 4 Adres źródłowy: 212.20.0.6/25 Maska: 255.255.255.128 Brama: 212.20.0.126 Brama jest w tej samej podsieci co stacja, więc jest to prawidłowa konfiguracja
Adres, maska i brama - przykład 5 Adres źródłowy: 156.17.43.83/29 Maska: 255.255.255.248 Brama: 156.17.43.80 Brama to adres podsieci wyznaczonej przez adres i maskę, więc jest to nieprawidłowa konfiguracja
Adres, maska i brama - przykład 6 Zaznacz prawidłowe maski dla komputera o adresie 10.0.0.50 znajdującego się w podsieci o adresie 10.0.0.0 /24 /25 /26 /27
Adres, maska i brama - przykład 7 Zaznacz prawidłowe maski dla komputera o adresie 192.168.0.180 znajdującego się w podsieci o adresie 192.168.0.128 /24 /25 /26 /27
Usługa NAT Usługa NAT (ang. Network Address Translation) polega na modyfikowaniu adresów w nagłówku pakietu IP w taki sposób, że adres docelowy, źródłowy lub oba są zastępowane innymi adresami Usługa NAT zazwyczaj działa na obrzeżu sieci lokalnej na styku z siecią globalną (np. firewall) W celu rozróżnienia urządzeń wewnątrz sieci stosujących adresy prywatne lub publiczne wykorzystuje się niepowtarzalne adresy portów źródłowych przypisywane do publicznych adresów IP – jest to usługa PAT (ang. Port Address Translation)
Usługa NAT – przykład LAN Internet Adres w LAN Adres w Internecie 156.17.10.5 NAT/PAT LAN 192.168.1.2/24 Internet DST=192.168.1.2:1444 DST=156.17.10.5:1444 SRC=192.168.1.2:1444 SRC=156.17.10.5:1444 SRC=192.168.1.3:1444 SRC=156.17.10.5:1344 192.168.1.3/24 Adres w LAN Adres w Internecie 192.168.1.2:1444 156.17.10.5:1444 192.168.1.3:1444 156.17.10.5:1344
Adresacja IPv6 IPv6 wspiera adresy typu unicast, multicast i anycast Podstawowy zapis adresu IPv6 to 16 bitowe części zapisane heksadecymalnie oddzielone dwukropkami, np. 2001:0db8:0000:0000:0000:0000:1428:57ab Ciąg zer w adresie można zastąpić dwoma dwukropkami, np. 2001:0db8:0:0::1428:57ab lub 2001:0db8::1428:57ab lub 2001:db8::1428:57ab Adresy IPv4 zapisuje się w IPv6 poprzedzając 32 bitowy adres IPv4 80 zerami, 16 jedynkami, np. adres 192.0.2.128 zapisujemy ::ffff:c000:280 lub ::ffff:192.0.2.128
Plan wykładu Wstęp Warstwy modelu TCP/IP Protokoły IP i ICMP Protokoły TCP i UDP Adresacja w protokole IP Protokoły warstwy aplikacji Podsumowanie
Protokoły warstwy aplikacji W warstwie aplikacji modelu TCP/IP jest dostępnych wiele protokołów związanych z usługami sieciowymi Przykładowe protokoły to: HTTP (ang. Hypertext Transfer Protocol) związany z usługą WWW SMTP (ang. Simple Mail Transfer Protocol) związany pocztą elektroniczną Telnet umożliwiający zdalną pracę na komputerze DNS (ang. Domain Name Service) to usługa przyporządkowującą adresom sieciowym IP łatwe do zapamiętania nazwy P2P (ang. Peer-to-Peer) usługa przesyłania plików
Protokół SMTP Protokół SMTP (ang. Simple Mail Transfer Protocol) umożliwia przekazywanie poczty elektronicznej w Internecie Pierwszą wersję SMTP opisano w RFC821 SMTP to prosty, tekstowy protokół, w którym określa się co najmniej jednego odbiorcę wiadomości (w większości przypadków weryfikowane jest jego istnienie), a następnie przekazuje treść wiadomości Program obsługujący protokół SMTP działa najczęściej na porcie 25 SMTP zaczęto stosować na początku lat 80-tych XX wieku Istnieje wiele programów pocztowych obsługujących SMTP
Protokół SMTP – przykład (1) List wysyłany przez Smith z komputera USC-ISIF, do Jones i Green mających konto na BBN-UNIX. Host USC-ISIF kontaktuje się z BBN-UNIX bezpośrednio. R to odbiorca, S to nadawca. R: 220 BBN-UNIX.ARPA Simple Mail Transfer Service Ready S: HELO USC-ISIF.ARPA R: 250 BBN-UNIX.ARPA S: MAIL FROM:<Smith@USC-ISIF.ARPA> R: 250 OK S: RCPT TO:<Jones@BBN-UNIX.ARPA>
Protokół SMTP – przykład (2) S: RCPT TO:<Green@BBN-UNIX.ARPA> R: 550 No such user here S: DATA R: 354 Start mail input; end with <CRLF>.<CRLF> S: Blah blah blah... S: ...etc. etc. etc. S: . R: 250 OK S: QUIT R: 221 BBN-UNIX.ARPA Service closing transmission channel
Plan wykładu Wstęp Warstwy modelu TCP/IP Protokoły IP i ICMP Protokoły TCP i UDP Adresacja w protokole IP Protokoły warstwy aplikacji Podsumowanie
Podsumowanie Model warstwowy TCP/IP to obecnie najbardziej popularny zestaw protokołów sieciowych Protokoły z rodziny TCP/IP są powszechnie stosowane w Internecie Ponieważ podstawy architektury TCP/IP zostały opracowane 30 lat temu, wiele zagadnień wymaga obecnie poprawienia Podstawowe problemy dotyczą kończącej się liczby adresów IPv4, kwestii bezpieczeństwa, QoS Nieustannie prowadzone są prace nad nowymi rozwiązaniami i protokołami TCP/IP
Technologie z rodziny Ethernet Kolejny wykład Technologie z rodziny Ethernet