Traceroute - Linux Buyruq - Unix Buyruq

traceroute - marshrut paketlarini tarmoq hostiga kiritish

Sinopsis

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

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

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

[ -w bekat ] [ -s pausemsecs ]

host [ paketli ]

Ta'rif

Internet shlyuzlar bilan birlashtirilgan tarmoq uskunalari katta va murakkab agregati. Marshrutni kuzatib borish uchun uning paketlari (yoki sizning paketlaringizni tashlab ketayotgan shablonni topish) qiyin bo'lishi mumkin. Traceroute IP protokoli "yashash uchun vaqt" maydonidan foydalanadi va har bir shluzdan ICMP TIME_EXCEEDED javobini ba'zi uy egasi yo'lidan olib chiqishga urinadi.

Bitta majburiy parametr - bu maqsadli kompyuterning nomi yoki IP-raqami . Standart probu datagram uzunligi 40 bayt , ammo maqsad ota-kompyuter nomidan keyin paket uzunligini (baytda) ko'rsatish orqali ortishi mumkin.

Boshqa variantlar:

-f

Dastlabki chiquvchi prob omborida ishlatiladigan dastlabki vaqtni belgilash.

-F

"Ajratmang" bitini o'rnating.

-d

Socket balandligi disk raskadrovka usulini yoqing.

-g

Moslashuvchan manba marshruti shlyuzini belgilang (maksimal 8 ta).

-i

Chiqib ketgan probu paketlari uchun manba IP-manzilini olish uchun tarmoq interfeysini belgilang. Bu odatda ko'p qavatli uy egasida foydali bo'ladi. (Buni amalga oshirish uchun boshqa bayroqchani ko'ring-of-bayrog'i.)

- Men

UDP datagramlari o'rniga ICMP ECHO dan foydalaning.

-m

Chiqib ketgan probu paketlarida ishlatiladigan maksimal jonli (maksimal shingil) soni. Asl qiymati 30 ta shkaf (TCP ulanish uchun ishlatiladigan bir xil standart).

-n

Chop etish manzillarini ramziy va son jihatidan emas raqamlar bilan almashtiring (yo'lda topilgan har bir shlyuz uchun ism-sharifi nomini saqlaydi).

-p

Problar uchun ishlatiladigan asosiy UDP port raqamini o'rnatish (standart 33434). Traceroute, hech narsa UDP port bazasini maqsad hostda + nhops - 1 ga tinglashni umid qiladi (shuning uchun marshrutni kuzatishni to'xtatish uchun ICMP PORT_UNREACHABLE xabar qaytariladi). Biror narsani portlashda tinglash mumkin bo'lsa, ushbu parametr qo'llanilmagan port oralig'ini tanlash uchun ishlatilishi mumkin.

-r

Oddiy yo'l-yo'riq jadvallarini chetlab o'tib, to'g'ridan-to'g'ri biriktirilgan tarmoqdagi uy egasiga yuborish. Uy egasi to'g'ridan-to'g'ri bog'liq bo'lgan tarmoqda bo'lmasa, xato qaytariladi. Ushbu parametr mahalliy yo'nalishli interfeys orqali (masalan, interfeys yo'naltirilgan (8C) tushib ketilgandan so'ng) pinglash uchun ishlatilishi mumkin.

-s

Chiqib ketgan probu paketlaridagi manba manzil sifatida quyidagi IP-manzilni (odatda IP raqami sifatida emas, balki hostname sifatida berilgan) foydalaning. Ko'p xonadonli xostlarda (bir nechta IP-manzili bo'lganlar) bu parametr manba manzilini tekshiruv paketining yuborilgan interfeysi IP-manzilidan boshqasiga majburlash uchun ishlatilishi mumkin. Agar IP-manzili ushbu mashina interfeysi manzillaridan biri bo'lmasa, xato qaytariladi va hech narsa yuborilmaydi. (Buni qilishning yana bir yo'li uchun -i bayrog'ini ko'ring.)

-t

