modified on 1 lip 2010 at 11:23 ••• 6 209 views

Ping

Z MikroTik Wiki

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

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.

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.

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.

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


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


Linki zewnętrzne


Zaciągnięte z http://pl.wikipedia.org/wiki/Ping