traceroute

TRACEROUTE(8)							 TRACEROUTE(8)



NAME
       traceroute - vypise cestu k zadanemu pocitaci

SYNOPSIS
       traceroute [ -dFInrvx ] [ -f prvni ttl ] [ -g brana ] [ -i iface ]
	       [ -m max ttl ] [ -p port ] [ -q nqueries ]
	       [ -s src_addr ] [ -t tos ] [ -w cekaci cas ]
	       host [ delka paketu ]

DESCRIPTION
       Internet	 je  velke  komplexni  seskupeni  sitoveho hardware, spojeneho
       dohromady branami (routery).  Zjistovani cesty, po ktere	 pakety	 chodi
       (nebo  nalezeni	brany,	ktera  odmita  vase  pakety) muze byt obtizne.
       Traceroute vyuziva moznosti polozky TTL (Time To Live)  v  hlavicce  IP
       datagramu  a  pokousi  se  vyvolat u kazde brany na ceste k cili odezvu
       ICMP TIME_EXCEEDED (tj. hlaseni o chybe, resp. o vyprseni TTL).

       Jediny povinny parametr je jmeno	 nebo  IP  adresa  ciloveho  pocitace.
       Standardni  delka  datagramu  je	 40 bytu, ale da se zvysit udanim jine
       hodnoty (v bytech) za adresou cile.

       Dalsi mozne parametry:

       -f     Nastaveni pocatecni hodnoty TTL pro prvni vysilany datagram.

       -F     Nastav priznak "Don't fragment".

       -d     Zapni ladeni na urovni socketu.

       -g     Prima specifikace routeru na ceste (max 8).

       -i     Urceni sitoveho rozhrani, ze ktereho  budou  datagramy  vysilany
	      (tj.  urceni zdrojove IP adresy). Lze pouzit pouze na pocitaci s
	      vice sitovymi rozhranimi (viz take parametr -s).

       -I     Misto UDP datagramu pouzij datagramy ICMP ECHO.

       -m     Nastaveni maximalniho  TTL  pouzivaneho  v  odchazejicich	 data-
	      gramech.	Standardne  je	pouzita	 hodnota 30 (stejne jako u TCP
	      spojeni).

       -n     Adresy bran jsou vypisovany cisly, neni provaden prevod  na  DNS
	      jmena  (pouziva  se  pro urychleni vystupu nebo pokud DNS nefun-
	      guje).

       -p     Nastaveni cisla UDP portu pouzivaneho pro traceroute (standardne
	      je  33434).   Traceroute predpoklada, ze na cilovych UDP portech
	      od cisla port do cisla port + pocet_hopu - 1 na trase k cili nic
	      nenasloucha  (takze  se zpet vrati zprav ICMP PORT_UNREACHABLE).
	      Pokud na nekterem z portu nasloucha nejaka aplikace,  lze	 timto
	      parametrem urcit pocatek nepouzivaneho rozsahu portu.

       -q     Pocet vyslanych datagramu pro kazdou hodnotu TTL (tj. pro kazdou
	      branu).

       -r     Preskoc normalni routovaci tabulky a vysilej primo na  pripojene
	      site.   Pokud  cil  v  primo  pripojene  siti nelezi, je vracena
	      chyba.  Tento parametr muze byt pouzit pro pinknuti na localhost
	      pres rozhrani, pres ktere nevede zadna cesta (napriklad, pote co
	      bylo rozhrani vypnuto pomoci routed (8C)).

       -s     Pouzij nasledujici IP  adresu  (zadanou  jako  cislo  nebo  jako
	      jmeno)  jako  zdrojove  adresy  pro  odchazejici	datagramy.  Na
	      pocitacich s vice sitovymi rozhranimi (tj. s vice nez jednou  IP
	      adresou),	 muze byt tento parametr pouzit k nastaveni jine zdro-
	      jove IP, nez jaka je na odesilajicim sitovem rozhrani.  Pokud IP
	      adresa  nepatri mezi adresy rozhrani tohoto pocitace, je vracena
	      chyba a nic se nevysle (viz take parametr -i).

       -t     Nastaveni TOS (Type-Of-Service) v	 odesilanych  paketech	(stan-
	      dardne  nula).  Cislo musi byt cele v rozsahu od 0 do 255. Tento
	      parametr lze pouzit pro zjisteni, zda  ruzne  typy  sluzeb  jsou
	      smerovany	 ruznymi  cestami  (pokud  mate 4.4bsd, je to jen aka-
	      demicke, protoze u normalnich sitovych sluzbach  jako  telnet  a
	      ftp  neni	 TOS mozne nastavit... Ne vsechny hodnoty jsou legalni
	      nebo vyznamne - (viz specifikaci IP).  Pouzitelne hodnoty	 jsou:
	      '-t 16' (kratka doba odezvy) a '-t 8' (vysoky prutok).

       -v     Rozsireny vystup. Jsou vypsany jine prichozi datagramy, nez ICMP
	      TIME_EXCEEDED a UNREACHABLE.

       -w     Cas (v sekundach) cekani pro odezvu na vyslane datagramy	(stan-
	      dardne 5 sec.).

       -x     Prepinani	 kontrolnich  souctu.  Obvykle	jsou  kontrolni soucty
	      timto parametrem vypnuty. V nekterych  pripadech	muze  operacni
	      system  prepsat  casti odchazejicich datagramu, ale neprepocitat
	      kontrolni soucet (tj. v nekterych pripadech se  standardne  kon-
	      trolni  soucty  nepocitaji  a  pouziti  tohoto parametru zpusobi
	      jejich pocitani). Nezapomente ze kontrolni soucty	 jsou  obvykle
	      potreba pro posledni preskok kdyz se pouziva ICMP ECHO.  (-I).

       Tento  program  se  pokousi zobrazit cestu, kterou vykona IP datagram k
       cilovemu pocitaci tak, ze vysila zamerne UDP datagramu s malymi	hodno-
       tami  TTL (Time To Live) a pak ceka, zda prijde od brany (routeru) ICMP
       zprava "Cas vyprsel" (Time Exceeded). Zacina se s vyslanim datagramu  s
       TTL  nastavenym	na hodnotu 1 a pak se TTL postupne zvysuje, dokud neni
       prijat datagram se ICMP zpravou "Port  Unreachable"  (coz  znamena,  ze
       jsme  u	cile)  nebo  pokud  se dosahne maximalni hodnoty TTL (ktera je
       standardne 30 skoku a muze  byt	zmenena	 pomoci	 parametru  -m).   Pro
       kazdou  hodnotu	TTL  jsou  vyslany  tri	 datagramy  (lze zmenit pomoci
       parametru -q) a pak je vypsan radek s  hodnotou	TTL,  jmenem  brany  a
       dobami odezvy kazdeho vyslaneho datagramu. Prijdou-i odpovedi z ruznych
       bran, jsou vsechny vypsany. Pokud neprijde zadna odezva do peti	vterin
       (lze zmenit pomoci parametru -w) je vypsan znak "*".

       Je potreba, aby cilovy pocitac nezpracovaval UDP vyzvy, a tak je cilovy
       port nastaven na nepravdepodobnou  hodnotu  (pokud  nejaky  program  na
       cilovem	pocitaci tento port pouziva, muzete ho zmenit pomoci parametru
       -p).

       Priklad pouziti a nasledneho vystupu:
	      [yak 71]% traceroute nis.nsf.net.
	      traceroute to nis.nsf.net (35.1.1.48), 30 hops max, 38 byte packet
	       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

       Vsimnete si, ze radky 2 a 3 obsahuji stejna jmena i IP adresy pocitacu,
       coz  zpusobuje chybne 4.3 BSD jadro na druhem preskoku (lbl-csam.arpa),
       ktere preposila datagramy s nulovym TTL.	 Ve spodni casti  nejsou  uve-
       deny  jmena  pocitacu,  protoze	NFSNet	(129.140)  nema v DNS zavedeny
       prislusne reverzni zaznamy.

       Dalsi priklad:
	      [yak 72]% traceroute allspice.lcs.mit.edu.
	      traceroute to 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

       Brany 12, 14, 15, 16 a 17 neposilaji ICMP zpravy "Time  Exceeded"  nebo
       je posilaji s prilis malou hodnotou TTL a proto se k nam nedostanou.

       Ztichla brana 12 muze byt zpusobena chybou v sitovem kodu 4.[23] BSD (a
       jeho odvozeniny): 4.x (x <= 3) posilaji odpoved s pouzitim  TTL,	 ktere
       bylo  v prichozim datagramu, proto odpoved nedojde.  Tato chyba se pro-
       jevi zajimaveji, pokud ji ma cilovy pocitac:

	       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 !

       Ve vystupu je videt 12 bran (routeru), trinacty je cil a	 presne	 druha
       polovina	 odpovedi  chybi. Zpusobuje to chyba na pocitaci rip (Sun-3 se
       systemem Sun OS3.5), ktery pouziva TTL v dotazech  jako	TTL  pro  ICMP
       odpovedi.  Proto	 odpoved  dojde	 az  v okamziku, kdy je TTL vetsi, nez
       dvojnasobek delky zpatecni trasy. Pocitac rip je vzdalen	 skutecne  jen
       sedm hopu.

       Dalsi  mozne  poznamky za udajem o casu jsou: !H, !N, nebo !P (cil, sit
       nebo protokol nedosazitelne), !S nebo !F (zdrojova cesta chybna nebo je
       potrebna fragmentace - zadna z techto chyb by se nemela nikdy objevit a
       prislusna brana je v tom pripade vadna), !X (komunikace zakazana admin-
       istratory),  nebo  !<N>	(ICMP nedostupne, kod N).  Pokud temer vsechny
       vyzvy konci hlasenimi o nedosazitelnosti, traceroute se ukonci.

       Tento program  je  urcen	 pro  testovani,  mereni  a  management	 siti.
       Primarne	 by mel slouzit pro izolaci chyb.  Protoze traceroute muze sit
       zatizit, neni moudre ho pouzivat behem normalnich operaci a z  automat-
       ickych skriptu.

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

AUTOR
       Implementoval  Van Jacobson podle navrhu Steve Deeringa.	 Ladily tisice
       lidi, zahrnuty castecne opravy a navrhy od: C. Philip Wood, Tim	Seaver
       and Ken Adelman.

       Soucasne verze programu jsou k dispozici na anonymnim ftp:

	      ftp://ftp.ee.lbl.gov/traceroute.tar.Z

CHYBY
       Prosim posilejte chyby na adresu traceroute@ee.lbl.gov.

PREKLAD
       Martin  Dostal  (martin.dostal@pslib.cz),  upravy textu Milan Kerslager
       (kerslage@linx.cz).




4.3 Berkeley Distribution	 22 Duben 1997			 TRACEROUTE(8)

Personal Tools