Prob turidagi paketlardagi xizmat turini quyidagi qiymatga o'rnating (asl qiymati: nol). Qiymati 0 dan 255 gacha bo'lgan o'nlik tamsayı bo'lishi kerak. Ushbu parametr turli xil yo'llardagi xizmatlarning turli turlarini ko'rish uchun ishlatilishi mumkin. (Agar siz 4,4 ga ishlamayotgan bo'lsangiz, bu ilmiy bo'lishi mumkin, chunki telnet va ftp kabi normal tarmoq xizmatlari sizni TOSni boshqarishga ruxsat bermaydi). TOSning barcha qiymatlari qonuniy yoki mazmunli emas - belgilash uchun IP spektrlarini ko'ring. Foydali qadriyatlar, ehtimol, " -16 " (past kechikish) va " -8 " (yuqori ishlov berish).

-v

Batafsil chiqdi. TIME_EXCEEDED dan tashqari olingan ICMP paketlari va UNREACHABLE-lar ro'yxati keltirilgan.

-w

Bir probka javob berishni kutish uchun vaqtni (sekundlarda) o'rnating (asl qiymati 5 soniya).

-x

Ip checksums-ni almashtirish. Odatda, bu traceroute ip checksum hisoblashni oldini oladi. Ba'zi hollarda operatsion tizim chiqadigan paketning qismlarini qayta yozishi mumkin, lekin checksumni qayta hisoblab bo'lmaydi (shuning uchun ba'zi holatlarda mablag 'summalarini hisoblash va ularni ishlatish -x ularni kalekrlashni talab qiladi). ICMP ECHO probalarini ( -I ) ishlatganda oxirgi chegirmalar uchun odatda chegirmalar talab qilinadi. Shunday qilib ular har doim ICMP dan foydalanilganda hisoblab chiqiladi.

-z

Problar orasidagi pauza qilish uchun vaqtni (millisekundlarda) o'rnating (asl qiymati 0). Solaris va routerlar kabi ba'zi tizimlar Ciscos tezligi icmp xabarlarini cheklaydi. Buning uchun yaxshi qiymat - bu 500 (masalan 1/2 soniya).

