Jak działa TCP Ping lub Traceroute?

9

Jak działa ping ping lub traceroute tcp? Czy bierze pod uwagę tylko czas potrzebny na ustanowienie uzgadniania TCP?

Również w pingu ICMP można określić rozmiar pakietu, czy można to osiągnąć w pingu TCP?

GeorgeU
źródło
Nie znam nikogo, kto obsługuje serwer echa tcp; może masz na myśli UDP?
Chris S,
1
Rozumiem, że istnieją narzędzia, które robią to bez ECHO. Robią to, że wysyłają pakiet SYN do routera na porcie 80 i czekają na potwierdzenie. Chcę tylko potwierdzić, że tak jest ... oto narzędzie komercyjne netscantools.com/nstpro_ping.html
GeorgeU

Odpowiedzi:

6

Wierzę, że masz na myśli te narzędzia:

http://www.vdberg.org/~richard/tcpping.html

http://michael.toren.net/code/tcptraceroute/

Ponieważ tcpping wymaga tcptraceroute, zacznę od tcptraceroute.

Autor tcptraceroute stwierdza, że ​​w przeciwieństwie do tradycyjnego traceroute: „Wysyłając pakiety TCP SYN zamiast UDP lub ICMP ECHO, tcptraceroute jest w stanie ominąć najpopularniejsze filtry zapory ogniowej”.

Ponadto: Warto zauważyć, że tcptraceroute nigdy nie nawiązuje całkowicie połączenia TCP z hostem docelowym.

Zatem tcptraceroute nie mierzy czasu potrzebnego do ukończenia trójstronnego uzgadniania, ponieważ tak się nigdy nie dzieje. Mierzy czas od początkowej SYN do SYN / ACK. Jest to czasami określane jako półotwarte skanowanie połączenia.

Ze strony podręcznika nmap:

          This technique is often referred to as half-open scanning,
          because you don’t open a full TCP connection. You send a SYN
          packet, as if you are going to open a real connection and then
          wait for a response. A SYN/ACK indicates the port is listening
          (open), while a RST (reset) is indicative of a non-listener. If
          no response is received after several retransmissions, the port
          is marked as filtered. The port is also marked filtered if an
          ICMP unreachable error (type 3, code 1,2, 3, 9, 10, or 13) is
          received.

Jeśli chodzi o pytanie o rozmiar pakietu, powyższy opis zawiera również odpowiedź. Ponieważ tcptraceroute wysyła standardowy pakiet SYN, powinien to być mały pakiet, być może 64 bajty.

dmourati
źródło
0

Nie znam żadnej standardowej specyfikacji ani implementacji referencyjnej dla „TCP Ping” lub „TCP Traceroute”, więc prawdopodobnie musisz wybrać konkretną parę narzędzi, które implementują te testy, a następnie użyć sniffera pakietów, aby zobaczyć, co robią te konkretne narzędzia .

Spiff
źródło
-2

Czy bierze pod uwagę tylko czas potrzebny na ustanowienie uzgadniania TCP?

nie ... urządzenie wysyła 3 pakiety UDP z czasem TTL (Time-to-Live) wynoszącym 1. Gdy te pakiety dotrą do routera następnego przeskoku, zmniejszy TTL do 0, a tym samym odrzuci pakiet. Wyśle ICMP Time-to-Live Przekroczony (typ 11), TTL równy 0 podczas transportu (kod 0) z powrotem do twojego komputera - z jego własnym adresem źródłowym, dlatego znasz teraz adres pierwszego routera na ścieżce .

Więcej informacji Proszę zobaczyć http://www.tek-tips.com/faqs.cfm?fid=381

Pete White
źródło
+1 Ale nie musi wysyłać trzech, które są arbitralne i kontrolowane, i z reguły wysyła pakiety ICMP inne niż UDP.
Orbling
1
Pytanie nie dotyczy tradycyjnego traceroute, który wykorzystuje ICMP lub alternatywny UDP. Jest to szczególnie ważne w przypadku Traceroute, który korzysta z pakietów TCP.
GeorgeU
@Orbling oryginalnego traceroute Uniksa i wszystkie traceroute podobne do Un * x do dnia dzisiejszego domyślnie wysyłają pakiety UDP i odzyskują czas przekroczony przez ICMP. Być może myślisz o niestandardowej implementacji traceroute, takiej jak „tracert” Microsoftu.
Spiff
-2

Traceroute '' to narzędzie do debugowania sieci, które próbuje prześledzić ścieżkę pakietu przez sieć. Traceroute przesyła pakiet z niewielkim czasem do wygaśnięcia (TTL). Na każdym routerze wartość jest zmniejszana o 1, a jeśli TTL osiągnie 0, pakiet wygasł i jest odrzucany. Traceroute zależy od powszechnej praktyki routera polegającej na wysyłaniu wiadomości ICMP o przekroczeniu czasu, udokumentowanej w RFC 792, z powrotem do nadawcy, gdy to nastąpi.

Stephen Lembert
źródło