Traceroute - Linux Command - Unix Command

tracerûte - printsje de rûtepakten foar netwurk-host

Synopsis

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

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

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

[ -w waittime ] [ -z pausemsecs ]

host [ paketlen ]

Beskriuwing

It ynternet is in grutte en komplekse aggregaasje fan netwurk-hardware, te kombinearjen troch tagongsrjochten. It tracksjen fan de rûte kinne jo pakket folgje (of as jo de miskreane tagongsrjochten dy 't jo pakkingen ûntjaan) kinne dreech wêze. Traeroute brûkt it IP-protokol 'tiid om te libjen' fjild en besiket in reaksje fan ICMP TIME_EXCEEDED út elke poarte te litten by it paad nei guon host.

De ienige ferplatere parameter is de destinante hostnamme of IP-nûmer . De standert probe datagram lingte is 40 bytes , mar dit kin ferhege wurde troch it bepalen fan in paketlange (yn bytes) nei de bestimming fan hostnamme.

Oare opsjes binne:

-f

Set de earste tiid-nei-live te brûken yn it earste útgeand probondepakket.

-F

Set it "net fragmint" bitsje.

-d

It debugjen fan socketnivo ynskeakelje.

-g

Meitsje in losse boarne-rûte-tagong (8 maksimum).

-ik

In netwurkynterface oantsjutte om it boarne-IP-adres te krijen foar útgeande probe-pakketten. Dit is normaal allinich brûkber op in meardere húshâlding. (Sjoch de flagge fan 'e flagge foar in oare manier om dit te dwaan.)

-IK

Brûk ICMP-ECHO ynstee fan UDP-datagrams.

-m

Set de maksimale tiid om te libjen (maksimum oantal hops) yn útgeande probe-pakketten. De standert is 30 hops (deselde standert brûkt foar TCP-ferbiningen).

-n

Printadressen numerikeel earder as symboalysk en numerysk (spesjalearret in nammeromeareradres-nei-name-opsichter foar elke tagongsrjochten op 'e paad).

-p

Set it base UDP-poarte-nûmer yn probes brûkt (standert is 33434). Traceroute hopet dat gjin harkje nei de UDP-poarte- basis nei base + nhops - 1 by de destinante host (dus in ICMP PORT_UNREACHABLE berjocht sil weromkamen wurde om de rûte te ferfoljen). As der wat harket op in poarte yn it standert berik, kin dizze opsje brûkt wurde om in net brûkte poarte-berik te selektearjen.

-r

Ferwiderje de normale routingtalen en stjoere direkt nei in host yn in befestige netwurk. As de host net op in direkt ferbûne netwurk is, wurdt in flater weromjûn. Dizze opsje kin brûkt wurde om in lokale host troch in interface te pingjen dy't gjin rûte hat troch (bygelyks nei't de interface is troch rûnlitten (8C) falt.

-s

Brûk de folgjende IP-adres (dy't normaal as in IP-nûmer, net in hostnamme jûn wurdt as boarneadres yn útgeande probe-pakketten. Op meardere húshâldingen (dy 't mei mear as ien IP-adres) kin dizze opsje brûkt wurde om it boarneadres te ferwêzentlikjen wat oars as it IP-adres fan' e ynterface wurdt it probepapet opstjoerd. As it IP-adres gjin ien fan dizze adressen fan dizze machine is, wurdt in flater weromjûn en neat wurdt stjoerd. (Sjoch de -i flagge op in oare manier om dit te dwaan.)

-t

Set it type-of-service yn probe-pakketten nei de folgjende wearde (standert nul). De wearde moat in desimaal-integer wêze yn it berik fan 0 oant 255. Dizze opsje kin brûkt wurde om te sjen oft ferskillende types-tsjinsten resultaat binne yn ferskillende paden. (As jo ​​net 4.4bsd rinne, kin dit akademysk wêze as de normale netwurk tsjinsten lykas telnet en FTP litte jo de TOS net kontrolearje). Net alle wearden fan TOS binne juridysk of betsjuttend - sjoch de IP-spec foar definysjes. Nuttige wearden binne wierskynlik ' -t 16 ' (leechferlies) en ' -t 8 ' (hege trochslach).

-v

Verbose output. Oan oare ICMP-pakketten ûntfongen as TIME_EXCEEDED en UNREACHABLELE binne opnommen.

-w

Set de tiid (yn sekonden) om te wachtsjen op in antwurd op in probe (standert 5 sek.).

-x

Kontrôle ip kontrolearje. Gewoanlik befestiget de tracerûte fan it kontrolearjen fan ip kontrôtmen. Yn guon gefallen kin it bestjoeringssysteem dielen fan it útgeande pakket oerskriuwe, mar de kontrôgingsumens net opnij regelje (dus yn guon gefallen is it standert net te kontrolearjen fan kontrôtmenums en it brûken fan -x feroarsaket har te kalksjen). Tink derom dat kontrôtmenums meastentiids fereaske foar de lêste hop by it brûken fan ICMP-ECHO-probes ( -I ). Sa wurde se altyd berekkene by it brûken fan ICMP.

-z

Set de tiid (yn millisekonden) om te stopjen tusken problemen (standert 0). Guon systemen lykas Solaris en routers lykas Ciscos-taryf limyt icmp-berjochten. In goed wearde foar dit gebrûk is dit 500 (bgl. 1/2 sekonde).

Dit programma besiket de route te spoaren in IP-pakket nei in inkele ynternet-host te folgjen troch UDP-probe-pakketten te begjinnen mei in lytse ttl (tiid om te wenjen) en dêrnei te hearren foar in ICMP-tiidrek "antwurd fan in poarte. Wy begjinne ús probes mei in ttl fan ien en ferheegje troch ien oant wy krije in ICMP "haven ûnferbidlik" (dat betsjut dat wy "host" krigen hawwe) of op in maksume (dy't standert oant 30 hops is en kin feroare wurde mei de -m flagge). Trije probes (wiziging mei -q flagge) wurde op elke ttl-ynstelling stjoerd en in line wurdt gedrukt mei de ttl, adres fan it poarte en rûntiid fan elke probleem. As de probleem antwurde komt fan ferskillende poarteways, sil it adres fan elke antwurende systeem printe wurde. As der gjin reaksje binnen in 5 sek. Tiidtiid ynterval (feroare mei de -w flagge), in "*" wurdt foar dizze probleem gedrukt.

Wy wolle net wolle dat de bestimming-host de UDP-probe-pakketten ferwurket, sadat de bestimmingpoarte op in ûnwisse wearde set is (as in inkele klod op de bestimming dy wearde brûkt, it kin feroare wurde mei de -p flag).

In problemen gebrûk en output kinne wêze:

[yak 71]% traceroute nis.nsf.net. traceroute nei nis.nsf.net (35.1.1.48), 30 hops max, 38 byte paket 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

Tink derom dat rigels 2 & 3 binne deselde. Dit is due to a buggy kernel on the 2nd hop system - lbl-csam.arpa - that forwards packets with a null ttl (a bug in the distributed version of 4.3BSD). Tink derom dat jo dogge wat it paad fan 'e pakketten is, it NSFNet (129.140) hat gjin adres-oan-namme-oersettings foar syn NSSes.

In nijsgjirriger foarbyld is:

[yak 72]% traceroute allspice.lcs.mit.edu. traceroute nei allspice.lcs.mit.edu (18.26.0.115), 30 hops max 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

Tink derom dat de toren 12, 14, 15, 16 & 17 hopsje of stjoere gjin ICMP-tiid "ferwidere" berjochten of stjoere se mei in ttl te lyts om ús te berikken. 14 - 17 laitsje de MIT C-triemtype wêrtroch "tiid oerienkommende" s net stjoert. God wit allinich wat mei 12 giet.

It stilte poarte 12 yn it boppesteande kin it resultaat fan in brek wêze yn 'e 4. [23] BSD-netwurkkoade (en syn derivative): 4.x (x <= 3) stjoert in ûnferbidlik berjocht mei hokker ttl bliuwt yn' t orizjineel datagram. Sûnt, foar tydliken, is de oerbliuwende ttl nul, de ICMP "tiid tafoege" is garandearre om ús net werom te meitsjen. It gedrach fan dizze brek is wat nijsgjirriger as it ferskynt op it bestimmingsysteem:

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!

Tink derom dat der 12 "tagongsrjochten" binne (13 is it ein bestimming) en krekt de lêste helte fan 'e "fermist". Wat it eigentlik is, is dat rip (in Sun-3 rinnende Sun OS3.5) it ttl fan ús arranzende datagram brûke as de ttl yn syn ICMP-antwurd. Dus, it antwurd sil tiid wurde op 'e weromkommpaden (sûnder opnij stjoerd nei ien fan' e ICMP's wurde net stjoerd foar ICMP's) oant wy probearje mei in ttl dat it minstens twa kear de paadlange is. Ie, rip is echt mar 7 hops fuort. In antwurd dat weromkommt mei in ttl fan 1 is in oandiel dat dit probleem bestiet. Traceroute printsje in "!" Nei de tiid as de ttl is <= 1. Sûnt ferfiers binne in soad obsolete (DEC's Ultrix, Sun 3.x) of net-standert (HPUX) software ferwachte, ferwachtsje dat dit probleem faak besjoen wurde en / host fan jo probes.

Oare mooglike annotaasjes nei de tiid binne H ,! N , of ! P (host, netwurk of protokol unreachber),! S (source route mislearre), F- (fragmentaasje nedich - de RFC1191-paad MTU-ûntdekkingwearde wurdt werjûn) ! X (kommunikaasjele ferwulking kommunikaasje) ,! V (hostfoarsitterwraaging),! C (foarôfgeande ôfkoarting), of ! (ICMP-unreachberne koade). Dizze wurde bepaald troch RFC1812 (dy't RFC1716 fergiet). As hast alle problemen in soart fan unreachber meitsje, tracerûte sil opkomme en útgean.

Dit programma is bedoeld foar gebrûk yn netwurktest, mjitting, en management. It moat foaral brûkt wurde foar hantlieding of isolemint. Troch de load kin it net opnimme , it is net wis om tracerût te brûken yn normale operaasjes of fan automatisearre skripten.

Sjoch ek

pathchar (8), netstat (1), ping (8)