Protokół ICMP


 
  Strona główna
  Inf. podstawowe
  Budowa pakietu
  Szczegóły działania
    ICMPv4
    ICMPv6
  Typy komunikatów  
    ICMPv4
    ICMPv6
  Opcje ICMPv6
  Przykłady działania
    Polecenie ping
    Polecenie traceroute
    Redirect
  Kod źródłowy
 

Działanie polecenia systemowego ping

Polecenie systemowe ping wykorzystuje komunikaty ICMP Echo Request i Echo Reply. Pierwszy z wymienionych komunikatów jest przez program wysyłany pod podany adres docelowy. Pole typu ma zawsze wartość 8 dla ICMPv4 lub 128 dla ICMPv6 natomiast kod - wartość 0. Polecenie ping wpisuje w pole identyfikatora jakąś wartość losową na początku swojego działania i nie zmienia go. W pole numeru sekwencji wpisywana jest na początku wartość 1 natomiast obszar danych wypełniany jest dowolnymi (lub podanymi przy wywoływaniu polecenia) informacjami tak, aby zapełnić jego wymaganą długość. Tak przygotowana wiadomość wysyłana jest do urządzenia docelowego po uprzednim obliczeniu sumy kontrolnej.
Pierwsze urządzenie może wysłać kilka komunikatów Echo Request następujących po sobie. Przed wysłaniem kolejnego, program zwiększa wartość pola numeru sekwencji o 1. Na każdy z wysłanych komunikatów powinien otrzymać odpowiedź Echo Reply. Aby móc odróżnić, na które z wysłanych wiadomości odpowiedź została dostarczona, porównuje pola identyfikatora i numeru sekwencji.
Pierwsze urządzenie, otrzymując komunikat zwrotny, może stwierdzić czy został on dostarczony bez żadnych przekłamań. Mechanizm automatycznego odsyłania odpowiedzi na wiadomość ICMP Echo Request daje możliwość sprawdzenia, czy dane urządzenie sieciowe i cała sieć działa poprawnie i można się przez nie komunikować. W każdym systemie operacyjnym istnieje polecenie ping. Szczegóły jego działania mogą być jednak nieco inne od wyżej opisanych.


Autorzy: Dariusz Obidowski
Marek Wardziński

22.01.2003r.