كتيبات سطر الأوامر

Man » دليل traceroute عبر الإنترنت - وثائق مفصلة عبر الإنترنت لصفحة دليل traceroute

🌍
traceroute - عرض المسار الذي تسلكه الحزم إلى مضيف الشبكة.

الملخص

traceroute [-46dFITUnreAV] [-f first_ttl] [-g gate,...]
[-i device] [-m max_ttl] [-p port] [-s src_addr]
[-q nqueries] [-N squeries] [-t tos]
[-l flow_label] [-w waittimes] [-z sendwait] [-UL] [-D]
[-P proto] [--sport=port] [-M method] [-O mod_options]
[--mtu] [--back]
host [packet_len]
traceroute6  [options]
tcptraceroute  [options]
lft  [options]

الوصف

يتتبع traceroute مسار الحزم من شبكة IP أثناء توجيهها إلى مضيف معين.
يستخدم حقل "الوقت المستغرق" (TTL) في بروتوكول IP ويحاول الحصول على استجابة ICMP "الوقت انتهى" من كل بوابة على طول المسار إلى المضيف.

traceroute6 يعادل traceroute -6

tcptraceroute يعادل traceroute -T

lft، "تتبع الطبقة الرابعة"، يقوم بإجراء تتبع TCP، مثل traceroute -T، ولكنه يحاول
توفير التوافق مع التنفيذ الأصلي، والذي يسمى أيضًا "lft".

المعلمة المطلوبة الوحيدة هي اسم أو عنوان IP لمضيف الوجهة. المعلمة الاختيارية packet_len هي الحجم الإجمالي لحزمة الاستقصاء (افتراضيًا 60 بايت لـ IPv4 و 80 لـ IPv6). يمكن تجاهل الحجم المحدد في بعض الحالات أو زيادته إلى قيمة دنيا.

يحاول هذا البرنامج تتبع المسار الذي ستسلكه حزمة IP إلى مضيف إنترنت عن طريق إطلاق حزم استقصاء بحقل ttl صغير (الوقت المستغرق) ثم الاستماع إلى استجابة ICMP "الوقت انتهى" من بوابة. نبدأ عمليات الاستقصاء الخاصة بنا بقيمة ttl تساوي واحد ونزيدها بمقدار واحد حتى نحصل على ICMP "المنفذ غير قابل للوصول" (أو إعادة تعيين TCP)، مما يعني أننا وصلنا إلى "المضيف"، أو وصلنا إلى الحد الأقصى (والذي يكون افتراضيًا 30 قفزة). يتم إرسال ثلاث عمليات استقصاء (افتراضيًا) في كل إعداد لـ ttl ويتم عرض سطر يوضح ttl وعنوان البوابة ووقت الاستجابة لكل عملية استقصاء. يمكن أن يتبع العنوان معلومات إضافية عند طلب ذلك. إذا كانت الاستجابات تأتي من بوابات مختلفة، فسيتم عرض عنوان كل نظام يستجيب. إذا لم تكن هناك استجابة خلال فترة زمنية معينة، تتم طباعة "*" (علامة النجمة) لتلك العملية.

بعد وقت الرحلة، يمكن طباعة بعض التعليقات التوضيحية الإضافية: !H، !N، أو !P (المضيف، الشبكة أو البروتوكول غير قابل للوصول)، !S (فشل التوجيه المصدر)، !F (مطلوب التجزئة)، !X (محظور الاتصال إداريًا)، !V (انتهاك أولوية المضيف)، !C (يتم تطبيق قطع الأولوية)، أو ! (رمز ICMP غير قابل للوصول ). إذا أدت معظم عمليات الاستقصاء إلى حدوث نوع من أنواع عدم القدرة على الوصول، فسيتوقف traceroute ويخرج.


نحن لا نريد أن يقوم المضيف الوجهة بمعالجة حزم استكشاف UDP، لذا يتم تعيين منفذ الوجهة إلى قيمة غير مرجحة (يمكنك تغييرها باستخدام الخيار -p). لا توجد مشكلة مماثلة لـ ICMP أو تتبع مسار TCP (بالنسبة لـ TCP، نستخدم تقنية "نصف الاتصال"، مما يمنع رؤية الاستكشافات بواسطة التطبيقات على المضيف الوجهة).