Ushbu dastur IP-paketni kichik internet-provayder paketlarini kichik ttl (jonli efir vaqti) bilan ishga tushirib, keyin ICMP-ni "shlyuzdan" vaqtdan oshib ketgan "javobni tinglash yo'li bilan internet-xost-paketiga kuzatib boradi. Biz problarimizni bir ttl bilan boshlaymiz va ICMP "portga ulanib bo'lmaydigan" (biz "host" ga ega bo'lishimiz kerak) yoki maksimal (bu 30-xavo uchun defaults va -m bayroq). Har bir ttl rejimida uch prob ( shkalasi bilan almashtirish) yuboriladi va har bir probning ttl, shluzi manzili va aylanish vaqtini ko'rsatuvchi chiziq chiqariladi. Probning javoblari turli shlyuzlardan kelgan bo'lsa, javob berish uchun har bir tizimning manzili bosib chiqariladi. Agar 5 sekund ichida javob bo'lmasa. vaqt tugashi oralig'i ( -w bayrog'i bilan almashtirilgan), ushbu prob uchun "*" bosiladi.

Biz maqsadli kompyuterning UDP prob paketlarini ishga tushirishini istamaymiz, shuning uchun maqsadli port portlash ehtimoli (agar maqsadga bir nechta bu qiymatdan foydalansa, u -p bayrog'i bilan o'zgartirilishi mumkin).

Namuna foydalanish va chiqishi mumkin:

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

2 va 3 satrlari bir xil ekanligiga e'tibor bering. Buning sababi, 2-hop tizimidagi lg-ksam.arpa - bu nol ttl (4.3BSD-da tarqatilgan versiyada bug) paketlarini yuboradigan buggi yadrosi. NSFNet (129.140) ning NSS uchun manzil-nom tarjimalarini ta'minlamagani uchun, paketlar qaysi mamlakatlarda o'zaro bog'langanligini bilib olishingiz kerak.

Bundan qiziqroq misol:

[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 milodiy 19 milodiy 3 lilac-dmc.Berkeley.EDU (128.32.216.1) 39 milodiy 19 milodiy 19 milodiy 4 ccngw-ner-cc.Berkeley.EDU (128.32.136.23) 19 milodiy 39 milodiy 39 milodiy 5 ccn-nerif22 Berkeley.EDU (128.32.168.22) 20 ms 39 milodiy 39 mil. 6 128.32.197.4 (128.32.197.4) 59 milodiy 119 ms 39 milodiy 7 131.119.2.5 (131.119.2.5) 59 ms 59 milodiy 39 milodiy 8 129.140.70.13 ( 129.140.70.13) 80 milodiy 79 milodiy 99 milodiy 9 129.140.71.6 (129.140.71.6) 139 milodiy 139 ms 159 milodiy 10 129.140.81.7 (129.140.81.7) 199 ms 180 ms 300 milodiy 11 129.140.72.17 (129.140.72.17) 300 Milodiy 239 milodiy 239 milodiy 12 * * * 13 128.121.54.72 (128.121.54.72) 259 milodiy 499 milodiy 279 ms 14 * * * 15 * * * 16 * * * 17 * * * 18 ALLSPICE.LCS.MIT.EDU (18.26 .0.115) 339 milodiy 279 milodiy 279 milodiy

Eslatib o'tamiz, 12, 14, 15, 16 va 17-sonli shlyuzlar ICMP-ni "vaqtdan oshib ketgan" xabarlarni jo'natmasliklari yoki bizga yetib kelish uchun juda kichik bo'lgan ttl-lar yuborishlari mumkin. 14 - 17 "MIT S Gateway" kodini ishga tushiradi. Xudo faqatgina nima sodir bo'lganini biladi 12.

Yuqorida keltirilgan silent shluzi [12] UX tarmoq kodi (va uning derivativlari): 4.x (x <= 3) ning asl nusxadagi har qanday ttl qoldig'ini ishlatib, xabar olinmaydi. datagrami. Shundan so'ng, tarmoq eshiklari uchun qolgan ttl nolga teng, ICMP ning "vaqt o'tgani" bizga qaytarilmasligi kafolatlanadi. Ushbu xato xatti-harakatlari maqsad tizimida paydo bo'lganda bir oz ko'proq qiziq:

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

E'tibor bering, 12 ta "shlyuzlar" mavjud (13 ta yakuniy manzil) va ularning to'liq yarmi "yo'qolgan". Haqiqatan ham, RIP (Sun OS3.5 ishlaydigan Sun-3) ttl-ni ICMP javobida ttl sifatida keladigan datagramdan ishlatadi. Shunday qilib, javob qaytarish yo'lida vaqt o'tishi kerak (ICMP ning ICMP uchun yuborilmagani uchun hech kimga xabarnoma yuborilmasdan) biz yo'lning uzunligi kamida ikki marta bo'lgan ttl bilan tekshirilmagunimizcha. Ya'ni, RIP, albatta, faqat 7 otishni o'rganish. 1-ttl bilan qaytib keladigan javob bu muammo mavjudligini bilishdir. Traceroute bosib chiqaradi "!" agar ttl = <1 bo'lsa, sotuvchi juda ko'p (DEC ning Ultrix, Sun 3.x) yoki standart bo'lmagan (HPUX) dasturiy ta'minotni yuborganligi sababli, ushbu muammoni tez-tez ko'rishni va / sizning problaringiz xosti.

Vaqtdan keyin boshqa mumkin izohlar H ,! N , yoki ! P (protsessor, tarmoq yoki protokol etishmasligi) ,! S (manba marshruti bajarilmadi) ,! F- (parchalanish kerak - RFC1191 yo'li MTU ochish qiymati ko'rsatiladi) ! X (ma'muriy ravishda taqiqlangan) ,! V (mezbonning ustunlik buzilishi) ,! C (efirda bekor qilish) yoki ! (ICMP mavjud emas kod). Ular RFC1812 (RFC1716 o'rnini bosadigan) tomonidan belgilanadi. Agar deyarli barcha problar natijaga erisha olmasa, traceroute voz kechib chiqadi.

Ushbu dastur tarmoqni test qilish, o'lchash va boshqarish uchun mo'ljallangan. Avvalambor qo'lda yorilish izolyatsiyasi uchun ishlatilishi kerak. Tarmoqqa yuk tushishi sababli, oddiy operatsiyalar yoki avtomatlashtirilgan skriptlarda traceroute- dan foydalanish aqlsizdir.

Shuningdek qarang

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