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:

https://cciepursuit.blog.hu/api/trackback/id/tr721008971

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.

Nincsenek hozzászólások.
süti beállítások módosítása