في بيئة الشبكة الحديثة، قد لا تكون طرق تتبع المسار التقليدية قابلة للتطبيق دائمًا، بسبب الاستخدام الواسع للجدران النارية. تقوم هذه الجدران النارية بتصفية منافذ UDP "غير المرجحة"، أو حتى رسائل ICMP. لحل هذه المشكلة، يتم تنفيذ بعض طرق تتبع المسار الإضافية (بما في ذلك TCP)، انظر قائمة الطرق المتاحة أدناه. تحاول هذه الطرق استخدام بروتوكول ومنفذ مصدر/وجهة معينين، من أجل تجاوز الجدران النارية (ليتم اعتبارها مجرد بداية لنوع جلسة شبكة مسموح بها).

الخيارات

--help اطبع معلومات المساعدة واخرج.

-4, -6 فرض استخدام IPv4 أو IPv6 بشكل صريح لتتبع المسار. افتراضيًا، سيحاول البرنامج حل الاسم المحدد، واختيار البروتوكول المناسب تلقائيًا. إذا أرجع حل اسم المضيف كل من عناوين IPv4 و IPv6، فسيستخدم تتبع المسار IPv4.

-I, --icmp

استخدم ICMP ECHO للاستكشافات

-T, --tcp

استخدم TCP SYN للاستكشافات

-d, --debug

قم بتمكين تصحيح أخطاء مستوى المقبس (عندما يدعمها kernel Linux).

-F, --dont-fragment

لا تقم بتجزئة حزم الاستكشاف. (بالنسبة لـ IPv4، فإنه يضبط أيضًا بت DF، الذي يخبر أجهزة التوجيه الوسيطة بعدم إجراء التجزئة عن بُعد).

من خلال تغيير حجم حزمة الاستكشاف باستخدام معلمة سطر الأوامر packet_len، يمكنك الحصول يدويًا على معلومات حول MTU لكل قفزة شبكة. يحاول الخيار --mtu (انظر أدناه) القيام بذلك تلقائيًا.

لاحظ أن الميزات غير المجزأة (مثل -F أو --mtu) تعمل بشكل صحيح بدءًا من kernel Linux 6.22 فقط. قبل هذا الإصدار، كان يتم دائمًا تجزئة IPv6، ويمكن أن يستخدم IPv4 القيمة التي تم اكتشافها في ذاكرة التخزين المؤقت للمسار (والتي قد تكون أقل من MTU الفعلي للجهاز).

-f first_ttl, --first=first_ttl

يحدد القيمة الأولية لـ TTL التي يجب البدء بها. القيمة الافتراضية هي 1.

-g gateway, --gateway=gateway

يخبر تتبع المسار بإضافة خيار توجيه المصدر IP إلى الحزمة الصادرة التي تخبر الشبكة بتوجيه الحزمة عبر البوابة المحددة (معظم أجهزة التوجيه تعطّل توجيه المصدر لأسباب أمنية). بشكل عام، يُسمح بـ "عدة بوابات" (مفصولة بفواصل). بالنسبة لـ IPv6، يُسمح بالشكل num,addr,addr...، حيث num هو نوع رأس المسار (الافتراضي هو النوع 2). لاحظ أن النوع 0 من رأس المسار قد تم إهماله الآن (RFC5095).

-i interface, --interface=interface

يحدد الواجهة التي يجب أن يرسل من خلالها تتبع المسار الحزم. افتراضيًا، يتم تحديد الواجهة وفقًا لجدول التوجيه.

-m max_ttl, --max-hops=max_ttl

يحدد الحد الأقصى لعدد القفزات (الحد الأقصى لقيمة وقت البقاء). القيمة الافتراضية هي 30.


-N squeries, --sim-queries=squeries

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

-n لا تحاول تعيين عناوين IP إلى أسماء المضيفين عند عرضها.

-p port, --port=port

بالنسبة لتتبع UDP، يحدد منفذ الوجهة الأساسي الذي سيستخدمه traceroute (سيتم زيادة رقم منفذ الوجهة لكل حزمة استطلاع). بالنسبة لتتبع ICMP، يحدد القيمة الأولية لتسلسل ICMP (سيتم زيادتها أيضًا لكل حزمة استطلاع). بالنسبة لـ TCP والأنواع الأخرى، يحدد منفذ الوجهة الثابت الذي سيتم الاتصال به. عند استخدام أداة tcptraceroute، يحدد -p منفذ المصدر.

