Ping
Z Wikipedii
- Właściwy tytuł tego artykułu to ping. Z powodu ograniczeń technicznych tytuł tego artykułu jest nieprawidłowy.
ping – nazwa programu używanego w sieciach komputerowych TCP/IP (takich jak Internet) służącego do diagnozowania połączeń sieciowych. Pozwala na sprawdzenie czy istnieje połączenie pomiędzy hostami testującym i testowanym. Umożliwia on także określenie jakości połączenia między nimi poprzez mierzenie liczby zgubionych pakietów oraz czasu potrzebnego na ich transmisję, czyli pomiaru latencji pakietów zwanej lagami.
Mike Muuss (1958-2000) wymyślił i napisał pierwszą implementację pinga w grudniu 1983 pod 4.2aBSD UNIX. Razem z koniecznymi zmianami w jądrze systemu pojawiła się ona w 4.3BSD UNIX.
Spis treści |
[edytuj] Nazwa
Autor użył nazwy sygnału z aktywnego sonaru, który jest emitowany w kierunku innego okrętu w celu jego dokładnej identyfikacji. W obu przypadkach wysyłany jest sygnał, który po pewnym czasie wraca odbity.
Później inni uznawali nazwę ping jako skrótowiec. Jednym z popularniejszych rozwinięć w języku angielskim jest Packet Internet Groper (groper to ten kto szuka po ciemku/po omacku).
Przez analogię do technologii sonaru, autor używał również nazwy ping na pakiety używane przez program.
[edytuj] Działanie
Ping korzysta z protokołu ICMP, wysyła pakiety ICMP Echo Request i odbiera ICMP Echo Reply.
Większość publicznie dostępnych serwerów obsługuje te pakiety. W takiej sytuacji aplikacja ping pozwala na sprawdzenie poprawnego działania sieci komputerowej, jednakże większość użytkowników programu ping jest błędnie przekonana, że jeśli zdalny host nie odpowiada na wysłane pingi, to jest tak tylko gdy nie jest włączony lub jest problem z siecią pomiędzy oboma maszynami.
Warto dlatego pamiętać, iż blokowanie wysyłania pakietów-odpowiedzi ICMP Echo Reply (stosuje się do tego celu zapory sieciowe lub filtry w routerach) jest jedną z powszechnych metod ochrony przed atakiem z sieci. Jest tak gdyż analiza pakietów ICMP Echo Reply nie tylko potwierdza istnienie hosta pod danym adresem IP, ale często również pozwala na dokładne określenie systemu operacyjnego, co ułatwia zaatakowanie komputera.
Również odpowiedź na ping nie oznacza, że serwis (np. witryna www) na tym systemie pracuje, a nawet, że system operacyjny w dalszym ciągu działa.
[edytuj] Przykłady działania
Implementacje pod AIX i z pakietu iputils (dla systemów UNIX, Linux i Cygwin) domyślnie wysyłają pakiety bez przerwy, wersje z Solaris domyślnie tylko podają czy otrzymano odpowiedź, implementacje w Microsoft Windows domyślnie wysyłają tylko cztery pakiety.
[edytuj] System Linux
root@alfa:~# ping -c 5 pl.wikipedia.org PING pl.wikipedia.org (130.94.122.197): 56 octets data 64 octets from 130.94.122.197: icmp_seq=0 ttl=46 time=26.5 ms 64 octets from 130.94.122.197: icmp_seq=1 ttl=46 time=26.1 ms 64 octets from 130.94.122.197: icmp_seq=2 ttl=46 time=25.1 ms 64 octets from 130.94.122.197: icmp_seq=3 ttl=46 time=26.1 ms 64 octets from 130.94.122.197: icmp_seq=4 ttl=46 time=27.1 ms --- pl.wikipedia.org ping statistics --- 5 packets transmitted, 5 packets received, 0% packet loss round-trip min/avg/max = 250.1/260.3/270.1 ms
[edytuj] System Solaris
gniezno% ping pl.wikipedia.org pl.wikipedia.org is alive
[edytuj] System Windows
C:\WINDOWS>ping pl.wikipedia.org Badanie rr.knams.wikimedia.org [145.97.39.155] z użyciem 32 bajtów danych: Odpowiedź z 145.97.39.155: bajtów=32 czas=55ms TTL=49 Odpowiedź z 145.97.39.155: bajtów=32 czas=55ms TTL=49 Odpowiedź z 145.97.39.155: bajtów=32 czas=55ms TTL=49 Odpowiedź z 145.97.39.155: bajtów=32 czas=55ms TTL=49 Statystyka badania dla 145.97.39.155: Pakiety: Wysłane = 4, Odebrane = 4, Utracone = 0 (0% utraconych), Szacunkowy czas błądzenia pakietów w milisekundach: Minimum = 55ms, Maksimum = 55ms, Średnia = 55ms
[edytuj] Zobacz też
inne narzędzia diagnozujące sieć
sposoby ataków na serwer internetowy za pomocą zapytań ICMP Echo Request