Traceroute
![]() | |
Typ softwaru | příkaz |
---|---|
Některá data mohou pocházet z datové položky. |
Program traceroute
slouží k analýze počítačové sítě. Vypisuje uzly (resp. směrovače) na cestě datagramů od zdroje až k zadanému cíli. Uzly jsou zjišťovány pomocí snížení hodnoty TTL v hlavičce datagramů. Program traceroute
je standardně obsažen ve většině unixových systémů. V systému Microsoft Windows je přímo v základní instalaci obsažen program tracert
.
Popis funkce
Nástroj traceroute
zvyšuje hodnotu „time to live“ (TTL) po každém úspěšném odeslání balíčku paketů. První tři pakety mají jednotnou hodnotu TTL nastavenou na 1 (odesílají se současně), další tři pakety mají hodnotu TTL 2 atd. Při cestě k cíli paket prochází jednotlivými směrovači (uzly). Při průchodu směrovač sníží hodnotu TTL o 1 a pošle ho dál. Je-li hodnota TTL paketu nula a není v cílové IP síti, pak je paket zahozen a směrovač pošle chybovou ICMP zprávu odesílateli (nástroj zároveň vypíše délku odezvy podobně jako nástroj ping). Nástroj traceroute
využívá právě těchto chybových hlášení, aby vypsal trasu paketu od odesílatele k cíli (resp. uzly, přes které paket na cestě ke svému cíli prochází). Ve výpisu jsou zobrazeny jen ty uzly, které položku TTL snižují (tj. routery). V některých moderních sítích je snižování TTL na routerech vypnuté, aby v IPv4 nemusely být přepočítávány kontrolní součty v hlavičkách datagramů, což je náročné na výpočetní výkon. Takové chování může jednak způsobit v takové síti zahlcení (při chybě ve směrování datagram „neumře“ a začne donekonečna kroužit) a také skryje strukturu sítě (takové routery se ve výpisu neobjeví). Někteří správci routerů kvůli DoS útokům vypínají odpovědi, takže trasování nefunguje (nebo je zapomínají povolit, případně povolí jen jednu z možných variant ICMP/UDP), v takových případech se ve výpisu objevují hvězdičky (očekávaná odpověď nepřišla). Záměrné vypínání odpovědí má za cíl skrýt topologii sítě, avšak není reálně účinné (jde o Security through obscurity), protože ji lze zjistit i jinými způsoby (např. manipulací TTL u datagramů TCP protokolu).
Odesílané datagramy mohou být UDP, ICMP nebo TCP. V Microsoft Windows se standardně používá ICMP, v unixových systémech se standardně používá UDP, ale použitý typ lze změnit pomocí parametru (-I
, -T
, -U
).
Použití
Nástroj lze použít pro zjišťování cesty nebo problémů se sítí díky výpisu jednotlivých uzlů, přes které paket prochází. Lze s ním identifikovat problémy s routery nebo firewally, které mohou blokovat přístup do sítě. Pro IPv6 existuje varianta traceroute6
, případně nástroj umí obě varianty (přepínání parametry -4
, -6
, ve Windows pak /4
nebo /6
). Díky dynamickému směrování však nemusí být údaje o vypsané cestě směrodatné.
Příklad
Použití příkazu tracert
v příkazovém řádku Windows:
C:\DocsSettings\rawiry>tracert seznam.cz Výpis trasy k seznam.cz [77.75.76.3] s nejvýše 30 směrováními: 1 < 1 ms < 1 ms < 1 ms 147.230.163.250 2 < 1 ms < 1 ms < 1 ms 147.230.250.65 3 < 1 ms < 1 ms < 1 ms router-h.tul.cz [147.230.250.18] 4 < 1 ms < 1 ms < 1 ms 147.230.250.49 5 47 ms 4 ms 203 ms r84-r40.cesnet.cz [195.113.156.110] 6 4 ms 4 ms 4 ms nix-pv.pater.iol.cz [194.50.100.160] 7 4 ms 4 ms 4 ms 194.228.21.101 8 4 ms 4 ms 4 ms 194.228.36.1 9 4 ms 4 ms 4 ms www.seznam.cz [77.75.76.3] Trasování bylo dokončeno.
Použití v Linuxu:
$ traceroute idnes.cz traceroute to idnes.cz (194.79.52.192), 30 hops max, 40 byte packets 1 neptun.domena.cz (10.200.0.1) 0.188 ms 0.105 ms 0.095 ms 2 ten155-r1-nextel.cesnet.cz (195.178.64.117) 0.530 ms 0.691 ms 0.467 ms 3 r84-r40.cesnet.cz (195.113.156.110) 23.732 ms 23.817 ms 24.205 ms 4 nix1.mafra.cz (194.50.100.156) 4.268 ms 4.261 ms 4.264 ms 5 194.79.55.3 (194.79.55.3) 4.360 ms 4.737 ms 4.883 ms
V příkladech je vidět, že v Linuxu se zobrazuje výstup s vyšší přesností.
Bezpečnost
traceroute
zpřístupňuje velmi detailní informace o jednotlivých bodech na cestě k nějakému cíli v síti. Na počátcích používání internetu to bylo považováno za přijatelné, ale s následujícími problémy to vyvolalo debatu ohledně bezpečnosti a ochraně soukromých informacích. traceroute
začali totiž hojně zneužívat hackeři. Získávali tak podstatné informace o síťové architektuře různých společností. Pomocí použití příkazu traceroute
mohli hackeři rychle zmapovat uzly, které daná společnost měla k dispozici, a určit si slabý bod, na který mohli zaútočit.
Kvůli těmto důvodům mnoho správců sítí zablokovalo odesílání odpovědí programu traceroute
ze svých routerů, proto některé uzly na cestě neodpovídají (ve výpisu jsou hvězdičky) a trasování často končí na hranici lokální sítě.
Externí odkazy
Obrázky, zvuky či videa k tématu traceroute na Wikimedia Commons
- RFC 1393: Traceroute používá IP Option Internet RFC
- RFC 792: Internet Control Message Protocol (ICMP)
- Manuálová stránka příkazu traceroute
- traceroute.org – měsíčně obnovovaný seznam přístupných traceroute
- How-to Traceroute from Windows – Jednoduchý návod s obrázky, jak použít tracert na Windows
- Ukázky příkazů a parametrů Archivováno 11. 12. 2007 na Wayback Machine. – neplatný odkaz !
Příkazy a programy příkazové řádky Unixu (více) | |
---|---|
Správa souborů | |
Správa procesů | |
Správa uživatelů a prostředí | |
Zpracování textu | |
Programování v shellu | |
Síťová komunikace | |
Hledání | |
Ostatní | banner • bc • cal • date • dd • look • lp • man • size • yes |