-t tos, --tos=tos

بالنسبة لـ IPv4، قم بتعيين قيمة النوع الخدمة (TOS) والأولوية. القيم المفيدة هي 16 (تأخير منخفض) و 8 (إنتاجية عالية). لاحظ أنه من أجل استخدام بعض قيم أولوية TOS، يجب أن تكون مستخدمًا فائقًا. بالنسبة لـ IPv6، قم بتعيين قيمة التحكم في حركة المرور.

-l flow_label, --flowlabel=flow_label

استخدم قيمة flow_label المحددة لحزم IPv6.

-w max[,here,near], --wait=max[,here,near]

يحدد المدة التي يجب الانتظار فيها للحصول على استجابة لحزمة استطلاع.

هناك ثلاث قيم (بشكل عام) فاصلة عشرية مفصولة بفاصلة (أو شرطة مائلة). يحدد Max أقصى وقت (بالثواني، القيمة الافتراضية 5.0) للانتظار، على أي حال.

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

يحدد الخيار here الاختياري (القيمة الافتراضية 3.0) عاملًا لضرب وقت الاستجابة الذي تم تلقيه بالفعل من نفس النطاق. يتم استخدام القيمة الناتجة كمهلة للحزمة، بدلاً من (ولكن ليس أكثر من) max. يحدد الخيار near الاختياري (القيمة الافتراضية 10.0) عاملًا مشابهًا لرد من بعض النطاقات التالية. (يتم استخدام وقت النتيجة الأولى التي تم العثور عليها في كلتا الحالتين).

أولاً، نبحث عن نفس النطاق (سيتم طباعة حزمة الاستطلاع هذه أولاً من الآن فصاعدًا). إذا لم يتم العثور على أي شيء، فابحث عن بعض النطاقات التالية. إذا لم يتم العثور على أي شيء، فاستخدم max. إذا كانت قيم here و/أو near صفرًا، يتم تخطي الحساب المقابل. يتم تعيين قيم here و near دائمًا على صفر إذا تم تحديد max فقط (للتوافق مع الإصدارات السابقة).

-q nqueries, --queries=nqueries

يحدد عدد حزم الاستطلاع لكل نطاق. القيمة الافتراضية هي 3.

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

-s source_addr, --source=source_addr

يختار عنوان مصدر بديل. لاحظ أنه يجب عليك تحديد عنوان أحد الواجهات. بشكل افتراضي، يتم استخدام عنوان الواجهة الصادرة.


-z sendwait, --sendwait=sendwait

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

-e, --extensions

عرض امتدادات ICMP (rfc4884). الشكل العام هو CLASS/TYPE: متبوعًا بتفريغ سداسي عشري. يتم عرض MPLS (rfc4950) بشكل تحليلي، في شكل: MPLS:L=label,E=exp_use,S=stack_bottom,T=TTL (المزيد من الكائنات مفصولة بـ /). يتم تحليل معلومات الواجهة (rfc5837) وعرضها أيضًا، في الشكل التالي: {INC|SUB|OUT|NXT}:index,IP_addr,"name",mtu=MTU (قد تكون جميع الحقول الأربعة مفقودة).

-A, --as-path-lookups

إجراء عمليات البحث عن مسار AS في سجلات التوجيه وطباعة النتائج مباشرة بعد العناوين المقابلة.

-V, --version

طباعة الإصدار والخروج.

هناك خيارات إضافية مخصصة للاستخدام المتقدم (مثل طرق التتبع البديلة وما إلى ذلك):

--sport=port

يختار منفذ المصدر المراد استخدامه. يعني -N 1 -w 5. عادةً ما يتم اختيار منافذ المصدر (إذا كانت قابلة للتطبيق) بواسطة النظام.

--fwmark=mark

تعيين علامة جدار الحماية للحزم الصادرة (اعتبارًا من نواة Linux 2.6.25).

-M method, --module=name

