هل صادفت "No Route to Host" أثناء محاولتك الوصول إلى خادم على Linux؟ قد يكون خطأ اتصال الخدمة هذا مزعجًا ، ولكن يمكنك إصلاحه بمجرد تحديد السبب.
تشير عبارة "لا يوجد توجيه إلى المضيف" إلى مشكلة في الشبكة ، وعادة ما تظهر عندما لا يستجيب الخادم أو المضيف. قد يحدث هذا بسبب مشاكل في الشبكة أو بسبب إعداد غير مناسب.
سنغطي كيفية استكشاف أخطاء الشبكة وإصلاحها ومعالجتها في هذه المقالة.
هل إعدادات الشبكة الخاصة بك صحيحة؟
قبل أن ننظر إلى الأسباب الأكثر تحديدًا لهذه المشكلة ، تأكد من صحة إعدادات الشبكة. هل يمكنك الاتصال بالويب؟ هل تم تكوين DNS الخاص بك بشكل صحيح؟
- لنبدأ بتشغيل هذا الأمر لاكتشاف: systemd-Resolution –status
- إذا لاحظت أي مشاكل DNS هناك ، فارجع إلى تكوين الشبكة وأعد ذلك إذا كان عليك ذلك. إذا كنت تستخدم شبكة قياسية مع IP ديناميكي ، فيجب تحديث أرقام DNS تلقائيًا.
- لتكوين DNS الخاص بك يدويًا ، انتقل إلى مدير الشبكة وأدخل عنوان IP يدويًا في علامة التبويب IPv4.
- إذا لم يكن توزيع Linux لديك يحتوي على سطح مكتب رسومي ، فانتقل إلى "/etc/systemd/resolved.conf" ، وابحث عن سطر DNS وقم بتغيير الأرقام باستخدام أرقام DNS التي تريدها وقم بإجراء تكوينات أخرى إذا كان عليك ذلك.
- أيضًا ، إذا قمت بإعداد IP ثابت ، فقد ترغب في العودة إلى IP ديناميكي والسماح لشبكتك بالحصول على معلومات الاتصال من خلال DHCP.
لا تنس إعادة تشغيل الكمبيوتر قبل محاولة الاتصال بالمضيف مرة أخرى. إذا كنت لا تزال تحصل على "لا طريق إلى المضيف" ، فاستمر في القراءة.
هل الخادم المضيف متصل بالإنترنت؟
الخطوة التالية هي التحقق من أن المضيف الذي تحاول الاتصال به متصل بالفعل بالإنترنت. بعد كل شيء ، أحد الأسباب الأكثر شيوعًا للخطأ هو أن الخدمة لا تعمل نتيجة للصيانة أو بسبب مشكلة أخرى.
إذا لم تكن الخدمة عبر الإنترنت ، فتحقق مما إذا كان المضيف موجودًا. في بعض الأحيان قد تكون الخدمة قد توقفت أو لم تبدأ في البداية ، حتى لو لم يكن هناك خطأ في الخادم نفسه.
- باستخدام systemd ، قم بتشغيل الأمر: sudo systemctl status servicename
إذا كانت الخدمة قيد التشغيل ، فأنت بحاجة إلى البحث عن سبب آخر.
هل أنت متصل بالمنفذ الصحيح؟
تحقق مرة أخرى من أي وثائق قد قدمها المضيف. من الممارسات الشائعة لمديري الخادم إغلاق المنافذ التي لا يتم استخدامها لتحسين أمان الخادم. غالبًا ما يستخدم المهاجمون المنافذ الشائعة لاستهداف خدمات Linux.
إذا كنت تحاول الاتصال بالخادم الخاص بك ، فيمكنك تتبع الخدمة إلى المنفذ الصحيح. للقيام بذلك ، تحتاج إلى تثبيت أداة أمان يمكن أن تساعدك في رؤية المنافذ المفتوحة - NMAP.
فيما يلي أوامر تثبيت NMAP عبر توزيعات Linux المختلفة:
CentOS: yum تثبيت nmap
دبيان: apt-get install nmap
أوبونتو: sudo apt-get install nmap
بمجرد تثبيت NMAP ، تحقق لرؤية المنافذ المفتوحة باستخدام الأمر التالي: sudo nmap -sS target-server-ip
إذا لم يكن لديك وصول مباشر إلى الخادم ، فسيتعين عليك الاتصال بالمضيف. ولكن قبل القيام بذلك ، ألق نظرة على بعض الأسباب المحتملة الأخرى لخطأ "No Route to Host" في Linux.
هل اسم المضيف صحيح؟
قد تحصل أيضًا على الخطأ "لا يوجد توجيه إلى المضيف" إذا كان جهاز الكمبيوتر والخادم الذي تحاول الاتصال به يستخدمان أسماء مضيفين مختلفة. يجب تكوين كلا الجهازين للاتصال ببعضهما البعض.
بصرف النظر عن تهيئة hosts المعتادة ، فأنت تريد الانتباه إلى ملفات hosts.deny و hosts.allow الموجودة في “/ etc”. إذا كنت تحاول الاتصال بخادم جديد ، فتأكد من حصولك على اسم مضيف الخادم بشكل صحيح.
هل iptables يمنع الاتصال؟
يعتبر iptables مفيدًا جدًا عندما تريد تكوين جداول جدار حماية Linux kernel. إن التحكم الكامل الذي يمنحه لك في حركة المرور التي تأتي من جهاز الكمبيوتر الخاص بك ويخرج منه أمر رائع.
ولكن من خلال خطأ بسيط في التكوين ، يمكن أن يحظر iptables الاتصال بالمنفذ الذي تريد الوصول إليه ويؤدي إلى ظهور الخطأ "No Route to Host".
- أولاً ، اطبع قائمة iptables الخاصة بك واتصالاتها عن طريق الكتابة sudo iptables -L وضرب يدخل.
- للتحقق مما إذا كان اللوم يقع على iptables ، قم بتشغيل الأمر التالي: sudo iptables -S. سيسمح لك هذا بمعرفة ما إذا كانت قواعد iptables التي قمت بتعيينها تحظر الاتصال. قد تضطر إلى إضافة قاعدة قبول إلى سلسلة الإدخال الافتراضية.
- لمسح قواعد جدار الحماية لجدار حماية خارجي ، يمكنك استخدام هذا الأمر: sudo iptables -F
خواطر ختامية
كما ترى ، قد يستغرق الأمر بعض الوقت للوصول إلى الجزء السفلي من الخطأ "لا يوجد توجيه إلى المضيف" ، ولكن الخطوات المذكورة أعلاه ستساعدك. على الرغم من أنها قد تبدو مشكلة معقدة ، إلا أنها غالبًا ما تكون نتيجة تكوينات متضاربة أو مشكلات بسيطة في الشبكة.
هل صادفت أي أسباب وإصلاحات محتملة أخرى لهذا الخطأ؟ اترك لنا تعليق وأخبرنا عنه.