Instrukcja 5 - Zastosowania protokołu ICMP

Podobne dokumenty
Katedra Inżynierii Komputerowej Politechnika Częstochowska. Zastosowania protokołu ICMP Laboratorium podstaw sieci komputerowych

ZiMSK. Routing statyczny, ICMP 1

Warstwa sieciowa. Model OSI Model TCP/IP. Aplikacji. Aplikacji. Prezentacji. Sesji. Transportowa. Transportowa

Warstwa sieciowa. mgr inż. Krzysztof Szałajko

Laboratorium 6.7.2: Śledzenie pakietów ICMP

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ

Laboratorium 6.7.1: Ping i Traceroute

Zarządzanie ruchem w sieci IP. Komunikat ICMP. Internet Control Message Protocol DSRG DSRG. DSRG Warstwa sieciowa DSRG. Protokół sterujący

LABORATORIUM SIECI KOMPUTEROWYCH (compnet.et.put.poznan.pl)

MODEL OSI A INTERNET

Akademia Techniczno-Humanistyczna w Bielsku-Białej

Sieci komputerowe. Zajęcia 3 c.d. Warstwa transportu, protokoły UDP, ICMP

Podstawy Transmisji Danych. Wykład IV. Protokół IPV4. Sieci WAN to połączenia pomiędzy sieciami LAN

Narzędzia do diagnozowania sieci w systemie Windows

Sieci komputerowe - administracja

Internet Control Message Protocol (ICMP) Łukasz Trzciałkowski

Rys. 1. Wynik działania programu ping: n = 5, adres cyfrowy. Rys. 1a. Wynik działania programu ping: l = 64 Bajty, adres mnemoniczny

Akademia Techniczno-Humanistyczna w Bielsku-Białej

Kierunek: technik informatyk 312[01] Semestr: II Przedmiot: Urządzenia techniki komputerowej Nauczyciel: Mirosław Ruciński

Aby lepiej zrozumieć działanie adresów przedstawmy uproszczony schemat pakietów IP podróżujących w sieci.

Architektura INTERNET

Laboratorium - Testowanie opóźnienia sieci za pomocą polecenia ping i traceroute

Internet Control Messaging Protocol

OBSŁUGA I KONFIGURACJA SIECI W WINDOWS

SIECI KOMPUTEROWE I TECHNOLOGIE INTERNETOWE

TCP/IP formaty ramek, datagramów, pakietów...

Sieci komputerowe - Wstęp do intersieci, protokół IPv4

Ping. ipconfig. getmac

Podstawy działania sieci komputerowych

Przesyłania danych przez protokół TCP/IP

Adresy w sieciach komputerowych

ADRESY PRYWATNE W IPv4

ARP Address Resolution Protocol (RFC 826)

Akademickie Centrum Informatyki PS. Wydział Informatyki PS

SIECI KOMPUTEROWE - BIOTECHNOLOGIA

Laboratorium podstaw telekomunikacji

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ ADRESACJA W SIECIACH IP. WSTĘP DO SIECI INTERNET Kraków, dn. 24 października 2016r.

Sieci komputerowe. Wykład 3: Protokół IP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski. Sieci komputerowe (II UWr) Wykład 3 1 / 24

Sieci Komputerowe. Protokół ICMP - Internet Control Message Protocol Protokół ICMP version 6. dr Zbigniew Lipiński

Laboratorium - Testowanie połączeń sieciowych przy użyciu ping i traceroute Topologia

Wykład 2: Budowanie sieci lokalnych. A. Kisiel, Budowanie sieci lokalnych

Całkowita długość nagłówka zróżnicowane. Numer identyfikacyjny Flagi Przesunięcie

Narzędzia diagnostyczne protokołów TCP/IP

Enkapsulacja RARP DANE TYP PREAMBUŁA SFD ADRES DOCELOWY ADRES ŹRÓDŁOWY TYP SUMA KONTROLNA 2 B 2 B 1 B 1 B 2 B N B N B N B N B Typ: 0x0835 Ramka RARP T

Akademickie Centrum Informatyki PS. Wydział Informatyki PS

Protokoły sieciowe - TCP/IP

Plan wykładu. Warstwa sieci. Po co adresacja w warstwie sieci? Warstwa sieci