استخدام الطريقة المحددة لعمليات التتبع. الطريقة الافتراضية التقليدية لـ UDP لها اسم افتراضي، وicmp (-I) و tcp (-T) لهما أسماء icmp و tcp على التوالي. يمكن تمرير خيارات خاصة بالطريقة باستخدام -O. قد تحتوي معظم الطرق على اختصارات بسيطة خاصة بها، (-I يعني -M icmp، إلخ).

-O option, --options=options

يحدد بعض الخيارات الخاصة بالطريقة. يتم فصل الخيارات المتعددة بفاصلة (أو استخدم -O متعددة في سطر الأوامر). قد تحتوي كل طريقة على خيارات خاصة بها، أو قد لا تحتوي على أي خيارات على الإطلاق. لطباعة معلومات حول الخيارات المتاحة، استخدم -O help.

-U, --udp

استخدام UDP لمنفذ الوجهة المحدد للتتبع (بدلاً من زيادة المنفذ لكل عملية إرسال). المنفذ الافتراضي هو 53 (dns).

-UL    استخدام UDPLITE للتتبع (المنفذ الافتراضي هو 53).

-D, --dccp

استخدام طلبات DCCP لعمليات الإرسال.

-P protocol, --protocol=protocol

استخدام حزمة بروتوكول خام محددة للتتبع. البروتوكول الافتراضي هو 253 (rfc3692).

--mtu اكتشاف MTU على طول المسار الذي يتم تتبعه. يعني -F -N 1. تتم طباعة MTU الجديد مرة واحدة في شكل F=NUM في عملية الإرسال الأولى للقفزة التي تتطلب الوصول إلى هذا MTU. (في الواقع، عادةً ما يتم إرسال رسالة ICMP المقابلة "frag needed" بواسطة القفزة السابقة).

لاحظ أن بعض أجهزة التوجيه قد تخزن المعلومات التي تمت رؤيتها مرة واحدة حول التجزئة. وبالتالي، يمكنك الحصول على MTU النهائي من قفزة أقرب. حاول تحديد tos غير عادي باستخدام -t، فقد يساعد ذلك في محاولة واحدة (ثم يمكن تخزينه هناك أيضًا). راجع الخيار -F لمزيد من المعلومات.

--back طباعة عدد القفزات الخلفية عندما يبدو أنها مختلفة عن الاتجاه الأمامي. يتم تقدير هذا الرقم على افتراض أن القفزات البعيدة ترسل حزم رد مع تعيين ttl الأولي إما إلى 64، أو 128 أو 255 (وهو ما يبدو أنه ممارسة شائعة). تتم طباعته كقيمة سالبة في شكل '-NUM'.

قائمة الطرق المتاحة

بشكل عام، قد يلزم اختيار طريقة معينة لتتبع المسار عن طريق -M name، ولكن معظم الطرق لديها مفاتيح سطر أوامر بسيطة (يمكنك رؤيتها بعد اسم الطريقة، إن وجدت).

default

الطريقة التقليدية القديمة لتتبع المسار. يتم استخدامها افتراضيًا.

حزم الاستطلاع عبارة عن حزم بيانات UDP مع منافذ وجهة تسمى "غير مرجحة". منفذ "غير مرجح" للحزمة الأولى هو 33434، ثم يتم زيادته بمقدار واحد لكل حزمة تالية. نظرًا لأن المنافذ من المتوقع أن تكون غير مستخدمة، فإن المضيف الوجهة يعيد عادةً "icmp unreach port" كاستجابة نهائية. (لا أحد يعرف ما سيحدث عندما يستمع تطبيق ما لهذه المنافذ، على الرغم من ذلك).

هذه الطريقة مسموح بها للمستخدمين غير المتميزين.

icmp -I

الطريقة الأكثر شيوعًا في الوقت الحالي، والتي تستخدم حزم ICMP echo للاستطلاع. إذا كان بإمكانك ping(8) المضيف الوجهة، فيمكن تطبيق تتبع المسار باستخدام ICMP أيضًا.

