آموزش دستور Tracert
همان طور که از نام Tracert پیداست، کار آن ردیابی کردن مسیر است. دستور Tracert یکی از دستورات خیلی مفید خط فرمان است که به کمک آن می توانیم از مسیری که بسته های ما در شبکه طی می کنند تا به مقصد برسند اطلاعات خوبی کسب کنیم.
دو سناریوی زیر می تواند کاربرد دستور Tracert را روشن تر کند :
سناریو اول :
در نظر بگیرید وقتی وب سایتی مانند iran.ir را باز می کنید این درخواست چه مسیری را طی می کند تا به iran.ir برسد ؟
سناریو دوم :
حالتی را در نظر بگیرید که مدیر شبکه اینترانت شرکتی هستید که دارای چند شعبه در شهرهای مختلف است و در حال حاضر ارتباط با یک یا چند بخش دچار اختلال شده است. ممکن است این مشکل علل مختلفی داشته باشد مثلا یک یا چند روتر از کار افتاده باشند یا مسیر ارتباطی بین روتر ها دچار اختلال شده باشد. با این حساب چطور محدوده مشکل پیش آمده را تعیین کنیم؟
دستور Tracert پاسخی به این سوالات است. اما پیش از شروع کار دستور Tracert بهتر است کمی در مورد نحوه عملکرد این ابزار بیشتر بدانیم :
Tracert با ارسال بسته های ICMP با TTL های متفاوت مسیر را مشخص می کند. بسته ها در مسیر ارسالی با گذر از هر روتر حداقل یکی از TTL های آن ها کاسته می شود. به بیان دیگر هر بسته برای عبور از هر روتر باید حداقل یک TTL عوارض بپردازند تا بتوانند عبور کنند. در این صورت با درصد بالایی هر TTL یک هاپ محسوب می شود. ( در صورتی که پردازش هر Packet در روتر بیش از یک ثانیه طول بکشد به ازای هر ثانیه TTL بیشتری از Packet کم می شود ) زمانی که TTL بسته به صفر می رسد، روتر باید یک بسته ICMP Time Exceeded Message را به کامپیوتر مبدا برگرداند.
دستور Tracert با فرستادن اولین بسته با TTL=1 ، اولین هاپ را مشخص می کند و هر بار به مقدار TTL یکی اضافه می کند تا هاپ های بعدی را مشخص کند. این فرایند تا زمانی انجام می شود که مقدار TTL به حداکثر مجاز خودش برسد یا اینکه به مقصد برسیم. پس Tracert از بسته های ICMP Time Exceeded Message ای که روتر ها به مبدا می فرستند برای تعیین مسیر استفاده می کند. البته بعضی از روترها هم هستند که بسته هایی را که TTL آن ها به پایان رسیده به طور ناجوانمردانه ای دور می اندازند و بسته ICMP Time Exceeded Message را به مبدا نمی فرستند بنابراین توسط Tracert قابل شناسایی نیستند.
شروع کار با دستور Tracert
برای استفاده از دستور Tracert باید به یکی از روش های زیر عمل کنید:
<Tracert < Host Name
<Tracert < IP Address
برای شروع، سایت iran.ir را با دستور Tracert بررسی می کنیم:
Tracert iran.ir
همان طور که مشاهده می کنید، دستور Tracert لیست مرتب شده ای از روتر ها را نمایش می دهد . این روتر ها همان هایی هستند که بسته های ICMP Time Exceeded Message را به کامپیوتر ما فرستاده اند.
ستون ها در دستور Tracert چه چیزی را نشان می دهند؟
در خروجی دستور Tracert پنج ستون مشاهده می کنید.
ستون اول (سمت چپ) شماره هاپ ها را نشان می دهد.
ستون آخر IP یا نام هر هاپ را نمایش می دهد.
اما سه ستون بعد از ستون اول در دستور Tracert چه چیزی را نشان می دهد ؟
Tracert برای هر هاپ 3 بسته ارسال می کند که هر ستون مربوط به هر بسته است. با ارسال این سه بسته ، خروجی معتبرتر و قابل اعتمادتری خواهیم داشت. مجموع زمان ارسال هر بسته از کامپیوتر ما به هاپ و دریافت پاسخ از هاپ به کامپیوتر ما ( مجموع زمان رفت و برگشت) مقادیری هستند که در این ستون ها قرار می گیرند.
چنانچه برای یک هاپ بسته ارسالی دچار مشکل شود و به مبدا برنگردد ، یک ستاره * بجای زمان ، نمایش داده می شود.(در تصویر بالا به فلش زرد دقت کنید)
و در پایان تعداد هاپ هایی که از آن ها عبور می کند مشخص می شود (کادر قرمز)
تحلیل خروجی Tracer
اولین هاپ ای که در خروجی Tracert قبل مشاهده می کنید، مودم ما با آی پی 192.168.1.1 می باشد. در صورتی که در یک LAN هستند و از طریق یک مودم به اینترنت متصل می شوید اولین هاپ شما مودم شما خواهد بود.
در صورتی که Tracert به مقصد برسد ، آخرین هاپ آدرسی است که آن را Tracert کردید.
نکته جالب دیگری که در تصویر بالا در بررسی خروجی Tracert می توان به آن اشاره کرد ، IP های خصوصی هاپ هاست که از کلاس A و در رنج 10.x.x.x هستند. این IP ها مربوط به روتر های شبکه اینترانت ISP و مخابرات می باشد .
با بررسی IP ها می توانیم شهرها و کشورهایی را که بسته های ما برای رسیدن به مقصد طی می کنند بیابیم
نکته: معمولا با افزایش تعداد هاپ ها زمان Trace شدن نیز افزایش می یابد.
خطایابی به کمک دستور Tracert :
در سناریوی دوم این سوال مطرح شد که اگر در ارتباط بین بخش های مختلف اشکالی پیش بیاید چطور آن را کشف کنیم؟ یک از راه حل ها استفاده از Tracert است تا ببینید که حداکثر تا کدام روتر (یا روتر ها) بسته های ارسالی بدون مشکل مسیر را طی می کنند. اولین روتری که بعد از آن بسته دیگر پاسخی نداریم جاییست که مشکل از آنجا آغاز می شود.
سوئیچ های فرمان Tracert
Tracert –d
این سوئیچ در هنگام بررسی هاپ ها، فقط IP آن ها را نشان می دهد و نام آن ها را Resolve نمی کند. این امر باعث افزایش چشم گیر سرعت به پایان رسیدن Trace می شود. کافیست یک بار بدون –d ویک بار با –d عمل Trace را انجام دهید و سرعت آن ها را مقایسه کنید.
Tracert –h
برای Trace کردن وب سایت هیوا شبکه، ملاحظه کردید که از 19 هاپ عبور کرد. چنانچه بخواهید فقط تا تعداد معینی از هاپ Trace انجام شود (نه بیشتر) از این سوئیچ استفاده کنید. مثلا در تصویر زیر مشخص کردیم که فقط تا پنج هاپ Trace انجام شود.
نکته: به طور پیشفرض تا 30 هاپ نمایش داده خواهد شد.
Tracert –w
به کمک این سوئیچ می توان حداکثر مدت زمانی را که باید منتظر پاسخ از هاپ بود را تعیین کرد. این مقدار بر حسب میلی ثانیه در نظر گرفته می شود. به مثال زیر توجه کنید :
Tracert –d –w 1000 iran.ir
برای اینکه کاربرد این سوئیچ را بهتر حس کنید می تونید مقدار 1000 را به 100 و 10 و 1میلی ثانیه تغییر دهید!
Tracert -4 و Tracert -6
چنانچه بخواهید یک Target را لزوما با IPv4 یا IPv6 ردیابی کنید این سوئیچ ها کاربرد خواهند داشت.
نکات جانبی :
1- شما می توانید Tracert را بدون خط فرمان انجام دهید. نرم فزار هایی مانندVisual Route به صورت گرافیکی و با برخی امکانات بیشتر مثل Multi Trace انجام می دهند. البته برای یک متخصص شبکه هیچ چیز جای خط فرمان را نخواهد گرفت !
2- سایت هایی وجود دارند که مسیر شما تا مقصد مورد نظر را به صورت گرافیکی Trace می کنند مانند سایت های زیر :
http://traceroute.monitis.com/
http://www.yougetsignal.com/tools/visual-tracert/
البته نکته ای دیگری که باید به آن توجه داشت این است که این سایت ها عمل Trace کردن را از موقعیت مکانی خود انجام می دهند و طبیعتا گرافی که نمایش می دهند نیز مربوط به موقعیت خودشان تا مقصدی است که شما درخواست کرده اید.
3- شما با داشتن IP یک هاپ (که از خروجی Tracert به دست آوردید) می توانید اطلاعات خیلی خوبی از آن هاپ به دست بیاورید. کافیست به سایت Ripe.net بروید و در بخش RIPE Database ، آی پی آن هاپ را وارد کنید.