موضوع مقاله

آموزش کامل کار با دستور tracert

دستور یا فرمان tracert یکی از ابزارهای قدرتمند در سیستم‌عامل ویندوز بوده که ازآن‌جهت رفع اشکال استفاده می‌شود. این دستور به شما اجازه می‌دهد تا مسیر هاست موردنظر خود را ردیابی کنید و از ایرادات آن مطلع شوید. این فرمان از پیام Echo Request پروتکل ICMP برای بررسی دستگاه‌های مسیر تا هاست مقصد استفاده می‌کند.

دستور tracert در سیستم‌عامل ویندوز استفاده می‌شود و اگر قصد دارید در لینوکس از این دستور بهره ببرید باید معادل آن یعنی traceroute را استفاده کنید که مایکروسافت به اختصار از همین دستور لینوکسی استفاده می‌کند. دستور tracert و یا traceroute هر دو برای پی بردن به این موضوع است که بسته اطلاعاتی تولید شده از چه مسیری حرکت می‌کند تا به مقصد برسد. از نام دستور هم می‌توان متوجه این موضوع شد.

مکانیزم کاری دستور tracert به چه صورت است؟

این دستور بعد از اجرا شدن مقدار TTL را برابر یک قرار می‌دهد و به اولین روتری که رسید، مقدار TTL یکی کم می‌شود و صفر می‌شود و بسته اطلاعاتی یا همان پکت(Packet) از بین می‌رود. اگر نمی‌دانید چرا و یا TTL چیست، حتما پست مربوط به Ping را مطالعه کنید. وقتی پکت از بین رفت، دستور tracert یک گزارش به سمت مبدا ارسال می‌کند و مشخصات آن روتری که در آن TTL=0 شد را به مبدا اعلام می‌کند. (بعنوان مثال می‌گوید بسته من در این روتر با این مشخصات(زمان، IP روتر، اسم روتر و…) از بین رفت). به این بسته اصطلاحا ICMP Time Exceeded Message گفته می‌شود.

این دستور تا زمانی که به مقصد نرسد، یا به آستانه TTL نرسیم(به صورت پیش‌فرض تا 30 هاپ یا روتر ادامه می‌دهد)، متوقف نخواهد شد. پس برای بار دوم TTL=2 قرار می‌دهد و بسته را ارسال می‌کند و این بسته تا جایی می‌رود که مقدار آن برابر با صفر شود و از بین برود و زمانی که از بین رفت، مشخصات روتر آخر را برای مبدا ارسال می‌کند و این روند تا آنجایی ادامه پیدا می‌کند که بسته اطلاعاتی به مقصد برسد تا آستانه TTL به پایان برسد. بدین ترتیب ما متوجه می‌شویم که پکت ما از کجا عبور می‌کند و چه اتفاقی برای آن می‌افتد. پس کار دستور Tracert ارسال بسته‌های ICMP با TTLهای متفاوت برای ردیابی مسیر حرکت بسته است.

مثالی از دستور tracert بزنیم!

فرض کنید از مخابرات لینک ارتباطی دریافت کرده‌اید و اینترنت قطع می‌شود، یکی از ابتدائی‌ترین راه‌کارها برای حل مشکل قطعی اینترنت، استفاده از همین دستور tracert است تا متوجه شویم که از کجا به بعد ارتباط نداریم. در واقع با اجرای این دستور از هر جا به بعد به صورت پشت سرهم Request timed out گرفتیم، یعنی از آن‌جا به بعد ارتباط قطع است. پس با این دستور دقیقا می‌توانیم مطمئن شویم که از سمت ما اینترنت قطع است یا از سمت مخابرات. اگر از سمت مخابرات بود و حاشا کردند، میتوانی آن‌ها را راهنمایی کنی که از چه مکانیزمی مطمئن شدی و بعد با زبان شیرین فارسی بهشون ف****ح****ش بدی. البته این یک شوخی بود. اگر این‌کار رو بکنید، کار شما را انجام نمی‌دهند. 🙂

روش اجرای دستور Tracertچیست؟

برای اجرای این دستور کاربردی بعد از باز کردن CMD به صورت زیر دستور را تایپ کنید و Hostname یا IP آدرس مقصد را بعد از دستور قرار دهید. در تصویر بالا پس از عبور از 9 عدد روتر به وبسایت بامادون رسیدیم.

				
					tracert [Hostname or IP Address]  ------  tracert www.netist.net -------tracert -d 8.8.8.8
				
			

برای اجرای سریع‌تر این دستور بهتر است پارامتر d- را بعد از دستور قرار دهید تا دستور از بدست آوردن Hostname روترهای بین راهی صرف‌نظر کند و سریع‌تر اجرا شود.

اگر از یک جایی به بعد * برگردانده شد یعنی ارتباط از آن‌جا به بعد قطع است و اگر یک الی چند ستاره را نشان داد ولی دستور ادامه پیدا کرد، یعنی آن روترها نمی‌خواستند که Hostname یا نام آن‌ها فاش شود.

بررسی دقیق‌تر خروجی دستور tracert