polega na opakowaniu danych - w każdej warstwie modelu OSI, kolejno idąc z góry na dół - w konieczne nagłówki/stopki odpowiednich protokołów

Protokoły wspomagające. Mikołaj Leszczuk

MODEL WARSTWOWY PROTOKOŁY TCP/IP

Skąd dostać adres? Metody uzyskiwania adresów IP. Statycznie RARP. Część sieciowa. Część hosta

Laboratorium - Przechwytywanie i badanie datagramów DNS w programie Wireshark

Sieci komputerowe. Wykład 3: Protokół IP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski. Sieci komputerowe (II UWr) Wykład 3 1 / 25

1 Moduł Diagnostyki Sieci

Systemy operacyjne i sieci komputerowe Szymon Wilk Adresowanie w sieciach Klasy adresów IP a) klasa A

Sieci komputerowe - Protokoły wspierające IPv4

SIECI KOMPUTEROWE I TECHNOLOGIE INTERNETOWE

Laboratorium - Wykorzystanie programu Wireskark do badania ramek Ethernetowych

Laboratorium Sieci Komputerowych - 2

Rodzina protokołów TCP/IP

Stos protokołów TCP/IP (ang. Transmission Control Protocol/Internet Protocol)

Plan wykładu. Warstwa sieci. Po co adresacja w warstwie sieci? Warstwa sieci

ZiMSK NAT, PAT, ACL 1

Protokół ICMP. Autor: Grzegorz Burgiel 4FDS

1. Informacje ogólne: 2. Standardy TCP/IP. 2.1 Adresowanie IPv4

Laboratorium Badanie protokołu ARP w wierszu poleceń systemu Windows oraz w programie Wireshark

Wireshark

Laboratorium Sieci Komputerowych

ISO/OSI TCP/IP SIECI KOMPUTEROWE

Akademia Górniczo-Hutnicza im. Stanisława Staszica

Sieci komputerowe Warstwa transportowa

SEGMENT TCP CZ. II. Suma kontrolna (ang. Checksum) liczona dla danych jak i nagłówka, weryfikowana po stronie odbiorczej

Unicast jeden nadawca i jeden odbiorca Broadcast jeden nadawca przesyła do wszystkich Multicast jeden nadawca i wielu (podzbiór wszystkich) odbiorców

Komunikacja pomiędzy sterownikami PLC za pomocą łącza GSM GPRS

Test sprawdzający wiadomości z przedmiotu Systemy operacyjne i sieci komputerowe.

pasja-informatyki.pl

Akademickie Centrum Informatyki PS. Wydział Informatyki PS

Internet Protocol v6 - w czym tkwi problem?

Akademickie Centrum Informatyki PS. Wydział Informatyki PS

Sieci komputerowe i bazy danych

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ

Stos TCP/IP Warstwa Internetu. Sieci komputerowe Wykład 4

Gniazda surowe. Bartłomiej Świercz. Łódź,9maja2006. Katedra Mikroelektroniki i Technik Informatycznych. Bartłomiej Świercz Gniazda surowe

Wykład Nr Sieci bezprzewodowe 2. Monitorowanie sieci - polecenia

Router programowy z firewallem oparty o iptables

Konfiguracja sieci, podstawy protokołów IP, TCP, UDP, rodzaje transmisji w sieciach teleinformatycznych

Instytut Teleinformatyki

T: Konfiguracja interfejsu sieciowego. Odwzorowanie nazwy na adres.

Paweł Pokrywka. Radar w Ethernecie. Lokalizowanie hostów w sieci LAN

TCP/IP (Transmission Control Protocol / Internet Protocol) komunikacji otwartej stosem protokołów

Określanie konfiguracji TCP/IP

Plan i problematyka wykładu. Sieci komputerowe IPv6. Rozwój sieci Internet. Dlaczego IPv6? Przykład zatykania dziur w funkcjonalności IPv4 - NAT

Protokół IP. III warstwa modelu OSI (sieciowa) Pakowanie i adresowanie przesyłanych danych RFC 791 Pakiet składa się z:

dostępu do okręslonej usługi odbywa się na podstawie tego adresu dostaniemu inie uprawniony dostep

Laboratorium - Używanie programu Wireshark do badania ruchu sieciowego

Rok szkolny 2014/15 Sylwester Gieszczyk. Wymagania edukacyjne w technikum. SIECI KOMPUTEROWE kl. 2c

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ

Wireshark analizator ruchu sieciowego

Warstwy TCP/IP aplikacji - dostarcza protokoły zdalnego dostępu i współdzielenia zasobów. Aplikacje: FTP, SMTP, HTTP i wiele innych znajdują się i dzi

Laboratorium - Używanie programu Wireshark do obserwacji mechanizmu uzgodnienia trójetapowego TCP

Transkrypt:

Instrukcja 5 - Zastosowania protokołu ICMP 5.1 Wstęp Protokół ICMP (ang. Internet Control Message Protocol) to protokół internetowych komunikatów sterujących. Jest nierozerwalnie związany z inkapsulującym go protokołem IP. Można także stwierdzić, że protokół ICMP jest zestawem komunikatów, przesyłanych w datagramach IP i zdolnych do zgłaszania błędów w dostarczaniu innych datagramów IP. Tabela 5.1: Datagram IP w wersji 4 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 wersja dł. nagł. typ usługi (TOS) długość identyfikacja flagi przesunięcie fragmentacji czas życia (TTL) protokół suma kontrolna nagłówka adres IP (źródłowy) adres IP (docelowy) opcje dane Z punktu widzenia planowanych eksperymentów interesujące są następujące pola nagłówka IP: TOS Pole określa typ usługi. Pierwotnie poszczególne bity wyrażały życznie odnośnie traktowania datagramu: Flagi 0-2 określenie priorytetu, 3 wykorzystanie łącz o najmniejszym opóźnieniu, 4 wykorzystanie łącz o największej przepustowości, 5 wykorzystanie łącz o zwiększonej niezawodności, 6-7 zarezerwowane. zarezerwowana, nie fragmentować ustawienie tej flagi zabrania dokonywania fragmentacji danych przez routery pośredniczące w jego przekazywaniu. W takim przypadku jeśli rozmiar datagramu przekracza wielkość ustaloną przez administratora routera lub wynikającą z ograniczeń stosowanych technologii, data gram jest porzucany, a router powinien przesłać do nadawcy komunikat ICMP informujący, że fragmentacja jest koniczna ale zabroniona, więcej fragmentów flaga jest ustawiona gdy datagram jest nieostatnim fragmentem datagramu, który uległ fragmentacji. Czas życia TTL Pierwotnie każdy router przekazujący datagram IP był zobowiązany zmniejszyć wartość tego pola o liczbę sekund jaką przetrzymał datagram. Obecnie czas Przetwarzania datagramu przez routery jest mniejszy niż jedna sekunda i każdy router przekazujący datagram powinien zmniejszyć wartość pola TTL o 1. Datagram, którego pole TTL osiągnęło wartość 0 jest porzucany, a router powinien przesłać do nadawcy komunikat ICMP informujący o przeterminowaniu datagramu. Adres IP źródłowy 32 bity (4 bajty) określające adres urządzeni, które wysłało datagram. Adres IP docelowy - 32 bity (4 bajty) określające adres urządzenia docelowgo. W trakcie interpretacji jest on dzielony na dwie części, określające adres sieci i adres urządzenia w danej sieci.

ICMP miejsce napotkania problemu router A router B router C Rysunek 5.1: Przykładowe działanie protokołu ICMP Sam protokół ICMP jest rozwiązaniem prostym. Nagłówek składa się z dwóch pól uzupełnionych sumą kontrolną (suma kontrolna nagłówka ICMP nie obejmuje danych): Typ określa typ komunikatu (Tabela 5.3). Kod określa przyczynę wygenerowania komunikatu ICMP. Dane zawiera początkowy fragment (nagłówki protokołów) ramki, która spowodowała wygenerowanie komunikatu ICMP. Tabela 5.2: Nagłówek protokołu IP w wersji 4 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 typ kod suma kontrolna nagłówka dane Tabela 5.3: Lista wybranych typów komunikatów typ znaczenie nazwa angielska 0 zwrot echa "odpowiedź na ping" Echo Reply 3 nieosiągalność miejsca przeznaczenia (różne błędy według kodu) Destination Unreachable 4 tłumienie nadawcy Source Quench 5 zmiana trasowania Redirect Message 6 alternatywny adres hosta Alternate Host Address 8 żądanie echa Echo Request 9 ogłoszenie routera Router Advertisement 10 wybór routera Router Solicitation 11 przekroczenie limitu czasu Time Exceeded 12 problem z parametrem Parameter Problem 13 żądanie sygnatury czasowej Timestamp 14 zwrot sygnatury czasowej Timestamp Reply 15 żądanie informacji Information Request 16 zwrot informacji Information Reply 17 żądanie maski adresowej Address Mask Request 18 zwrot maski adresowej Address Mask Reply 30 śledzenie trasy Traceroute 31 błąd konwersji datagramu Datagram Conversion Error 32 zmiana adresu ruchomego węzła Mobile Host Redirect

