Traceroute - Linux Command - Unix команадсы

traceroute - маршрут пакеттерін желі хостына басып шығару

Синопсис

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 ]

хост [ packetlen ]

Сипаттама

Интернет шлюздермен біріктірілген желілік аппараттық құралдардың үлкен және кешенді жинақталуы болып табылады. Бағыттың пакеттерін қадағалау (немесе сіздің пакеттеріңізді алып тастайтын өтпелі шлюзді табу) қиындық тудыруы мүмкін. Traceroute IP протоколын «өмір сүру уақыты» өрісінен пайдаланады және ICMP TIME_EXCEEDED жауапты кейбір хосттың жолындағы әр шлюзден табуға әрекет жасайды.

Жалғыз міндетті параметр - тағайындалған түйін атауы немесе IP нөмірі . Әдепкі диагональды детальді ұзындығы 40 байт , бірақ бұл тағайындалған түйін атауынан кейін пакеттің ұзындығын (байтпен) көрсету арқылы көбейтілуі мүмкін.

Басқа опциялар:

-f

Алғашқы шығыс зондтар пакетінде пайдаланылатын бастапқы уақытты орнатыңыз.

-F

«Фрагмент емес» битін орнатыңыз.

-d

Розетка деңгейін түзетуді қосыңыз.

Бос көзді бағыттау шлюзін (8 максимум) көрсетіңіз.

-i

Шығыс шығыс пакеттерінің бастапқы IP мекенжайын алу үшін желі интерфейсін көрсетіңіз. Бұл әдетте тек көп хостты хостта пайдалы. (Мұны істеудің басқа амалын жасау үшін -s- туын қараңыз.)

-I

UDP протоколдарының орнына ICMP ECHO пайдаланыңыз.

Шығатын зонд пакеттерінде пайдаланылатын максималды уақытты (ең көп саны) тіркеңіз. Әдепкі бойынша 30 ату (TCP қосылымдары үшін пайдаланылатын әдепкі).

Басып шығару мекенжайлары символдық және сандық емес, сандық жолмен (атаудағы серверлердің мекен-жайын іздеу жолында табылған әрбір шлюз үшін сақтайды).

-p

Зондтарда пайдаланылатын негізгі UDP порт нөмірін орнату (әдепкі 33434). Traceroute UDP портының базасын мақсатты хостта + nhops - 1- ге тыңдайтын ештеңе жоқ деп үміттенеді (осылайша ICMP PORT_UNREACHABLE хабарламасы маршрутты қадағалауды тоқтату үшін қайтарылады). Егер бірдеңе әдепкі ауқымда портты тыңдаса, бұл параметр пайдаланылмаған порт ауқымын таңдау үшін пайдаланылуы мүмкін.

Қалыпты маршруттау кестелерін айналып өтіп, тіркелген желіге хостқа тікелей жіберіңіз. Егер хост тікелей желіде болмаса, қате қайтарылады. Бұл параметр жергілікті хостты интерфейс арқылы бағыттау үшін пайдаланылуы мүмкін (мысалы, интерфейс маршрутталған (8C) арқылы түсірілгеннен кейін).

Шығыс шығыс пакеттеріндегі бастапқы мекенжай ретінде келесі IP-мекен-жайын (әдетте IP-мекен-жай ретінде беріледі, хост атауын емес) пайдаланыңыз. Көптеген хосттарда (біреуден көп IP мекенжайлары бар) осы опция көзден мекенжайды зонд пакеті жіберілген интерфейстің IP-мекен-жайынан өзгеше болу үшін қолдануға болады. Егер IP-адрес осы машинаның интерфейс мекенжайларының бірі болмаса, қате қайтарылады және ештеңе жіберілмейді. (Мұны істеудің басқа жолы үшін -i жалауын қараңыз.)

-t

Зауыттық пакеттерде қызмет түрін төмендегі мәнге орнатыңыз (әдепкі нөл). Мән 0-ден 255-ке дейінгі ауқымда ондық бүтін сан болуы керек. Бұл параметр әртүрлі жолдардағы түрлі қызмет түрлерінің нәтижесін көру үшін пайдаланылуы мүмкін. (Егер сіз жұмыс істемейтін болсаңыз, бұл академиялық болуы мүмкін, өйткені телет және ftp сияқты әдеттегі желі қызметтері сізді TOS-ді басқаруға рұқсат бермейді). TOS-ның барлық мəндері заңды емес немесе маңызды болып табылады - анықтамалар үшін IP спецификациясын қараңыз. Пайдалы мәндер, бәлкім, « -16 » (төмен кідіріс) және « -8 » (жоғары өткізу қабілеті).

