تتبع المسار

في مجال الحوسبة ، tracerouteو هي أوامر واجهة سطر الأوامرtracert التشخيصية لعرض المسارات المحتملة (المسارات) وتأخيرات العبور للحزم عبر شبكة بروتوكول الإنترنت (IP) .

لا تقوم أداة ping إلا بحساب أوقات الرحلة ذهابًا وإيابًا النهائية من نقطة الوجهة، بينما يمكن لأدوات تتبع المسار أن تعرض المزيد من التفاصيل، مثل أوقات الرحلة ذهابًا وإيابًا للحزم المستلمة من كل مضيف متتالي (عقدة بعيدة) على طول المسار إلى الوجهة ومجموع متوسط ​​الأوقات في كل قفزة كمقياس لإجمالي الوقت المستغرق لإنشاء الاتصال.

بالنسبة لبروتوكول الإنترنت الإصدار 6 (IPv6)، فإن الأداة تحمل أحيانًا الاسم [ 1 ] و [ 2 ] .traceroute6tracert6

التطبيقات

يتوفر أمر في العديد من أنظمة التشغيل الحديثة ، ويُطلق عليه عمومًا اسم tracerouteفي الأنظمة الشبيهة بنظام Unix مثل FreeBSD و macOS و Linux ، ويُطلق عليه اسم tracertفي Windows و ReactOS .

في نظام لينكس، tracepathتُعدّ أداة Tracepath أداةً مشابهةً لأداة traceroute، مع اختلافٍ رئيسي يتمثل في عدم حاجتها إلى صلاحيات المستخدم المتميز . [ 3 ] تُعدّ Tracepath جزءًا من مجموعة iputils التي تحتوي على حزمة ping . [ 4 ]

كانت هذه الوظيفة متاحة بشكل رسومي في نظام macOS، ولكن تم إيقافها منذ إصدار macOS Big Sur . [ 5 ]

توفر أنظمة التشغيل المستندة إلى Windows NT أيضًا PathPing ، الذي يجمع بين وظائف ping و tracert.

