دریافت مشاوره رایگان  02191094610

پیشتاز VPS

اطلاعات تماس

02191094610

info@pishtazvps.com

پنل مشتریان
خدمات پیشنهادی
اسکریپت های قابل نصب
وردپرس
هاتس پات
جمولا
دروپال
ویندوز
شاپیفای
مجنتو
تایپو تری
دستور Traceroute در لینوکس

دستور Traceroute در لینوکس + مثال‌های کاربردی

وقتی می‌خواهید مشکلات اتصال شبکه را بررسی کنید و بفهمید بسته‌های داده شما در مسیر طولانی اینترنت از چه مراحلی عبور می‌کنند، دستور traceroute یک ابزار قدرتمند و کاربردی در اختیار شما قرار می‌دهد.

دستور traceroute که در بعضی سیستم‌ها با نام tracert شناخته می‌شود یکی از ابزارهای مهم در لینوکس و سیستم‌های مبتنی بر یونیکس است که برای عیب‌یابی شبکه، بررسی مسیر عبور بسته‌ها و تحلیل تاخیر شبکه استفاده می‌شود. این دستور به مدیران سرور، توسعه‌دهندگان و کاربران حرفه‌ای کمک می‌کند مسیر حرکت بسته‌های شبکه از مبدا تا مقصد را به‌صورت مرحله‌به‌مرحله (Hop by Hop) بررسی کنند.

اگر وب‌سایت شما کند است، اتصال به سرور دچار اختلال شده یا می‌خواهید مشکل شبکه را دقیق‌تر تحلیل کنید، دستور traceroute یک ابزار حیاتی محسوب می‌شود، و اگر با مفاهیم شبکه، مدیریت سرور، مانیتورینگ ارتباطات و حتی سئو و دسترسی‌پذیری وب‌سایت‌ها سروکار دارید، آشنایی با traceroute می‌تواند نقش مهمی در تحلیل مشکلات ارتباطی و کاهش Downtime داشته باشد.

دستور traceroute در لینوکس
دستور traceroute در لینوکس

در این مقاله، به صورت کامل و مرحله‌به‌مرحله دستور traceroute را به همراه مثال‌های عملی نوشته شده بررسی می‌کنیم تا به راحتی بتوانید از traceroute در سناریوهای واقعی شبکه استفاده کنید.

traceroute چیست و چه کاربردی دارد؟

دستور traceroute برای نمایش مسیر حرکت بسته‌ها از مبدأ تا مقصد در شبکه استفاده می‌شود. این دستور نشان می‌دهد بسته‌ها در مسیر رسیدن به مقصد، از چه روترها، Gatewayها و نودهایی عبور کرده‌اند.

کاربردهای مهم traceroute عبارتند از:

  • عیب‌یابی مشکلات ارتباطی بین سرور و شبکه
  • بررسی محل ایجاد تاخیر (Latency)
  • شناسایی نقطه قطع ارتباط (Packet Loss)
  • تحلیل مسیر ترافیک اینترنت
  • بررسی مشکلات Routing
  • کمک به مدیران سرور و شبکه برای Debug ارتباطات

مثلاً اگر سایتی برای کاربران داخل ایران کند است، traceroute کمک می‌کند بفهمیم تاخیر در کدام بخش رخ می‌دهد: شبکه داخلی کاربر؟ ISP؟ روتر بین‌الملل یا دیتاسنتر مقصد؟

 

traceroute چیست و چه کاربردی دارد؟

traceroute چگونه کار می‌کند؟ (مکانیزم TTL)

Traceroute با استفاده از مکانیزم TTL (Time To Live) مسیر عبور بسته‌ها را به صورت مرحله‌ای آشکار می‌کند.

شیوه عملکرد traceroute

  1. در ابتدا بسته‌ای با مقدار TTL = 1 ارسال می‌کند

  2. اولین روتر بسته را دریافت کرده و TTL به 0 می‌رسد

  3. روتر بسته را Drop کرده و یک پیام ICMP به مبدأ برمی‌گرداند

  4. traceroute آدرس همان روتر را ثبت می‌کند

  5. بار بعد بسته‌ای با TTL = 2 ارسال می‌شود

  6. این فرایند تا رسیدن بسته به مقصد ادامه می‌یابد

به همین دلیل خروجی traceroute شامل لیست روترهای موجود در مسیر است.

در خروجی دستور traceroute هر خط و هر ستون معنا و کاربرد مشخصی دارد. در ادامه، تحلیل دقیق ستون‌ها و اجزای خروجی را می‌خوانید.

traceroute چگونه کار می‌کند؟

ساختار کلی هر خط در traceroute

نمونه خط:

2  10.10.5.1  8.123 ms  7.998 ms  8.021 ms

ساختار کلی هر خط در traceroute

 

هر خط معمولاً شامل ۴ بخش اصلی است:

1️⃣ ستون اول: شماره Hop (پرش)

  • نشان‌دهنده شماره گره (Router / Gateway) در مسیر است
  • هر hop یعنی یک روتر که بسته از آن عبور می‌کند
  • traceroute از TTL استفاده می‌کند و با هر hop مقدار TTL یک واحد کم می‌شود

📌 اگر مقصد دورتر باشد، تعداد hopها بیشتر می‌شود.

2️⃣ ستون دوم: IP یا نام میزبان (Router)

مثال: 10.10.5.1

  • آدرس IP یا نام DNS روتر در آن hop
  • اگر Reverse DNS فعال باشد، نام روتر نمایش داده می‌شود
  • در صورت عدم پاسخ، معمولاً * * * دیده می‌شود

مثال:

5  * * *

یعنی:

  • روتر پاسخ ICMP نمی‌دهد
  • یا فایروال اجازه پاسخ نمی‌دهد

3️⃣ ستون‌های سوم تا پنجم: زمان پاسخ (Latency)

مثال: 8.123 ms 7.998 ms 8.021 ms

  • زمان رفت‌وبرگشت (RTT – Round Trip Time) بسته‌ها
  • traceroute  تعداد 3 بسته برای هر hop ارسال می‌کند
  • هر عدد = زمان پاسخ یکی از بسته‌ها
  • تفسیر:
  • هرچه عدد کمتر = مسیر سریع‌تر
  • افزایش ناگهانی زمان = احتمال شلوغی یا فاصله زیاد
  • اختلاف زیاد بین ۳ عدد =  ناپایداری شبکه

4️⃣ واحد زمان: ms (میلی‌ثانیه)

  • تمام زمان‌ها بر حسب میلی‌ثانیه هستند
  • زیر 20ms: عالی (شبکه محلی یا نزدیک)
  • 20–80ms: خوب
  • 80–150ms: متوسط
  • بالای 200ms: تأخیر بالا

تحلیل کامل نمونه خروجی

traceroute to google.com (142.250.184.14), 30 hops max
1  192.168.1.1  2.345 ms  2.112 ms  2.064 ms
2  10.10.5.1  8.123 ms  7.998 ms  8.021 ms
3  172.16.40.1  15.213 ms 15.098 ms 15.201 ms
4  209.85.173.12  45.112 ms 44.990 ms 45.220 ms
5  142.250.184.14  48.220 ms 48.315 ms 48.501 ms
  • روتر داخلی (Gateway مودم): تأخیر بسیار کم = شبکه محلی
  • شبکه ISP: تأخیر طبیعی
  • مسیر داخلی اپراتور: تأخیر در حال افزایش
  • شبکه Google: پرش بین‌المللی
  • مقصد نهایی: اتصال موفق

هر ستون چه چیزی را نشان می‌دهد؟

بخش توضیح
Hop شماره روتر در مسیر
IP/Hostname آدرس روتر
ms زمان پاسخ هر بسته
* * * عدم پاسخ روتر
افزایش ms فاصله یا شلوغی شبکه

اگر ستاره (*) نمایش داده شود یعنی:

  • روتر پاسخ ICMP نمی‌دهد
  • Packet Filtering فعال است
  • فایروال یا ISP اجازه Reply نداده

اجرای traceroute با IP به جای دامنه

traceroute 8.8.8.8

کاربرد این روش:

  • تست ارتباط دی ان اس
  • تشخیص مشکل Name Resolution
  • بررسی مستقیم مسیر شبکه

اجرای traceroute با تعداد Hop کمتر

به صورت پیش‌فرض حداکثر 30 عدد Hop بررسی می‌شود.

برای کاهش آن:

traceroute -m 10 google.com

تغییر اندازه بسته ارسالی

traceroute -q 5 google.com

این یعنی:

  • به جای 3 بار تست در هر Hop
  • 5 بار تست انجام شود

کمک می‌کند Packet Loss دقیق‌تر مشخص شود.

traceroute با پروتکل ICMP (مشابه ویندوز)

به صورت پیش‌فرض در لینوکس از UDP استفاده می‌شود.
برای استفاده از ICMP:

traceroute -I google.com

این دستور مخصوص، زمانی کاربرد دارد که:

  • فایروال UDP را مسدود کرده باشد
  • روتر پاسخ ICMP Echo بدهد

traceroute فقط با آدرس IP بدون Reverse Lookup

به صورت پیش‌فرض، traceroute سعی می‌کند نام میزبان را Resolve کند.

برای نمایش فقط IP:

traceroute -n google.com

مزایا:

  • سرعت بیشتر
  • جلوگیری از تاخیر DNS
  • مناسب برای عیب‌یابی حرفه‌ای شبکه

اجرای traceroute با پورت دلخواه

traceroute -p 80 example.com

برای بررسی مسیر ترافیک وب کاربردی است.

