W jaki sposób traceroute i tracepath pełnią podobną funkcję w różny sposób?
Oba programy zasadniczo wykonują jedną rzecz: wysyłają i odbierają określone pakiety IP.
W tym celu można użyć zwykłego interfejsu API gniazd lub manipulować pakietami raw z interfejsu. Interfejs API gniazd nie wymaga uprawnień administratora, ponieważ jest dość bezpieczny. Istnieją wbudowane mechanizmy zapobiegające dostępowi jednego programu do pakietów IP utworzonych przez inny program.
Tracepath używa interfejsu API gniazd dla całej swojej funkcjonalności. Traceroute manipuluje pakietami raw pod kątem niektórych funkcji.
Co robi traceroute, który wymaga uprawnień roota, a ścieżka tracepout nie?
Manipuluje pakietami raw.
Aby manipulować pakietami surowymi, potrzebujesz uprawnień roota, ponieważ robiąc to, omijasz mechanizmy bezpieczeństwa interfejsu API gniazd. Uzyskujesz dostęp do komunikacji wszystkich innych procesów i użytkowników korzystających z tego interfejsu. Pomyśl tylko, co mógłby zrobić wirus, gdyby mógł manipulować pakietami raw.
Czy istnieją scenariusze, w których należy preferować ścieżkę śledzenia zamiast traceroute lub odwrotnie?
Jedną z zaawansowanych komend dostępnych w Traceroute jest możliwość uruchomienia śledzenia sieci przy użyciu protokołu IPv4 lub IPv6. Możliwe jest również wybranie między sondami formatów danych ICMP, TCP lub UDP. Traceroute może wybrać określone trasy źródła dla sondy i wybrać port, z którego ma zostać wysłany. Może ustawić limity minimalnego i maksymalnego TTL do akceptowania z sondy wychodzącej. Ponadto Traceroute może pokazywać czas oczekiwania na pingi odpowiedzi, a także ustawiać liczbę pakietów wysyłanych w każdej sondzie i liczbę sond do wysłania. Niektóre z tych poleceń mogą nie być obsługiwane przez sprzęt sieciowy na ścieżce, który może zakończyć sondę, zanim dotrze ona do miejsca docelowego.
źródła:
1
2
3
Możesz używać
traceroute
do zaawansowanego śledzenia sieci, możesz wybierać między protokołami IPv4 i Ipv6, możesz także wybierać między formatami danych ICMP, TCP lub UDP dla sondy.traceroute
Ma więc bardziej zaawansowane opcje, niżtracepath
wykorzystuje do śledzenia pakiety UDP.Teraz o uprawnieniach administratora :
możesz używać
traceroute
zarówno z normalnym użytkownikiem, jak i superużytkownikiem, który zależy od opcji, której chcesz użyć, oto przykład:Tutaj używamy pakietów UDP, które nie wymagają uprawnień administratora
Tutaj używamy pakietów echa ICMP, które wymagają uprawnień.
Za pomocą pakietów ICMP możesz wykonać atak DDOS.
Aby dowiedzieć się o opcjach ICMP Strona podręcznika Traceroute
Aby wyświetlić
traceroute
opcje, wpisz terminalman traceroute
ICMP potrzebuje uprawnień superużytkownika, aby zapewnić, że tylko administratorzy mogą korzystać z niektórych jego opcji, ponieważ można go użyć do pingowania śmierci i zbierania informacji o określonej sieci, tutaj przywilej da superużytkownikowi możliwość zmiany opcji za pomocą ICMP pakiety
Że możesz to zobaczyć, gdy próbujesz pingować tak strony internetowe
www.microsoft.com
, twój ping zakończy się niepowodzeniem nawet w trybie online, a to dlatego, że routery Microsoft blokują żądania ICMP.Tak więc linux chroni system przed nieuprzywilejowanym użytkownikiem, więc nie mogą używać tych poleceń do atakowania.
źródło
myślę, że musisz przeczytać ten http://www.ehow.com/list_7526520_differences-between-traceroute-tracepath.html
Z powyższego linku:
źródło
traceroute
wymagają dostępu administratora (zwłaszcza, że rzeczywiście wydaje się nie mniej niżtracepath
domyślnie)? A oprócz scenariuszach, w których przebywa nie superużytkownikiem, dlaczego należy wybrać jeden nad drugim?ping
itraceroute
użyj protokołu ICMP. Podobnie jak UDP i TCP jest to dostępne poprzez normalne API gniazd. Tylko numery portów UDP i TCP mniejsze niż 1024 są chronione przed użyciem, inne niż przez root. ICMP jest dostępny bezpłatnie dla wszystkich użytkowników.Jeśli naprawdę chcesz zobaczyć, jak działają ping i traceroute, możesz pobrać dla nich przykładową implementację kodu C z CodeProject .
Krótko mówiąc, po prostu otwierają gniazdo ICMP, a traceroute zmienia przyrosty TTL za pomocą setsockopt, aż do osiągnięcia celu.
Źródło: Link
źródło