في أنظمة التشغيل الشبيهة بنظام يونكس ، يرسل برنامج traceroute افتراضيًا سلسلة من حزم بروتوكول بيانات المستخدم (UDP)، بأرقام منافذ وجهة تتراوح من 33434 إلى 33534؛ وتتضمن تطبيقات traceroute المرفقة مع أنظمة لينكس [ 6 ] ، وفري بي إس دي [ 7 ] ، ونت بي إس دي [ 8 ] ، وأوبن بي إس دي [ 9 ] ، ودراغون فلاي بي إس دي [ 10 وماك أو إس خيارًا لاستخدام حزم طلب صدى ICMP ( -I )، أو أي بروتوكول آخر ( -P ) مثل UDP، أو TCP باستخدام حزم TCP SYN ، أو ICMP. [ 11 ]

في نظام التشغيل ويندوز، يرسل برنامج tracert حزم طلب صدى ICMP، بدلاً من حزم UDP التي يرسلها برنامج traceroute افتراضياً. [ 12 ]

تُستخدم قيمة زمن البقاء (TTL)، والمعروفة أيضًا بحد القفزات ، لتحديد أجهزة التوجيه الوسيطة التي يتم اجتيازها للوصول إلى الوجهة. يرسل برنامج Traceroute حزم بيانات بقيم TTL تتزايد تدريجيًا من حزمة إلى أخرى، بدءًا من قيمة TTL تساوي واحدًا. تقوم أجهزة التوجيه بإنقاص قيم TTL للحزم بمقدار واحد أثناء التوجيه، وتتجاهل الحزم التي تصل قيمة TTL الخاصة بها إلى الصفر، مُرسلةً رسالة خطأ ICMP "تجاوز الوقت" . [ 11 ] بالنسبة للمجموعة الأولى من الحزم، يستقبل جهاز التوجيه الأول الحزمة، ويُنقص قيمة TTL، ثم يتجاهل الحزمة لأن قيمة TTL الخاصة بها أصبحت صفرًا. يُرسل جهاز التوجيه رسالة "تجاوز الوقت" إلى المصدر. أما المجموعة التالية من الحزم، فتُعطى قيمة TTL تساوي اثنين، لذا يقوم جهاز التوجيه الأول بإعادة توجيه الحزم، بينما يتجاهلها جهاز التوجيه الثاني ويرد برسالة "تجاوز الوقت". بهذه الطريقة، يستخدم برنامج traceroute رسائل ICMP Time Exceeded المُعادة لإنشاء قائمة بالموجهات التي تعبرها الحزم، حتى يتم الوصول إلى الوجهة، ويعيد رسالة ICMP Destination Unreachable إذا تم استخدام حزم UDP أو رسالة ICMP Echo Reply إذا تم استخدام رسائل ICMP Echo. [ 11 ]

تمثل قيم الطابع الزمني التي يتم إرجاعها لكل جهاز توجيه على طول المسار قيم التأخير ( زمن الوصول )، والتي يتم قياسها عادةً بالمللي ثانية لكل حزمة.

يتوقع المرسل ردًا خلال عدد محدد من الثواني. إذا لم يتم تأكيد استلام الحزمة خلال الفترة المتوقعة، فسيتم عرض علامة نجمة.

لا يشترط بروتوكول الإنترنت أن تسلك الحزم نفس المسار نحو وجهة محددة، لذا قد تكون المضيفات المدرجة مضيفات سبق أن مرت بها حزم أخرى. إذا لم يستجب المضيف في القفزة رقم N، فسيتم تخطي هذه القفزة في المخرجات.

إذا كانت الشبكة تحتوي على جدار حماية وتعمل بأنظمة ويندوز وأنظمة شبيهة بنظام يونكس، فيجب تمكين أكثر من بروتوكول واحد للوارد عبر جدار الحماية لكي يعمل تتبع المسار ويتلقى الردود.

تستخدم بعض تطبيقات تتبع المسار حزم TCP، مثل tcptraceroute وتتبع المسار من الطبقة الرابعة (lft). أما PathPing فهي أداة مساعدة أُضيفت مع نظام التشغيل Windows NT ، وتجمع بين وظائف ping وتتبع المسار. وMTR هو إصدار مُحسّن من تتبع مسار ICMP، وهو مُتاح لأنظمة Unix وWindows. وتعتمد جميع تطبيقات تتبع المسار على إرسال حزم ICMP Time Exceeded (النوع 11) إلى المصدر.

يستخدم تطبيق Cisco لأمر traceroute أيضًا سلسلة من حزم بيانات UDP ، كل منها بقيم TTL متزايدة ، إلى رقم منفذ غير صالح على المضيف البعيد؛ ويُستخدم منفذ UDP 33434 افتراضيًا. ويمكن لإصدار موسع من هذا الأمر (يُعرف باسم أمر traceroute الموسع ) تغيير رقم منفذ الوجهة المستخدم بواسطة رسائل فحص UDP. [ 13 ]

الاستخدام

يمكن عرض عناوين أجهزة التوجيه على خرائط مواقعها الفعلية. يوضح هذا المثال طلبًا من نيوزيلندا إلى عنوان IP في ماساتشوستس، والذي يسلك مسارًا يمر عبر أوروبا.

تتضمن معظم التطبيقات خيارات لتحديد عدد الاستعلامات المراد إرسالها لكل قفزة، ووقت انتظار الاستجابة، وحدود القفزات، والمنفذ المراد استخدامه. يؤدي استدعاء traceroute بدون خيارات إلى عرض قائمة الخيارات المتاحة.

بالنسبة لنظام لينكس، يقدم دليل traceroute مزيدًا من التفاصيل، بما في ذلك علامات الخطأ المعروضة.

$ traceroute -n -w 3 -q 1 -m 16 example.com traceroute to example.com (10.99.99.99), 16 hops max, 52 byte packets 1 192.168.7.7 5.152 ms 2 192.168.7.254 12.767 ms 3 172.16.32.64 11.638 ms 4 172.16.64.128 13.193 ms 5 172.16.128.254 20.624 ms 6 10.20.30.1 56.205 ms 7 10.20.30.254 24.573 ms 8 * 9 * 10 10.99.99.1 22.810 مللي ثانية 11 10.99.99.99 20.235 مللي ثانية

الوسائط المختارة لأمر traceroute هي:

  • -n تعطيل تحليل الأسماء
  • -w انتظر ثلاث ثوانٍ بدلاً من الخمس ثوانٍ الافتراضية
  • الخيار -q يرسل استعلامًا واحدًا فقط إلى كل قفزة بدلاً من ثلاثة استعلامات افتراضية.
  • -m يحدد الحد الأقصى لعدد القفزات إلى 16 قبل التوقف بدلاً من القيمة الافتراضية 30

— مع اعتبار example.com هو المضيف النهائي. في السطرين 8 و9 (TTL 8 و9)، تظهر علامات النجمة حيث لم يستجب جهاز التوجيه خلال المهلة الزمنية المحددة.

قيمة

يمكن أن يساعد برنامج Traceroute في تحديد تعريفات جداول التوجيه غير الصحيحة أو جدران الحماية التي قد تحظر حركة مرور بروتوكول ICMP، أو بروتوكول UDP ذي المنفذ العالي في اختبار ping على أنظمة Unix، إلى موقع ما. ولا يضمن الحصول على استجابة صحيحة من Traceroute اتصال التطبيقات، إذ قد يسمح جدار الحماية بمرور حزم ICMP ولكنه لا يسمح بمرور حزم بروتوكولات أخرى.

يستخدم مختبرو الاختراق برنامج Traceroute لجمع معلومات حول البنية التحتية للشبكة ونطاقات عناوين IP حول مضيف معين.

يمكن استخدام أداة Traceroute لتحسين تنزيل البيانات. إذا كانت هناك عدة نسخ احتياطية متاحة لنفس المورد، فيمكن تتبع كل نسخة للعثور على الأسرع.

الأصول

يذكر دليل برنامج traceroute أن فان جاكوبسون كتب البرنامج الأصلي عام ١٩٨٧ بناءً على اقتراح من ستيف ديرينغ ، وأن غاي ألميس ومات ماثيس كانا قد توصلا إلى الفكرة نفسها في نفس الوقت. [ ١٤ ] ويذكر مايك موس ، مؤلف برنامج ping ، على موقعه الإلكتروني أن برنامج traceroute كُتب باستخدام دعم بروتوكول ICMP في نواة النظام، والذي كان قد برمجه سابقًا لتمكين استخدام مقابس ICMP الخام عند كتابة برنامج ping لأول مرة. [ ١٥ ]

القيود

يُعاني برنامج Traceroute من عدة قيود. [ 16 ] فهو لا يكتشف المسارات على مستوى الموجّه، بل على مستوى الواجهة. ويظهر قيد آخر عندما لا تستجيب الموجّهات لطلبات التحقق أو عندما يكون لديها حدٌّ أقصى لاستجابات بروتوكول ICMP. [ 17 ] في حال وجود موازنة أحمال حركة البيانات ، قد يُشير Traceroute إلى مسار غير موجود فعليًا؛ وللحدّ من هذه المشكلة، يوجد تعديلٌ لبرنامج Traceroute يُسمى Paris-traceroute، [ 18 ] والذي يحتفظ بمعرّف التدفق لطلبات التحقق لتجنّب موازنة الأحمال.

انظر أيضاً

مراجع

  1. "Traceroute6(8) - صفحة دليل لينكس" .
  2. "Tracert6(8): أداة تتبع مسار IPv6 - صفحة دليل لينكس" .
  3. "tracepath(8) – صفحة دليل لينكس" . linux.die.net . تم الاطلاع عليه بتاريخ 21-06-2015 .
  4. https://www.linuxnetwork.net/blog/iputils-set-of-small-useful-utilities-for-linux-networking/
  5. روسينغول، جو (23 يونيو 2020). "إيقاف استخدام أداة الشبكة في نظام macOS Big Sur" . MacRumors .
  6. دليل مبرمج لينكس – أوامر الإدارة والأوامر ذات الامتيازات من Manned.orgtraceroute(8)  
  7. دليل مدير نظام FreeBSDtraceroute(8)  
  8. دليل مدير نظام NetBSDtraceroute(8)  
  9. دليل مدير نظام OpenBSDtraceroute(8)  
  10. دليل أوامر صيانة وتشغيل نظام DragonFly BSDtraceroute(8)  
  11. 1 2 3 كومر، دوغلاس (2004). شبكات الحاسوب والإنترنت مع تطبيقات الإنترنت . بيرسون للتعليم، ص 360-362 . ISBN  978-0131433519.
  12. "Tracert" . مستندات مايكروسوفت . 3 فبراير 2023. تم الاطلاع عليه في 29 يوليو 2023 .
  13. "فهم أوامر Ping و Traceroute" . إصدار برنامج Cisco IOS 12.1 الرئيسي . cisco.com. 29-11-2006 . تم الاطلاع عليه بتاريخ 08-12-2013 .
  14. "شفرة المصدر لـ traceroute6.c" . 2022-10-04 . تم الاطلاع عليه بتاريخ 2023-09-17 .
  15. "قصة برنامج PING" .
  16. راي بيلفيل (3 مارس 2017). "شرح قيود تتبع المسار" .
  17. مارشيتا، ب.؛ مونتيري، أ.؛ بيرسيكو، ف.؛ بيسكابي، أ.؛ كونها، إ.؛ كاتز-باسيت، إ. (يونيو 2016). كيف وإلى أي مدى يُشوش تتبع المسار فهمنا لمسارات الشبكة . ندوة IEEE الدولية لعام 2016 حول الشبكات المحلية وشبكات المناطق الحضرية (LANMAN). الصفحات 1-7 . doi : 10.1109/lanman.2016.7548847 . ISBN  978-1-4673-9882-4. S2CID 4643833 . 
  18. "مسار باريس" . paris-traceroute.net . تم الاطلاع عليه بتاريخ 10-06-2017 .

للمزيد من القراءة

  • فريش، إيلين (2001). دليل أوامر ويندوز 2000 المختصر . أورايلي . ISBN 978-0-596-00148-3.
  • ستانيك، ويليام ر. (2008). دليل مسؤول سطر أوامر ويندوز، الطبعة الثانية . مطبعة مايكروسوفت . ISBN 978-0735622623.
  • باريت، دانيال ج. (2012). دليل ماكنتوش الطرفي المختصر: تحكم بجهاز ماك الخاص بك . أورايلي . ISBN 978-1449328986.