تفاوت traceroute با ping

ویژگی ping traceroute
کاربرد بررسی دسترسی نمایش مسیر عبور بسته
خروجی یک مقصد چندین Hop
هدف Latency کلی شناسایی محل تاخیر
Packet Type ICMP UDP / ICMP

توضیح:
Ping می‌گوید مقصد در دسترس هست یا نه، Traceroute می‌گوید در مسیر چه اتفاقی می‌افتد.

رایج‌ترین خطاها در traceroute

در ادامه به بررسی رایج ترین خطاها در traceroute می پردازیم :

نمایش ستاره (*) به جای پاسخ

علت‌های احتمالی:

  • روتر Traceroute را Block کرده
  • Packet Filtering فعال است
  • مقصد پاسخ نمی‌دهد
  • ارتباط در همان Hop قطع شده

Destination Unreachable

پیغام Destination Unreachable به معنی «مقصد غیرقابل دسترسی» است و معمولاً در شبکه ظاهر می‌شود. دلایل متداول آن عبارتند از:

مقصد وجود ندارد: دستگاه یا سرور موردنظر خاموش است یا آدرس IP معتبر ندارد.

مسیر (Route) اشتباه است: مسیر رسیدن به مقصد در شبکه به‌درستی تنظیم نشده است.

مشکل ISP: ارائه‌دهنده اینترنت در انتقال بسته‌ها به مقصد مشکل دارد.

فایروال مسیر را مسدود کرده: تنظیمات امنیتی یا فایروال مانع عبور بسته‌ها می‌شوند.

در ادامه یک چک‌لیست سریع برای رفع خطای Destination Unreachable آورده شده است:

1. بررسی دسترسی به مقصد

با دستور ping [IP مقصد] بررسی کنید که دستگاه روشن و در شبکه پاسخگو است یا خیر. اگر پاسخی نیامد، ممکن است دستگاه خاموش باشد یا IP اشتباه باشد.

2. بررسی مسیر شبکه (Routing)

با دستور traceroute [IP مقصد] مسیر رسیدن به مقصد را بررسی کنید. اگر بسته‌ها قبل از رسیدن به مقصد متوقف شدند، مسیر در یکی از روترها مشکل دارد.

3. بررسی تنظیمات فایروال و امنیت شبکه

فایروال روی سرور یا روتر را بررسی کنید که بسته‌ها مسدود نشده باشند. مطمئن شوید که پورت‌ها و پروتکل‌های موردنظر باز هستند.

4. بررسی ISP و اتصال اینترنت

اتصال اینترنت خودت را با سایت یا IP دیگری تست کنید. اگر مشکل فقط با یک مقصد خاص است، ممکن است مسیر توسط ISP بسته شده یا مشکل موقت دارد.

5. بررسی آدرس IP و پیکربندی شبکه

IP و Subnet Mask خود را بررسی کنید. مطمئن شوید که Gateway و DNS به‌درستی تنظیم شده‌اند.

6. تست با ابزارهای دیگر

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

جایگزین‌های traceroute در لینوکس

mtr

ترکیب traceroute و ping در یک ابزار:

mtr google.com

قابل استفاده برای تحلیل زنده و مانیتورینگ لحظه‌ای Packet Loss

tracepath

نسخه سبک‌تر traceroute:

tracepath google.com

Paris-Traceroute

برای شبکه‌هایی با Load Balancing مناسب‌تر است.

نکات مهم در استفاده از traceroute

  • برخی روترها عمداً پاسخ نمی‌دهند
  • ستاره به معنی قطعی واقعی نیست
  • وجود NAT ممکن است مسیر واقعی را پنهان کند
  • Packet Loss در یک Hop همیشه مشکل نیست
  • تفسیر خروجی نیاز به دانش شبکه دارد

جمع‌بندی

دستور traceroute یکی از ابزارهای ضروری برای مدیران شبکه، مدیران سیستم و کارشناسان IT است. این ابزار با بررسی مسیر ترافیک و روترهای بین راه، امکان تحلیل دقیق Latency، Packet Loss و Routing Path را فراهم می‌کند.

  • در این مقاله موارد زیر را بررسی کردیم:
  • traceroute چیست و چگونه کار می‌کند؟
  • مکانیزم TTL و ICMP
  • نصب traceroute در لینوکس
  • اجرای traceroute با مثال‌های واقعی
  • کاربرد پارامترهای مهم
  • تفاوت traceroute با ping
  • ابزارهای جایگزین مانند mtr

استفاده از traceroute به شما کمک می‌کند مشکلات شبکه را سریع‌تر شناسایی کرده و درک روشن‌تری از مسیر ارتباطی بین سرویس شما و کاربران داشته باشید.

اشتراک گذاری

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

برای امنیت، از سرویس reCAPTCHA Google حریم خصوصی و شرایط استفاده استفاده کنید.