قد تكون هذه الطريقة مسموحًا بها للمستخدمين غير المتميزين منذ النواة 3.0 (IPv4، بالنسبة لـ IPv6 منذ الإصدار 11، والتي تدعم مقابس dgram ICMP الجديدة أو "ping"). للسماح بمثل هذه المقابس، يجب على مسؤول النظام توفير نطاق sysctl net/ipv4/ping_group_range لمطابقة أي مجموعة من المستخدم. خيارات:

raw استخدم مقابس raw فقط (الطريقة التقليدية).

يتم تجربة هذه الطريقة أولاً افتراضيًا (لأسباب تتعلق بالتوافق)، ثم مقابس dgram ICMP الجديدة كحل احتياطي.

dgram استخدم مقابس dgram ICMP فقط.

tcp -T

طريقة حديثة معروفة، تهدف إلى تجاوز جدران الحماية. يستخدم منفذ الوجهة الثابت (افتراضيًا هو 80، http).

إذا كانت هناك بعض المرشحات الموجودة في مسار الشبكة، فمن المحتمل أن يتم تصفية أي منافذ UDP "غير مرجحة" (كما هو الحال في الطريقة الافتراضية) أو حتى أصداء ICMP (كما هو الحال في ICMP)، وسيتوقف تتبع المسار بالكامل عند جدار الحماية هذا. لتجاوز مرشح الشبكة، يجب علينا استخدام تركيبات البروتوكول/المنفذ المسموح بها فقط. إذا قمنا بتتبع خادم بريد، على سبيل المثال، فمن المرجح أن يكون -T -p 25 قادرًا على الوصول إليه، حتى عندما لا يتمكن -I من ذلك.

تستخدم هذه الطريقة تقنية "النصف المفتوح" المعروفة، والتي تمنع التطبيقات الموجودة على المضيف الوجهة من رؤية عمليات الاستطلاع الخاصة بنا على الإطلاق. عادةً ما يتم إرسال syn TCP. بالنسبة للمنافذ غير المستمع إليها، نتلقى إعادة ضبط TCP، وينتهي كل شيء. بالنسبة للمنافذ التي تستمع بنشاط، نتلقى syn+ack TCP، ولكننا نرد بإعادة ضبط TCP (بدلاً من ack TCP المتوقع)، وبالتالي يتم إسقاط جلسة TCP البعيدة دون أن يلاحظ التطبيق ذلك.

هناك بعض الخيارات لطريقة TCP:

syn,ack,fin,rst,psh,urg,ece,cwr

يحدد علامات TCP المحددة لحزمة الاستطلاع، بأي تركيبة.

flags=num

يحدد حقل العلامات في رأس TCP بالضبط على num.

ecn أرسل حزمة syn مع علامات TCP ECE و CWR (لإشعارات الازدحام الصريحة، rfc3168).

sack,timestamps,window_scaling

استخدم خيار رأس TCP المقابل في حزمة الاستطلاع الصادرة.


