Traceroute - Linux Command - Unix Command

traceroute - druk die roete pakkies af na netwerkheer

opsomming

traceroute [ -dFInrvx ] [ -f first_ttl ] [ -g gateway ]

[ -i iface ] [ -m max_ttl] [ -p- poort ]

[ -q nqueries ] [ -s src_addr ] [ -t tos ]

[ -w waittime ] [ -z pausemsecs ]

gasheer [ pakketlen ]

beskrywing

Die internet is 'n groot en komplekse samevoeging van netwerk hardeware, verbind deur poorte. Om die roete na te volg, volg 'n pakkie (of vind die miscreant gateway wat jou pakkies weggooi) moeilik wees. Traceroute gebruik die IP protokol `tyd om te lewe 'veld en poog om 'n ICMP TIME_EXCEEDED-reaksie van elke poort op die pad na 'n gasheer op te wek.

Die enigste verpligte parameter is die bestemmings gasheer naam of IP nommer . Die verstek sonde datagram lengte is 40 grepe , maar dit kan verhoog word deur 'n pakkie lengte (in grepe) na die bestemming gasheer naam te spesifiseer.

Ander opsies is:

f

Stel die aanvanklike tyd-tot-lewe wat in die eerste uitgaande sondepakket gebruik word.

-F

Stel die "nie fragment" -bietjie.

d

Aktiveer socket vlak debugging.

G

Spesifiseer 'n los bronroete-poort (8 maksimum).

-i

Gee 'n netwerkkoppelvlak aan om die bron IP-adres vir uitgaande sondepakkies te verkry. Dit is gewoonlik net nuttig op 'n multi-homed gasheer. (Sien die -s vlag vir 'n ander manier om dit te doen.)

-Ek

Gebruik ICMP ECHO in plaas van UDP datagramme.

-m

Stel die maksimum tyd-tot-lewe (maksimum aantal hop) in uitgaande sondepakkette. Die standaard is 30 hops (dieselfde standaard word gebruik vir TCP-verbindings).

-n

Druk hoep adresse numeries eerder as simbolies en numeries (slaan 'n naam-bediener-adres-na-naam opzoeking vir elke poort wat op die pad gevind word).

p

Stel die basis UDP-poortnommer wat in probes gebruik word (standaard is 33434). Traceroute hoop dat niks op UDP poorte basis na base + nhops luister nie - 1 by die bestemmings gasheer (so 'n ICMP PORT_UNREACHABLE boodskap sal teruggestuur word om die roete op te spoor). As daar iets op 'n poort in die verstek bereik word, kan hierdie opsie gebruik word om 'n ongebruikte poortreeks te kies.

r

Bypass die normale roetetabelle en stuur direk na 'n gasheer op 'n aangehegte netwerk. As die gasheer nie op 'n direk-aangehegte netwerk is nie, word 'n fout terugbesorg. Hierdie opsie kan gebruik word om 'n plaaslike gasheer te ping deur 'n koppelvlak wat geen roete daarheen het nie (bv. Nadat die koppelvlak met roetes (8C) afgelaai is).

s

Gebruik die volgende IP-adres (wat gewoonlik as 'n IP-nommer, nie 'n gasheernaam gegee word nie) as die bronadres in uitgaande sondepakkies. Op multi-homed hosts (dié met meer as een IP-adres), kan hierdie opsie gebruik word om die bronadres te dwing om iets anders te wees as die IP-adres van die koppelvlak waarop die sondepakkie gestuur word. As die IP-adres nie een van die koppelvlakadresse van hierdie masjien is nie, word 'n fout terugbesorg en word niks gestuur nie. (Sien die -i vlag vir 'n ander manier om dit te doen.)

t

Stel die tipe diens in sondepakkette op die volgende waarde (standaard nul). Die waarde moet 'n desimale getal in die reeks 0 tot 255 wees. Hierdie opsie kan gebruik word om te sien of verskillende tipes dienslewering in verskillende paaie lei. (As u nie 4.4bsd uitvoer nie, kan dit akademies wees aangesien die normale netwerkdienste soos telnet en ftp u nie toelaat om die TOS te beheer nie). Nie alle waardes van TOS is wettig of betekenisvol nie - sien die IP-spesifikasie vir definisies. Nuttige waardes is waarskynlik ` -t 16 '(lae vertraging) en` -t 8 ' (hoë deurset).

v

Verbeterde uitset. Ontvangde ICMP-pakkies anders as TIME_EXCEEDED en UNREACHABLEs word gelys.

w

Stel die tyd (in sekondes) om te wag vir 'n antwoord op 'n sonde (standaard 5 sek.).

