Traceroute működése
2009.03.18. 02:39
Ez például egy egyszerű dolog. Hogyan működik a traceroute?
Ki lehet vele deríteni, hogy a célállomásig milyen utat tesz meg a csomag.
Wireshark dump: traceroute.cpp
Parancssor: kombinat@kombinat-laptop:~$ traceroute www.index.hu
traceroute to www.index.hu (217.20.130.97), 30 hops max, 60 byte packets
1 192.168.10.1 (192.168.10.1) 0.966 ms 1.644 ms 2.207 ms
2 10.224.192.1 (10.224.192.1) 9.765 ms 13.261 ms 18.452 ms
3 145.236.154.37 (145.236.154.37) 20.504 ms * *
4 81.183.245.18 (81.183.245.18) 26.512 ms 29.620 ms 30.488 ms
5 vlan902.core0.interware.hu (217.20.137.41) 36.916 ms 37.537 ms 38.825 ms
6 sportgeza.hu (217.20.130.97) 38.123 ms 13.363 ms 13.963 ms
Ha belenéztek a dumpba, egyértelműen látszik mi történik. Hármassával küldi az UDP csomagokat, folyamatosan növelve a TTL - Time to Live mező értékét. Az első háromban a TTL=1.
Azt tudjuk, hogy a routerek, minden rajtuk áthaladó csomag TTL értékét csökkentik eggyel, biztonsági okokból, pl. ne keringjen örökké. Hasonló az IPv6/ICMPv6 NDP-nél az IPv6 Hop-limit mindig = 255 - mivel az NDP mindig link-local in scope, így lehet látni hogy továbbment-e a csomag egy routeren, vagy nem. Ha igen, akkor eldobja azt.
TTL először másodperc alapon működött volna, de túl bonyolult lett a megvalósítás.
Ha eléri a 0-át, akkor a router eldobja a csomagot és itt jön a lényeg:
Visszaküld egy TEM - Time Exceeded in Transit Message-et, ICMP Type 11/Code 0. Megvan az első közbeeső router IP-je. Megy tovább a folyamat, ha nem 1 a TTL, akkor tovább routeolja a csomagot, szépen sorban meglesz az összes cím. A végén, a célból még visszajön 3 darab ICMP Type 3/Code 3 - Destination/Port Unreachable üzenet - mivel nyilván ennél bonyolultabb bekukkantani az index.hu-ra.
Néha előfordul, hogy az ICMP hibaüzenetnél, a visszaküldő létrehozza az üzenetet, viszont újrahasználja a kapott TTL-t, ekkor növelni kell a Max TTL-t. A min_TTL növelésével értelemszerűen ki lehet hagyni az ismert részt a hálózatból. Lehet akár az IP header options-ok kihasználásával fix útvonalra is kényszeríteni a traceroute-ot.
Már elkezdtem írni egy érdekeset az Ospf Fast Hello-ról. Ha befejeztem, feltöltöm.
(Zárójelben megjegyezném hogy az index blogmotorja egy rakás szar. Hihetetlen, de még mindig ott tart, hogy keresni kell az a böngészőt (5 van a gépemen), amivel képes vagyok elmenteni az egyes módosításokat a bejegyzésekben. Arról nem is beszélve, hogy egyes funkciók kedvük szerint működnek (pl. copy&paste).
A bejegyzés trackback címe:
Kommentek:
A hozzászólások a vonatkozó jogszabályok értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a Felhasználási feltételekben és az adatvédelmi tájékoztatóban.
Utolsó kommentek