5.1.1 Przykłady wykorzystania protokołu ICMP Zwolnienie napływania datagramów do routera w przypadku gdy router lub host jest zbyt obciążony. Powiadomienie o znalezieniu (przez router lub host) lepszej trasy do miejsca przeznaczenia. Powiadomienie o nieosiągalności miejsca przeznaczenia. Przetestowanie łączności sieciowej (np. program ping). 5.1.2 Programy wykorzystujące protokół ICMP PING Zadaniem programu jest zbadanie dostępności urządzenia sieciowego o podanym adresie. Program wysyła do niego komunikat ICMP typu 8 (żądanie echa). Urządzenie docelowe powinno w odpowiedzi przesłać do nadawcy komunikat ICMP typu 0 (odpowiedź na żądanie echa). Standardowo program wysyła cztery komunikaty z 32 bajtami danych. Tę i inne wielkości można zmienić stosując opcjonalne przełączniki (Tabela 5.4). Tabela 5.4: Wybrane przełączniki programu ping przełącznik parametr opis -t odpytuje określonego hosta do czasu zatrzymania -a tłumacz adresy na nazwy hostów. -n liczba liczba wysyłanych powtórzeń żądania. -l rozmiar rozmiar buforu transmisji. -f ustaw w pakiecie flagę "nie fragmentuj" (tylko IPv4). -i TTL czas wygaśnięcia. -v TOS typ usługi (nieaktualne). -r liczba rejestruj trasę dla przeskoków (tylko IPv4). -s liczba sygnatura czasowa dla przeskoków (tylko IPv4). -j lista_hostów swobodna trasa źródłowa wg listy lista_hostów (tylko IPv4). -k lista_hostów ściśle określona trasa źródłowa wg listy lista_hostów (tylko IPv4). -w limit_czasu limit czasu oczekiwania na odpowiedź (w milisekundach). -R użyj nagłówka routingu, aby testować także trasę wsteczną (tylko IPv6). -S adres_źródłowy adres źródłowy do użycia. -4 wymuś używanie IPv4. -6 wymuś używanie IPv6. TRACERT Zadaniem programu przedstawienie listy routerów pośredniczących w komunikacji pomiędzy dwoma urządzeniami sieciowymi. Program wysyła do urządzenia o wskazanym adresie komunikaty ICMP typu 8 (żądanie echa). Program tracert wykorzystuje dodatkowo pole TTL w nagłówku protokołu IP. Pierwszy komunikat ICMP typu 8 jest wysyłany z wartością TTL=1. Pierwszy router, który pośredniczy w komunikacji z urządzeniem docelowym zmienia wartość TTL na 0 i porzuca pakiet (Rysunek 5.2.a)). Jeśli administrator routera nie zdecydował inaczej powinien on wysłać do nadawcy komunikat ICMP typu 11 (przeterminowany datagram IP). Program tracert odbierając ten komunikat uzyskuje informację o adresie IP pierwszego routera na ścieżce. Następnie wysyłane są komunikaty ICMP typu 8 z kolejnymi wartościami pola TTL=2,3,4..., co pozwala na uzyskanie adresów IP kolejnych routerów (Rysunek 5.2). Działanie programu kończy się gdy wartość TTL jest wystarczająca by żądanie echa dotarło do urządzenia docelowego i ten odpowie komunikatem ICMP typu 0 (odpowiedź na żądanie echa) lub gdy początkowa wartość pola TTL (maksymalna liczba przeskoków) osiągnie