برای تغییر این متن بر روی دکمه ویرایش کلیک کنید. لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چاپ و با استفاده از طراحان گرافیک است.

آموزش کامل کار با دستور tracert آموزش کامل کار با دستور tracert Tracert

5 بخش در خروجی یک دستور tracert وجود دارد که از چپ به راست یکی‌یکی آن‌ها را معرفی می‌کنیم. عددهایی که در اولین ستون نمایش می‌دهد، بیانگر تعداد روترها یا Hop هاپ‌هایی است که از آن‌ها بسته عبور کرده است (به روترهایی بین راهی اصطلاحا هاپ می‌گویند). سه ستون بعدی نمایانگر زمان است که در سه وهله بررسی می‌شود. یعنی بسته ICMP سه‌بار به سمت هر روتر ارسال می‌شود که خروجی قابل اعتمادتری داشته باشد. هر ستون مجموع مدت زمان رفت و برگشت یک بسته ICMP است. اگر یک روتر دچار مشکل شده باشد یا جواب ندهد، بجای زمان یک ستاره * نمایش می‌دهد. ستون آخر یعنی ستون پنجم هم نام روتر یا IP آن را نمایش می‌دهد.

چطوری با دستور Tracert عیب‎‌یابی کنیم؟

گفتیم که دستور tracert مسیر رسیدن بسته را به مقصد مشخص می‌کند. اگر از یک روتری به بعد به‌جای زمان ستاره (*) و به‌جای IP آدرس Request timed out نوشته شده بود، یعنی از آن‌جا به بعد مشکل داریم و می‌‌توانیم تشخیص دهیم که در شبکه داخلی است یا از شبکه LAN خارج شده است. معمولا IP اولی که نشان می‌دهد روتر شبکه داخلی ما است البته اگر فقط یک روتر داشته باشیم و IP آدرس آخری که به ما نمایش می‌دهد، آدرس مقصد است. در تست تصویر بالا ما سایت فیسبوک را Trace گرفتیم که نشان می‌دهد از کجا این سایت فیلتر شده است.

پارامترهای دستور tracert

دستور tracert هم مانند هر دستور CMD دارای یکسری پارامتر است که مهمترین آن‌‌ها را با هم بررسی می‌کنیم.

tracert -d

این پارامتر باعث می‌شود تا از نمایش دادن نام روترهای اجتناب شود و باعث افزایش سرعت دستور می‌شود. که در بخش‌های قبلی از آن استفاده کردیم.

tracert -h

با این پارامتر تعداد هاپ‌هایی که بسته از آن عبور می‌کند را مشخص می‌کنیم. مثلا اگر تعداد ۳۰ هاپ که به صورت پیش‌فرض است کافی نبود، کافیست که به صورت زیر مقدار آن را به صورت دستی مشخص کنیم.

				
					tracert -d -h 25 www.netist.net
				
			

tracert -w

بیانگر Wait یا همان حداکثر زمان منتظر ماندن برای پاسخ از سمت هاپ یا روتر می‌باشد که باز هم می‌‌توان آن را شخصی‌سازی کرد. زمان در اینجا بر حسب میلی ثانیه است.

				
					tracert -d -w 1000 www.netist.net
				
			

برای پارامترهای دیگر می‌توانید از دستور زیر استفاده کنید.

				
					tracert /?
				
			

به‌دست آوردن اطلاعات IP ها

به‌دست آوردن اطلاعات IPهای نمایش داده شده در دستور – دستور tracert چیست
سایت‌هایی مانند ip2location و … نمایش گرافیکی دستور را به ما نمایش می‌دهند ولی مشکلی که وجود دارد این است که، یا فیلتر شده هستند که با نرم‌افزار تغییر IP مسیر را درست نمایش نمی‌دهند یا از مبدا خود سایت شروع به نمایش می‌کنند که برای ما کارساز نیست. اگر بخواهیم بدانیم که یک IP نمایش داده شده در دستور Tracert مربوط به کجاست، می‌توانیم از سایت ripe.net کمک بگیریم و در بخش ripe database آن آدرس IP را وارد کنیم تا مشخصات آن را به ما نمایش دهد. به‌عنوان مثال IP که من انتخاب کردم مربوط به شاتل است.

جمع بندی

با دستور tracert می‌توانیم مسیر حرکت یک بسته ICMP را ردیابی کنیم تا متوجه شویم که یک بسته از چه مسیرهایی عبور می‌کند تا به مقصد برسد. همچنین برای حل مشکل قطعی ارتباط نیز از این دستور استفاده می‌کنیم تا متوجه شویم که ارتباط از کجا به بعد قطع می‌باشد. امیدوارم مورد توجه شما قرار گرفته باشد. هر سوالی داشتید در بخش نظرات بیان کنید تا در اسرع وقت به آن رسیدگی کنم.

0 0 رای ها
امتیازدهی به مقاله
اشتراک در
اطلاع از
guest
0 نظرات
بازخورد (Feedback) های اینلاین
مشاهده همه دیدگاه ها
0
افکار شما را دوست داریم، لطفا نظر دهید.x