sysctl استخدم إعداد sysctl الحالي (/proc/sys/net/*) لخيار رأس TCP أعلاه وخيار ecn.

يتم تعيينه افتراضيًا دائمًا، إذا لم يتم تحديد أي شيء آخر.

fastopen

استخدم خيار tcp fastopen (عند syn)، فقط للتفاوض الأولي بشأن ملف تعريف الارتباط.

mss=[num]

استخدم قيمة num (أو دون تغيير) لخيار maxseg في رأس tcp (عند syn)، واكتشف حدّها على طول المسار الذي يتم تتبعه. يتم طباعة قيمة mss الجديدة التي تم تغييرها مرة واحدة في شكل M=NUM في أول فحص يتم اكتشافها فيه. لاحظ أن بعض أجهزة التوجيه قد تُرجع جزءًا أصليًا قصيرًا جدًا في رسالة انتهاء الوقت، مما يجعل الفحص مستحيلاً. بالإضافة إلى ذلك، قد تصل الاستجابات بترتيب مختلف. كل هذا يمكن أن يؤدي إلى ظهور التقرير في مكان لاحق. (يمكن أن يساعد استخدام -N 1 في ترتيب الاستجابات).

info اطبع علامات tcp وخيارات tcp المدعومة للاستجابات النهائية لـ tcp عند الوصول إلى المضيف الهدف. يسمح بتحديد ما إذا كان التطبيق يستمع إلى المنفذ وأشياء مفيدة أخرى. الخيارات المدعومة لـ tcp هي كل ما يمكن تعيينه بواسطة -T -O، أي mss، وsack، والطوابع الزمنية، وتوسيع النافذة، وfastopen، بتنسيق الإخراج المماثل (قيمة لـ mss
ومجرد وجود للخيارات الأخرى).

الخيارات الافتراضية هي syn، وsysctl.

tcpconn

تنفيذ أولي لطريقة tcp، باستخدام استدعاء connect(2) البسيط، والذي يقوم بفتح جلسة tcp كاملة. لا يوصى به للاستخدام العادي، لأنه يؤثر دائمًا على التطبيق الوجهة (وقد يؤدي إلى إرباكه).

udp -U

استخدم حزمة udp مع منفذ وجهة ثابت (افتراضيًا 53، dns). يهدف إلى تجاوز جدار الحماية أيضًا.

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

تسمح هذه الطريقة للمستخدمين غير المتميزين.

udplite -UL

استخدم حزمة udplite لعمليات الاستقصاء (مع منفذ وجهة ثابت، افتراضيًا 53).

تسمح هذه الطريقة للمستخدمين غير المتميزين. الخيارات:

coverage=num

قم بتعيين تغطية إرسال udplite إلى num.

dccp -D

استخدم حزم طلب DCCP لعمليات الاستقصاء (rfc4340).

تستخدم هذه الطريقة نفس "التقنية النصفية المفتوحة" المستخدمة لـ TCP. منفذ الوجهة الافتراضي هو 3343.

الخيارات:

service=num

قم بتعيين رمز خدمة DCCP إلى num (افتراضيًا 1885957735).

raw -P proto

أرسل حزمة خام للبروتوكول proto. لا يتم استخدام أي رؤوس خاصة بالبروتوكول، فقط رأس IP. يعني -N 1 -w 5. الخيارات:

protocol=proto

استخدم بروتوكول IP proto (افتراضيًا 253).

ملاحظات

لتسريع العمل، عادةً ما يتم إرسال عدة عمليات استقصاء في وقت واحد. من ناحية أخرى، فإنه يخلق "عاصفة من الحزم"، خاصة في اتجاه الرد. يمكن لأجهزة التوجيه تقييد معدل استجابات icmp، ويمكن فقدان بعض الردود. لتجنب ذلك، قلل من عدد عمليات الاستقصاء المتزامنة، أو حتى اضبطها على 1 (كما في التنفيذ الأولي لـ traceroute)، أي -N 1


قد يتجاهل المضيف النهائي (الهدف) بعض عمليات الاستكشاف المتزامنة، وقد يستجيب فقط لأحدثها. يمكن أن يؤدي ذلك إلى ظهور المزيد من "القفزات التي تبدو منتهية الصلاحية" بالقرب من القفزة النهائية. نحن نستخدم خوارزمية ذكية للكشف تلقائيًا عن مثل هذا الموقف، ولكن إذا لم تتمكن من المساعدة في حالتك، فما عليك سوى استخدام الخيار -N 1.

للحصول على مزيد من الاستقرار، يمكنك إبطاء عمل البرنامج باستخدام الخيار -z، على سبيل المثال، استخدم -z 5 لإضافة فاصل زمني لمدة نصف ثانية بين عمليات الاستكشاف.

لتجنب الانتظار الإضافي، نستخدم خوارزمية تكيفية للفترات الزمنية (انظر الخيار -w لمزيد من المعلومات). يمكن أن يؤدي ذلك إلى انتهاء المهلة قبل الأوان (خاصةً عندما تختلف أوقات الاستجابة في بعض الأحيان) وطباعة "*" بدلاً من الوقت. في مثل هذه الحالة، قم بإيقاف تشغيل هذه الخوارزمية عن طريق تحديد الخيار -w مع الفترة الزمنية المطلوبة فقط (على سبيل المثال، -w 5).

إذا لم يبلغ بعض القفزات عن أي شيء باستخدام أي طريقة، فإن الفرصة الأخيرة للحصول على شيء ما هي استخدام الأمر ping -R (IPv4، ولأقرب 8 قفزات فقط).

انظر أيضًا

ping(8)، ping6(8)، tcpdump(8)، netstat(8)