TRACEROUTE (LINUX) yoki TRACERT (WINDOWS) ning qanday ishlashi haqida.
traceroute — tarmoq utilitasi. Vazifasi — ko'zlangan serverga yetib borguncha yo'ldagi barcha hostlar haqida ma'lumot chiqarish. Bu utilita orqali siz o'zingizdan chiqib ketayotgan trafikni qaerdan va qaysi provayderlar orqali o'tayotganini, marshrutning qaysi qismida tutilish (zaderjka) ko'payib ketayotganini, qaysi qismda tezlik pastligini bilib olishingiz mumkin bo'ladi. Agar sizning paketingiz ko'zlangan maqsadga yetib bormayatgan bo'lsa traceroute orqali qaysi host yoki serverdan keyin uzilish bo'layotganini bilib olishngiz mumkin.
Linuxda:
traceroute www.uz kabi.
Windowsda:
tracert www.uz kabi.
Ko'pchilik traceroute utilitasini qanday ishlashini, qanday qilib hostlar adresini chiqarib berishini bilmaydi. Buni oqibatida ba'zida mayda «problemacha»lar chiqib qoladi. Masalan, admin fayrvol orqali ICMP trafikni blokirovka qilib qo'yadida, keyin usha host treysda ko'rinmasa ajablanadi, nimaga hostning adresi o'rnida yulduzchalar deb.
Shuning uchun ozgina teoriya haqida gaplashamiz. Agar server, paket, ip adres, protokol, port, xost, domen, xop, TTL lar haqida ma'lumotga ega bo'lsangiz nazariya qismidan o'tib ketsangiz ham bo'laveradi.
Server — (oddiy *nix, linux, Windows 200x Advanced Server o'rnatilgan personal kompyuter, Cisco yoki boshqa markada marshrutizatorlar) trafikni marshrutizatsiya qiladigan qurilma. Y'ani klientlardan internet tomon chiqadigan trafikni o'zidan o'tkazib, ularni yo'nalishini belgilaydi. Global serverlar bilan local tarmoqni ajrata oladi. Ular o'rtasidagi trafikni o'tkaza oladi.
Paket — baylar (kilobaytlar) yig'indisi. Paket 2 qismdan iborat. Bosh qism va ma'lumotlar qismi (asosiy qism).
Bosh qismda jamiki texnik parametrlar jamlanadi, ya'ni bu qismda paketni junatgan hostning adresi, ko'zlangan hostning adresi, qaysi protokol va qaysi port orqali va hk.lar haqida ma'lumotlar bo'ladi.
IP-adres — qo'pol qilib aytganda kompyuterning Internet tarmog'idagi adresi.
Protokol — junatuvchi va qabul qiluvchi o'rtasida ma'lumot almashish uchun oldindan kelihib olingan kelishuvlar to'plami. Ikkala taraf ham ma'lumot almashinuvi vaqtida shu kelishuvlarga qat'iy rioya qiladi.
3 ta asosiy tarmoq protokoli mavjud:
TCP — Transfer Control Protocol — ma'lumot uzatishni boshqarish protokoli.
UDP — User Datagram Protokol — oddiy ma'lumotlar protokoli.
ICMP — Internet Control Message Protokol — Internet tarmoqlarini kontrol qilish protokoli.
TCP bilan UDP protokollari ma'lumot uzatish uchun ishlatilsa, ICMP protokoli paketlarni junatilishini, marshrut aniqlanishini, tarmoqni ishlashini nazorat qiladigan protokol. Bir so'z bilan aytganda «Slujebny' protokol».
Port — mantiqiy atama bo'lib, ma'lumot turini aniqlash uchun ishlatiladi. ya'ni har bir turdagi pakeltarni alohida portlarda qabul qilinadi. Veb-trafikni 80 portda. DNSga so'rovlarini 53 port. Va hokazo.
Xost — bu ham server yoki qurilma. Umuman olganda tramoqdagi har bir qurilmani umumiy qilib xost deb atashadi.
Domen — server(xost) adreslarini odamga tushunadigan ko'rinishidagi nomi. Masalan
www.tendsmart.com">
www.tendsmart.com">www.tendsmart.com ni 195.158.28.195 ko'rinishida eslab qolish qiyin. Shuning uchun DNS hizmati ishlab chilgan va 195.158.28.195 kabi uzun va noqulay adreslarga www.tendsmart.com kabi qulay nom bilan murojaat qilish mumkin.
Xop — Hop — ko'zlangan servergacha bo'lgan xostlar (serverlar) soni.
TTL — time to live. Yashash vaqti. TTLda ko'rsatilgan qiymat paketning maksimum nechta hostdan o'tishi mumkinligini bildiradi. Masalan junatilayotgan paketning adresati 14 ta xopdan keyin keladi. Lekin paketda TTL=10 ko'rsatilgan. Demak adresatga yetishiga 4 ta xop qolganda paket o'z-o'zidan yo'q bo'lib ketadi. Bundan maqsad nima?
Deylik siz ma'lumot junatayotgan komyuter tarmoqda yo'q. Siz junatgan paket esa tarmoqda aylanib yuraveradi. Chunki unda TTL ko'rsatilmagan. Buning oqibatida tarmoqda musor paketlar ko'payib ketadi va tarmoqni ortiqcha yuklanishiga olib keladi.
Har qaysi tizimda TTL har hil belgilanadi. Linux va FreeBSDda — 64, Windows da — 128, Cisco va Sun Solarisda — 256.
Biz www.mail.ru joylashgan serverning IP adresini oldik:
217.69.128.44, xoplarning maksimal qiymati 30 ga teng. Ya'ni bizdan mail.ru gacha bo'lgan xostlar soni 30 dan oshib ketsa, traceroute komandasi 31-xost va undan keyingilarni ko'rsatmaydi. Lekin bu xoplarinig maksimal qiymatni o'zgartirish mumkin.
Sxemadan ko'rinib turiptiki, bizning kompyuterimizdan keyingi 1-xost bu bizning shlyuzimiz. Shlyuzning real IP adresini atayin, xavfsizlik maqsadida bu yerda ko'rsatilmagan. Uning o'rnida IP adresslar bo'ladi. Undan keyin esa Uzpak serverlari, Qozog'iston serverlari, Moskvadagi Golden Telekom serverlari.
11 — xostga e'tibor qarating. 3 ta har xil IP adress. Nimaga? Chunki mail.ru kompaniyasi internetni Golden Telecomdan oladi. Va ushbu qurilma (Nomiga qaraganda Cisco Catalyst) kirish qismida bir nechta IP adresslar ega. Va bundan oldingi 195.239.1.245 adresdagi server shu 3la adreslarni taniydi.
12 xostdan boshlab, mail.ru serverlari boshlanadi. Lekin bizning treysimizda bu yerda ip-adreslar o'rnida yulduzchalar. Sababi, aftidan MAIL.RUdagi adminlar serverlaridagi kiruvchi/chiquvchi ICMP paketlarni blokirovka qilib qo'yishgandir. Aks holda istagan odam mail.ru korporatsiyasining ichki treyslarini ko'rib bilib olardi.
Keling endi shu jarayonni qanday ishlashini ko'rib chiqamiz.
Birinchi navbatda bizning kompyuterimiz o'ziga tanish bo'lgan DNS serverdan www.mail.ru ning IP adresini oladi. Ip adresni aniqlagan kompyuterimiz, shu adresga (217.69.128.44 ga) 30000-40000 portlar orasidagi biror port orqali UDP paket junatadi. Lekin junatayotgan paketning bosh qismida TTL ning qiymatini 1 ga tenglab junatadi. Paket marshrut tablitsasi bo'yicha birinchi bo'lib my_gateway_ip serveriga kelib tushadi. U yerda paketning TTL qiymati 1 ga kamaytirilib keyingi hostga junatilishi kerak. Lekin bunday bo'lmaydi. CHunki TTL qiymati shu yerda 0 ga teng bo'lib qoldi. Ya'ni paketning «yashash vaqti» tugadi. Server bu haqda bizni serverimizga habar beradi: ICMP protokolida, 30000-40000 port oralig'ida xabar junatadi. Xabarning mazmunida biz tomondan 217.69.128.44 ga junatilgan paketning «yashash vaqti» tugaganligi aytiladi. traceroute komandasiga ega bu xabarning qizig'i yo'q. Unga bu paketni kim va qaysi adresdan junatganligi muhim. traceroute bu jarayonni 3 marta qaytaradi. har safar paket almashinuviga qancha vaqt ketganligini aniqlaydi va o'rtacha vaqtni hisbolaydi. Rezultatlarni hotiraga saqlaydi va yana 217.69.128.44 adresiga UDP paketi junatadi. Biroq bu safar TTLning qiymati 2 ga teng.
Endigi safar paket «o'lganligi» to'g'risidagi xabar 195.158.12.217 adresidan keladi. CHunki birinchi server, my_gateway_ip, paketni qabul qiladi. TTLni birga kamaytiradi. Qaraydi, noldan kotta, demak uni keyingi hostga o'tkazvoradi. So'ng bundan oldin bo'lgan ishlar takrorlanadi va hk.
Demak, eng asosiysi moment, traceroute paketlarni UDP protokolida junatadi va javobni esa ICMP protokoli orqali oladi. Shuning uchun ICMP protokolini blokirovka qilgan serverlardan javob kelmaydi. Belgilangan vaqt ichida javob kelmasa ekranga yulduzcha belgisini chiqaradi.
Agar savollar bo'lsa marhamat. Fikr va mulohozalar bo'lsa undanda yaxshi.
E'tiboringiz uchun Rahmat!
Mirsaid
Manba:
Texnoman.uz