-v

Толық шығыс. TIME_EXCEEDED және UNREACHABLE тізімінен басқа, ICMP пакеттері алынды.

-w

Зондқа жауап күте тұру үшін уақытты (секундтармен) орнатыңыз (әдепкі 5 сек.).

-x

Іржегістеу жинақтарын ауыстырыңыз. Әдетте, бұл трассаудан IP тексерулерін есептеуге жол бермейді. Кейбір жағдайларда, амалдық жүйе шығыс бумасының бөлігін қайта жаза алады, бірақ бақылау сомасын қайта есептемейді (сондықтан кейбір жағдайларда әдепкі бойынша бақылау сомасын есептемеу және оларды пайдалану калькуляцияға әкеледі). ICMP ECHO зондтарын ( -I ) қолданған кезде соңғы слайдтар үшін әдетте әдеттегі бақылау сомалары қажет. Сондықтан олар үнемі ICMP пайдалану кезінде есептеледі.

Уақытты (миллисекундпен) зондтар арасында кідіртуге орнатыңыз (әдепкі 0). Кейбір жүйелер сияқты Solaris және маршрутизаторлар сияқты Ciscos жылдамдығы icmp хабарламалар. Бұл үшін пайдалы құндылығы 500 (мысалы, 1/2 секунд).

Бұл бағдарлама IP пакетін кейбір UDP провайдер пакеттерін кішкентай ttl (өмір сүру уақыты) арқылы іске қосып, шлюзден «уақыттың асып кеткен» жауаптарын тыңдау арқылы орындайды. Біз өзіміздің зондтарымызды бір-бірімен бастаймыз және ICMP «port unreachable» (яғни «қабылдаушы») дегенге жеткенше немесе бірден көбейтеміз (ол 30-ға дейін әдепкісін бұзады және -m жалау). Әрбір ttl параметрінде үш таңба ( -q белгісімен өзгерту) жіберіледі және ttl, шлюздің мекен-жайы мен әр зондтың айналу уақытын көрсететін жол басылады. Зондқа әртүрлі шлюздерден жауап берілсе, әрбір жауап беру жүйесінің мекен-жайы басылады. Егер 5 секунд ішінде жауап болмаса. тайм-аут интервалы ( -w жалауымен өзгертілген), бұл зонд үшін «*» жазылады.

Біз тағайындалған хост UDP провайдерінің пакеттерін өңдеуді қалаймыз, сондықтан тағайындалған портты екіталай мәнге орнатыңыз (тағайындаудағы кейбір clod бұл мәнді пайдаланса, -p белгісімен өзгертілуі мүмкін).

Мысалды пайдалану және шығару:

[yak 71]% traceroute nis.nsf.net. traceroute қойылатын nis.nsf.net (35.1.1.48), 30 хопс макс, 38 байт пакеті 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 мс 39 мс 19 мс 3 lilac-dmc.Berkeley.EDU (128.32.216.1) 39 мс 39 мс 19 мс 4 ccngw-ner-cc.Berkeley.EDU (128.32.136.23) 39 мс 40 мс 39 мс 5 ccn -nerif22.Berkeley.EDU (128.32.168.22) 39 мс 39 мс 39 мс 6 128.32.197.4 (128.32.197.4) 40 мс 59 мс 59 мс 7 131.119.2.5 (131.119.2.5) 59 мс 59 мс 59 мс 8 129.140. 70.13 (129.140.70.13) 99 мс 99 мс 80 мс 9 129.140.71.6 (129.140.71.6) 139 мс 239 мс 319 мс 10 129.140.81.7 (129.140.81.7) 220 мс 199 мс 199 мс 11 nic.merit.edu (35.1 .1.48) 239 мс 239 мс 239 мс

2 & 3 жолдары бірдей екенін ескеріңіз. Бұл 2-хоптық жүйеде - lbl-csam.arpa - бұл нөлдік ttl (4.3BSD бөлінген нұсқасында қате) пакеттерін шығаратын буги ядросына байланысты. NSFNet (129.140) NSS-ге арналған мекен-жайға аударуды қамтамасыз етпегендіктен пакеттердің қай елмен жүретінін білу керек.

Ең қызықты мысал:

[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 мс 0 мс 0 мс 2 lilac-dmc.Berkeley.EDU (128.32.216.1) 19 мс 19 мс 19 мс 3 lilac-dmc.Berkeley.EDU (128.32.216.1) 39 мс 19 мс 19 мс 4 ccngw-ner-cc.Berkeley.EDU (128.32.136.23) 19 мс 39 мс 39 мс 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 мс 79 мс 99 мс 9 129.140.71.6 (129.140.71.6) 139 мс 139 мс 159 мс 10 129.140.81.7 (129.140.81.7) 199 мс 180 мс 300 мс 11 129.140.72.17 (129.140.72.17) 300 мс 239 мс 239 мс 12 * * * 13 128.121.54.72 (128.121.54.72) 259 мс 499 мс 279 мс 14 * * * 15 * * * 16 * * * 17 * * * 18 ALLSPICE.LCS.MIT.EDU (18.26 .0.115) 339 мс 279 мс 279 мс

12, 14, 15, 16 және 17 шлюздерін бізден алыстатыңыз немесе ICMP-ге «уақыт асты» хабарламаларын жібермеңіз немесе бізге жету үшін трафикті тым кішкентай жолмен жіберіңіз. 14 - 17 MIT C шлюзінің коды жұмыс істейді, ол «уақыт өткеннен кейін» жіберілмейді. Құдай тек қана не болып жатқанын біледі.

Жоғарыдағы 12-шi дыбыс шлюзi 4-дегi қателердiң нәтижесi болуы мүмкiн. [23] BSD желi коды (және оның туындылары): 4.x (x <= 3) түпнұсқада кез-келген ttl қалдықтарымен datagram. Өйткені, шлюздер үшін қалған ttl нөлге тең болғандықтан, ICMP «уақыт асты» дегеніміз бізді қайтармауға кепілдік береді. Бұл қатенің мінезі тағайындалған жүйеде пайда болғанда сәл қызықтырады:

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 мс 39 мс 19 мс 4 ccngw-ner-cc.Berkeley.EDU (128.32.136.23) 39 мс 40 мс 19 мс 5 ccn-nerif35.Berkeley.EDU (128.32.168.35) 39 мс 39 мс 39 мс 6 csgw. Berkeley.EDU (128.32.133.254) 39 мс 59 мс 39 мс 7 * * * 8 * * * 9 * * * 10 * * * 11 * * * 12 * * * 13 rib.Berkeley.EDU (128.32.131.22) 59 Ханым ! 39 мс! 39 мс!

Назар аударыңыз, 12 «шлюз» бар (13 - соңғы орын) және олардың соңғы жартысы «жоқ». Шындығында не болып жатқандығы (Sun Sun 3 жұмыс істейтін Sun OS3.5) ttl-ді ICMP жауапта ttl ретінде қабылдайтын datagram-інде қолданып отыр. Сонымен, жауап қайтару жолында (ICMP-тің ICMP-ге жіберілмегендіктен ешкімге жіберілмегенін ескере отырып) уақыт ұзақтығы екі есе болатын ttl-ні тексермейінше уақытты жоғалтады. Яғни, rip, шын мәнінде, тек 7 шабуыл. 1-ге тең ttl-пен қайтарылған жауап - бұл мәселе түйінді. Traceroute басып шығарады «!» егер ttl <= 1 болса, сатушылар көп ескірген (DEC Ultrix, Sun 3.x) немесе стандартты емес (HPUX) бағдарламалық қамтамасыз етуді жібергеннен кейін, бұл мәселені жиі көруге және / немесе мақсатты зондтардың хосты.

Уақыт өткеннен кейін басқа ықтимал аннотациялар H ,! N , немесе ! P (хост, желі немесе протоколға қолжетімсіз) ,! S (бастапқы маршрут сәтсіз аяқталды) ,! F- (бөлшектеу қажет - RFC1191 Path MTU Discovery мәні көрсетіледі) ! X (әкімшілік түрде тыйым салынған) ,! V (хосттың басымдықты бұзуы) ,! C (қолданыстағы бас тарту) немесе ! (ICMP жетімсіз код). Олар RFC1812 (RFC1716 ауыстырады) арқылы анықталады. Егер барлық зондтардың біреуі қол жетімсіз болып шығады болса, traceroute бас тартады және шығып кетеді.

Бұл бағдарлама желіні тестілеуде, өлшеуде және басқаруға арналған. Ол бірінші кезекте қолмен жұмыс істемеуі керек. Жүктелуіне байланысты ол желіге жүктелуі мүмкін, әдеттегі операциялар кезінде немесе автоматтандырылған сценарийлерде traceroute- ді пайдалану ақылсыз.

Сондай-ақ қараңыз

patch (8), netstat (1), ping (8)