określoną wartość maksymalną (zwykle 30). Jeśli program tracert uzyska od usługi DNS nazwy odpowiadające uzyskanym adresom IP routerów wyświetli je obok adresów IP. Wywołanie programu tracert moży być uzupełnione opcjonalnymi przełącznikami (Tabela 5.5). Tabela 5.5: Wybrane przełączniki programu tracert przełącznik parametr opis -d nie rozpoznawaj adresów jako nazw hostów. -h maks_przes maksymalna liczba przeskoków w poszukiwaniu celu. -j lista_hostów swobodna trasa źródłowa według listy lista_hostów (tylko IPv4). -w limit_czasu limit czasu oczekiwania na odpowiedź w milisekundach. -R śledź ścieżkę błądzenia (tylko IPv6). -S adres_źródłowy adres źródłowy do użycia (tylko IPv6). -4 wymuś używanie IPv4. -6 wymuś używanie IPv6. a) wysłanie ICMP typu 8 z TTL=1 (uzyskanie adresu pierwszego serwera) TTL=1 TTL=0 router A router B router X b) wysłanie ICMP typu 8 z TTL=2 (uzyskanie adresu drugiego serwera) TTL=2 TTL=1 TTL=0 router A router B router X c) wysłanie ICMP typu 8 z TTL=N (uzyskanie adresu N-tego serwera) TTL=N TTL=N-1 TTL=N-2 TTL=0 router A router B router X Rysunek 5.2: Reprezentacja graficzna działania programu tracert

VisualRoute Lite Program ten wykonuje zadanie programu tracert uzupełniając je wizualizacją wyników, m.in. na mapie świata. Na stronie producenta (http://www.visualroute.com/) znajduje się darmowa wersja testowa oraz darmowa wersja VisualRoute Lite. Rysunek 5.3: Przykładowe działanie programu VisualRoute Monitis Visual Trace Route Tool Narzędzie to umożliwia wykonanie zdalnie programu tracert z trzech dowolnych lokalizacji (stany zjednoczone, europa, azja/pacyfik) uzupełniając wyniki wizualizacją na mapie świata. W sieci znajduje się wersja on-line (http://www.monitis.com/traceroute/).

5.2. Cel ćwiczenia Instrukcja 5 - Zastosowania protokołu ICMP Rysunek 5.4: Przykładowe działanie programu Monitis Visual Trace Route Tool 5.2 Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z przykładami zastosowania protokołu ICMP (ang. Internet Control Message Protocol). 5.3 Zadania do samodzielnego wykonania 5.3.1 Zadanie 1 Korzystając z programu ping należy sprawdzić dostępność serwerów znajdujących się w różnych lokalizacjach, np.: Instytut Inteligentnych Systemów Informatycznych, inne jednostki Wydziału Inżynierii Mechanicznej i Informatyki, inne jednostki Politechniki Częstochowskiej, Częstochowa, poza Politechniką Częstochowską, instytucje w Polsce, poza Częstochową, instytucje w Europie poza Polską, instytucje na poszczególnych kontynentach,...

5.4. Sprawozdanie Instrukcja 5 - Zastosowania protokołu ICMP 5.3.2 Zadanie 2 Korzystając z przełączników programu ping zbadać maksymalną wielkość ramki przekazywanej przez routery pośredniczące. 5.3.3 Zadanie 3 Korzystając z programu tracert należy uzyskać listę routerów pośredniczących w komunikacji z serwerami z Zadania 1. Zinterpretować różnorodność postaci uzyskanych wyników dla poszczególnych routerów. 5.3.4 Zadanie 4 Zasymulować działanie programu tracert za pomocą wielokrotnego wywołania programu ping (dla wszystkich serwerów z listy routerów pośredniczących) dla dowolnego serwera z Zadania 1. 5.3.5 Zadanie 5 Wykorzystując narzędzie Monitis Visual Trace Route Tool znaleźć serwer o jak największej liczbie zaznaczonych na mapie przeskoków. Czy pokonywana droga jest optymalna? 5.3.6 Zadanie domowe W miarę możliwości należy wykonać zadanie także z użyciem programu VisualRoute Lite. 5.4 Sprawozdanie Studenci przygotowują samodzielne sprawozdanie (ew. w zespołach pracujących przy wspólnym stanowisku komputerowym), w którym umieszczają uzyskane wyniki oraz komentarze i wnioski. Na podstawie uzyskanych nazw routerów, należy spróbować określić trasę pokonywaną przez datagramy na przybliżonej mapie Europy i Świata. Czy pokonywana droga jest optymalna?