-x

Verander ip tjeks. Normaalweg verhoed dit dat traceroute van die berekening van ip-tjeksels bereken word. In sommige gevalle kan die bedryfstelsel dele van die uitgaande pakket oorskryf, maar nie die kontrolesom herbereken nie (dus in sommige gevalle is die standaard nie kontroleums bereken nie en gebruik -x veroorsaak dat hulle verkalk word). Let daarop dat tjeksels gewoonlik benodig word vir die laaste hop wanneer ICMP ECHO probes gebruik word ( -I ). So word hulle altyd bereken wanneer ICMP gebruik word.

-Z

Stel die tyd (in millisekondes) om tussen probes te breek (standaard 0). Sommige stelsels soos Solaris en routers soos Ciscos-tarieflimiet-icmp-boodskappe. 'N Goeie waarde om dit te gebruik is 500 (bv. 1/2 sekonde).

Hierdie program poog om die roete na te spoor wat 'n IP-pakket sou volg na 'n internet-gasheer deur UDP sondepakkette met 'n klein ttl (tyd om te lewe) te loods en daarna te luister vir 'n ICMP-tydsverloop van 'n gateway. Ons begin ons probes met 'n ttl van een en verhoog met een totdat ons 'n ICMP-hawe onbereikbaar kry (wat beteken dat ons 'gasheer' moet kry) of 'n maksimum slaan (wat standaard 30 hops is en met die -m verander kan word vlag). Drie probes (verander met -q vlag) word by elke ttl-instelling gestuur en 'n lyn word gedruk met die ttl, adres van die gateway en rondrit tyd van elke sonde. As die sonde antwoorde kom uit verskillende poorte, sal die adres van elke reaksie stelsel gedruk word. As daar binne 5 sekondes geen reaksie is nie. time-out interval (verander met die -w vlag), 'n "*" word vir daardie sonde gedruk.

Ons wil nie die bestemmingsgashouer om die UDP sondepakkette te verwerk sodat die bestemmingspoort op 'n onwaarskynlike waarde gestel is nie (as 'n klomp op die bestemming daardie waarde gebruik, kan dit met die -p vlag verander word).

'N monster gebruik en uitvoer kan wees:

[yak 71]% traceroute nis.nsf.net. traceroute na nis.nsf.net (35.1.1.48), 30 hoep maksimum, 38 byte pakket 1 helios.ee.lbl.gov (128.3.112.1) 19 ms 19 ms 0 ms 2 lilac-dmc.Berkeley.EDU (128.32. 216.1) 39 ms 39 ms 19 ms 3 lilac-dmc.Berkeley.EDU (128.32.216.1) 39 ms 39 ms 19 ms 4 ccngw-ner-cc.Berkeley.EDU (128.32.136.23) 39 ms 40 ms 39 ms 5 ccn -nerif22.Berkeley.EDU (128.32.168.22) 39 ms 39 ms 39 ms 6 128.32.197.4 (128.32.197.4) 40 ms 59 ms 59 ms 7 131.119.2.5 (131.119.2.5) 59 ms 59 ms 59 ms 8 129.140. 70.13 (129.140.70.13) 99 ms 99 ms 80 ms 9 129.140.71.6 (129.140.71.6) 139 ms 239 ms 319 ms 10 129.140.81.7 (129.140.81.7) 220 ms 199 ms 199 ms 11 nic.merit.edu (35.1 .1.48) 239 ms 239 ms 239 ms

Let daarop dat lyne 2 en 3 dieselfde is. Dit is as gevolg van 'n buggy pit op die 2de hop stelsel - lbl-csam.arpa - wat voorwerpe met 'n nul ttl ('n fout in die verspreide weergawe van 4.3BSD) voorspel. Let daarop dat jy moet raai watter pad die pakkies land neem omdat die NSFNet (129.140) nie vertalings van adres-na-naam verskaf vir sy NSS'e nie.

'N Meer interessante voorbeeld is:

[yak 72]% traceroute allspice.lcs.mit.edu. traceroute to allspice.lcs.mit.edu (18.26.0.115), 30 hop maksimum 1 helios.ee.lbl.gov (128.3.112.1) 0 ms 0 ms 0 ms 2 lilac-dmc.Berkeley.EDU (128.32.216.1) 19 ms 19 ms 19 ms 3 lilac-dmc.Berkeley.EDU (128.32.216.1) 39 ms 19 ms 19 ms 4 ccngw-ner-cc.Berkeley.EDU (128.32.136.23) 19 ms 39 ms 39 ms 5 ccn-nerif22 . Berkeley.EDU (128.32.168.22) 20 ms 39 ms 39 ms 6 128.32.197.4 (128.32.197.4) 59 ms 119 ms 39 ms 7 131.119.2.5 (131.119.2.5) 59 ms 59 ms 39 ms 8 129.140.70.13 ( 129.140.70.13) 80 ms 79 ms 99 ms 9 129.140.71.6 (129.140.71.6) 139 ms 139 ms 159 ms 10 129.140.81.7 (129.140.81.7) 199 ms 180 ms 300 ms 11 129.140.72.17 (129.140.72.17) 300 ms 239 ms 239 ms 12 * * * 13 128.121.54.72 (128.121.54.72) 259 ms 499 ms 279 ms 14 * * * 15 * * * 16 * * * 17 * * * 18 ALLSPICE.LCS.MIT.EDU (18.26) .0.115) 339 ms 279 ms 279 ms

Let daarop dat die gateways 12, 14, 15, 16 en 17 hop weg is, of stuur nie ICMP "tyd oorskry" boodskappe of stuur dit met 'n ttl te klein om ons te bereik nie. 14 - 17 voer die MIT C Gateway kode uit wat nie "tyd oorskry nie" s stuur. God weet net wat aangaan met 12.

Die stille poort 12 in die bogenoemde kan die gevolg wees van 'n fout in die 4. [23] BSD-netwerkkode (en sy afgeleides): 4.x (x <= 3) stuur 'n onbereikbare boodskap met behulp van enige ttl in die oorspronklike datagram. Aangesien, vir gateways, die oorblywende ttl nul is, word die ICMP "tyd oorskry" gewaarborg om dit nie terug te maak nie. Die gedrag van hierdie fout is effens meer interessant as dit op die bestemmingsstelsel verskyn:

1 helios.ee.lbl.gov (128.3.112.1) 0 ms 0 ms 0 ms 2 lilac-dmc.Berkeley.EDU (128.32.216.1) 39 ms 19 ms 39 ms 3 lilac-dmc.Berkeley.EDU (128.32.216.1 ) 19 ms 39 ms 19 ms 4 ccngw-ner-cc.Berkeley.EDU (128.32.136.23) 39 ms 40 ms 19 ms 5 ccn-nerif35.Berkeley.EDU (128.32.168.35) 39 ms 39 ms 39 ms 6 csgw. Berkeley.EDU (128.32.133.254) 39 ms 59 ms 39 ms 7 * * * 8 * * * 9 * * * 10 * * * 11 * * * 12 * * * 13 rip.Berkeley.EDU (128.32.131.22) 59 ms! 39 ms! 39 ms!

Let op dat daar 12 "poorte" is (13 is die finale bestemming) en presies die laaste helfte van hulle is "ontbreek". Wat regtig gebeur, is dat die rip ('n Sun-3 hardloop Sun OS3.5) die ttl van ons aankomende datagram as die ttl in sy ICMP-antwoord gebruik. Dus, die antwoord sal tyd op die terugkeer pad (sonder kennisgewing gestuur aan iemand sedert ICMP's nie gestuur word vir ICMP's) totdat ons sonde met 'n ttl wat ten minste twee keer die pad lengte. Dus, rip is regtig net 7 hopies weg. 'N Antwoord wat met 'n ttl van 1 terugkom, is 'n aanduiding dat hierdie probleem bestaan. Traceroute druk 'n "!" na die tyd as die ttl <= 1 is. Aangesien verskaffers baie verouderde (DEC se Ultrix, Sun 3.x) of nie-standaard (HPUX) sagteware verkoop, verwag dit om hierdie probleem gereeld te sien en / of die doel te kies gasheer van jou probes.

Ander moontlike annotasies na die tyd is ! H ,! N , of ! P (gasheer, netwerk of protokol onbereikbaar) ,! S (bronroete misluk) ,! F- (fragmentasie benodig - die MTU Discovery-waarde word vertoon) ! X (kommunikasie administratief verbode) ,! V (skending van gasheerrangorde) ,! C (voorrang afsnyding in effek), of ! (ICMP onbereikbare kode). Hierdie word gedefinieer deur RFC1812 (wat RFC1716 vervang). As byna al die probes tot 'n mate van onbereikbaarheid lei, sal traceroute opgee en verlaat.

Hierdie program is bedoel vir gebruik in netwerk toetsing, meting en bestuur. Dit moet hoofsaaklik gebruik word vir manuele fouteisolasie. As gevolg van die las wat dit op die netwerk kan oplewer, is dit onwenslik om traceroute tydens normale bedrywighede of outomatiese skrifte te gebruik.

Sien ook

patchar (8), netstat (1), ping (8)