أهم أوامر الشبكات التي يحتاج كل مستخدم Linux لمعرفتها
فهم أوامر الشبكات في Linux يمكن أن يُحسن كثيرًا من تجربتك في إدارة النظام واستكشاف الأخطاء. تقدم هذه الأوامر مجموعة من الأدوات لمعرفة حالة الاتصال بالشبكة، واختبار السرعة، وإدارة التكوينات المختلفة. سواء كنت مبتدئًا أو لديك خبرة في Linux، يمكن أن تساعدك هذه الأوامر في التحكم بشبكتك بشكل فعال وحل مشكلات الاتصال بسرعة واحترافية.
يُعد Linux نظام تشغيل رائعًا للشبكات. فهو نظام رائع للخوادم لسبب وجيه. تأتي توزيعات Linux مثبتة مسبقًا بالعديد من أدوات الشبكات، ويمكنك تثبيت المزيد من مدير الحزم لديك. فيما يلي بعض أوامر الشبكات في Linux التي يجب أن تعرفها.
1. ping
قد يكون الأمر ping هو أهم أمر في مجال الشبكات في Linux. يتيح لك هذا الأمر التحقق مما إذا كان الجهاز البعيد يستجيب لطلباتك. يمكنك معرفة ما إذا كان اتصال الإنترنت لديك يعمل أو ما إذا كان الخادم قد توقف.
الاستخدام الأساسي هو ping متبوعًا بعنوان IP أو DNS:
ping howtogeek.com
سيستمر الأمر ping إلى الأبد حتى تضغط على Ctrl+C، ثم يعطيك بعض الإحصائيات. يمكنك تعيين عدد باستخدام الخيار -c، متبوعًا برقم. ثم سيقوم الأمر ping بإرسال الأمر ping إلى الجهاز بهذا العدد من المرات فقط:
على سبيل المثال، لإرسال الأمر ping إلى howtogeek.com أربع مرات:
ping -c 4 howtogeek.com
لا تنزعج إذا لم تحصل على رد. يتم إعداد العديد من الخوادم لتجاهل طلبات ping لأسباب أمنية. جرّب أجهزة مختلفة إذا كنت تريد التأكد من عمل اتصال الإنترنت لديك.
تحذير
كن حذرًا بشأن إرسال ping إلى بعض الأجهزة. قد يفسر بعض المسؤولين تكرار إرسال ping على أنه محاولة اختراق.
2. traceroute
بينما يخبرك الأمر ping ما إذا كان الخادم قيد التشغيل ويستمع إلى طلبات ping، سيعرض لك الأمر traceroute المسارات المحتملة التي ستسلكها حزم البيانات من جهازك إلى وجهتها.
على سبيل المثال، للعثور على المسار من جهازك إلى HTG:
traceroute howtogeek.com
ستشاهد قائمة بالقفزات تملأ المحطة الطرفية. وربما سترى الكثير من الإدخالات الفارغة. ويرجع هذا أيضًا إلى عدم استماع العديد من الأجهزة لأوامر ping. يعمل traceroute عن طريق تعيين TTL أو “Time To Live” لحزمة الإنترنت بكميات متزايدة بحيث تفشل وتعيد موقع الخوادم على طول مسار محتمل. قد تتغير المسارات في كل مرة تقوم فيها بتشغيل traceroute.
3. mtr
قد تشعر بالحيرة بشأن استخدام الأمرين ping أو traceroute. لماذا لا تستخدم كليهما؟ هذا ما يفعله mtr، أو My Traceroute. يجمع mtr بين الأمرين ping وtraceroute في برنامج واحد. يمكنك الحصول على المسار الذي تسلكه حزم البيانات الخاصة بك بينما يمكنك رؤية الإحصائيات. يعمل mtr بشكل مستمر. كما يعمل كشاشة كاملة أو كنافذة واجهة مستخدم رسومية.
والأمر المثير للاهتمام هو مشاهدة الإحصائيات وهي تتجدد باستمرار. يُظهر mtr أعلى وأدنى قيمة بالإضافة إلى المتوسط والانحراف المعياري، أو مدى انتشار هذه القيم حول المتوسط. غالبًا ما سترى قفزة أو قفزتين أبطأ من الأخرى على طول الطريق. وهذا يعني أن هناك عنق زجاجة يعيق حركة المرور على طول الطريق.
يمكن أن يوضح mtr أيضًا كيف يمكن أن تتغير المسارات عبر الشبكة بين الأجهزة مع كل تشغيل.
4. ip
لقد حل ip محل ifconfig كأداة لتكوين الإنترنت في معظم توزيعات Linux الرئيسية. لن تضطر إلى القيام بالكثير باستخدامها، حيث سيتعامل توزيعك مع معظم أجهزة الشبكة بنفسه. يمكنك رؤية بعض المعلومات المفيدة باستخدام ip. على سبيل المثال، لعرض عناوين IP الحالية على أجهزة الشبكة الخاصة بك:
ip address
يمكنك أيضًا رؤية المسار الذي ستذهب إليه حزمك:
ip route
عند تشغيله بمفرده، سيعرض IP أسماء الأجهزة المتصلة بالشبكة وعناوين IP المخصصة لها حاليًا، بالإضافة إلى قناع الشبكة الفرعية، وهو الجزء الذي ينتمي إلى الشبكة. تبدأ واجهات Ethernet عادةً بـ “en”.
5. netstat
سيعرض الأمر netstat الاتصالات المفتوحة على جهازك دون أي وسيطات. سيعرض الخيار -r جدول التوجيه.
من المرجح أن تحتاج إلى أن تكون الجذر لتشغيله لأسباب أمنية:
sudo netstat
سيعرض لك الأمر netstat المنافذ المفتوحة على جهازك والمنافذ التي تستمع. يمكنك استخدام هذا الأمر لمراقبة اتصالاتك والتحقيق في أي شيء يبدو مشبوهًا.
6. route
سيعرض المسار، كما يوحي الاسم، جدول التوجيه لأي واجهات شبكة على جهازك. وعادةً ما يكون هذا هو أقرب جهاز توجيه أو مفتاح. ويمكنك حتى إضافة أو حذف المسارات يدويًا، ولكنك ربما لن تحتاج إلى ذلك في ظل الظروف العادية على جهاز سطح مكتب قياسي.
يعني السطر “الافتراضي” المسار الافتراضي للشبكة حيث ستذهب الطلبات. وعادةً ما يكون هذا هو أقرب جهاز توجيه أو مودم كبل إذا كان متصلاً مباشرة بجهازك.
ستدير معظم أنظمة سطح المكتب العادية التوجيه تلقائيًا، وعادةً ما يكون هناك مكان واحد فقط للذهاب إليه في الشبكات السكنية، مثل جهاز توجيه Wi-Fi الخاص بك.
7. ss
ss هي أداة مساعدة لتفريغ الإحصائيات الخاصة بأي مآخذ توصيل على جهازك إلى المحطة الطرفية. وهذا مفيد للعثور على أي اتصالات شبكة مفتوحة. وكما هو الحال مع netstat، فهي أداة مفيدة للتحقيق في اتصالات الشبكة ومعرفة ما إذا كان هناك أي شيء متصل بجهازك لا ينبغي أن يكون متصلاً. يمكنك تضييق نطاق اتصالاتك حسب البروتوكول أو المقبس.
ss وnetstat هما طريقتان جيدتان لمعرفة المزيد عن المآخذ أو الشبكات بشكل عام.
8. tcpdump
tcpdump هو برنامج لتتبع الحزم وهو نظير قائم على المحطة الطرفية لبرنامج Wireshark الشهير. باستخدام tcpdump، يمكنك رؤية الحزم التي يرسلها جهازك. نظرًا لأن هذا يعرض كل حركة المرور على واجهة، فأنت تحتاج عادةً إلى أن تكون الجذر لتشغيله:
sudo tcpdump
سيعرض هذا كل الحزم التي يتم إرسالها واستقبالها على واجهة الشبكة الافتراضية في الوقت الفعلي. يعد هذا تشخيصًا مفيدًا، ولكن يمكن استخدامه أيضًا للتجسس على حركة المرور على الإنترنت. لحسن الحظ، من الشائع هذه الأيام تشفير حركة المرور على الإنترنت، لذا إذا تمكن شخص ما من الوصول إلى عمليات الإرسال الخاصة بك، فلن يكون ذلك مفيدًا ما لم يجد طريقة لفك تشفيرها.
9. dig
إذا كنت تريد معرفة من يقف وراء اسم النطاق هذا، فيمكنك استخدام أمر dig:
dig howtogeek.com
عند إدخال اسم نطاق، سيستفسر برنامج dig عن خوادم DNS ويعرض النتائج. DNS هو الذي يربط أسماء النطاقات بعناوين IP. ستكون أسماء النطاقات “موثوقة”، أي أنها من عنوان IP للنطاق المطلوب، أو “متكررة”، أي أن الخادم سأل خادم DNS آخر عن العنوان.
سيعرض برنامج dig عنوان IP المرتبط بالنطاق في قسم “الإجابة”. كما سيعرض أيضًا متى قدمت الطلب والمدة التي استغرقها خادم DNS للاستجابة في نهاية الناتج.
10. host
سيقدم لك المضيف أيضًا مزيدًا من المعلومات حول اسم المجال، مثل الخوادم التي تتعامل مع البريد الإلكتروني. وكما هو الحال مع dig، سيخبرك بعنوان IP لاسم المجال بالإضافة إلى الخوادم التي ستتعامل مع البريد الإلكتروني.
هذه الأداة أسهل في القراءة من dig لأنها تحتوي على معلومات أقل. ستلاحظ أن العديد من المواقع لديها خوادم بريد متعددة، بما في ذلك HTG. تتوافق خوادم البريد المتعددة عادةً مع المجالات الفرعية، مثل sales.example.com لفريق مبيعات example.com، وengineering.example.com لقسم الهندسة، وما إلى ذلك.
ما يهمك على الأرجح هو السطر الأول فقط، والذي يخبرك بالعنوان الذي استجاب لطلب DNS.
11. whois
سيعيد لك برنامج whois السجلات الرسمية لاسم المجال، وهو ما قد يكون مفيدًا إذا كنت بحاجة إلى الاتصال بمسؤول في موقع ويب للإبلاغ عن مشكلة. ومن الممكن أيضًا إساءة استخدام هذا، ولهذا السبب من الممكن تسجيل اسم المجال بشكل مجهول.
ستشاهد الكثير من نفس المعلومات في dig أو host، ولكنك سترى أيضًا معلومات الاتصال الخاصة بمن سجل اسم المجال. إذا كان مالك الموقع لا يريد أن يكون اسمه وعنوانه متاحين لأي شخص يعرف كيفية تشغيل استعلام whois، فسيتم تسجيل اسم المجال غالبًا بواسطة شركة تبيع أسماء المجالات، مثل GoDaddy. سترى أيضًا متى تم تسجيل اسم المجال ومتى تنتهي صلاحيته.
12. curl أو wget
تعد أدوات curl وwget شائعة الاستخدام لتنزيل الملفات من الخوادم باستخدام سطر الأوامر. تتبع أداة wget عمليات إعادة التوجيه تلقائيًا، لكن أداة curl شائعة الاستخدام في البرمجة النصية. ستتيح لك بعض الأدوات، مثل Oh My Zsh، استخدام أحدها كجزء من عملية التثبيت.
لاستخدام أداة curl لتنزيل الصفحة الرئيسية من موقع howtogeek.com:
curl howtogeek.com
وللبرنامج wget:
wget howtogeek.com
إذا كنت تستخدم إحدى هذه الأدوات المساعدة، فكن حذرًا بشأن الزحف إلى موقع شخص آخر. من الأفضل إجراء تنزيل مكثف من جهاز تملكه أو لديك إذن للقيام بذلك. وإلا، فقد يتم تفسير ذلك على أنه هجوم على الموقع.
الفرق الرئيسي بين الاثنين هو أن curl أكثر ملاءمة لتنزيل الملفات الفردية، بينما يمكن لـ wget تتبع الروابط عبر موقع لتنزيل صفحات أخرى. يمكنك حتى تنزيل نسخة كاملة من موقع ويب باستخدام wget، وهو أمر مفيد لعمل نسخة احتياطية محلية في حالة تعطل الموقع.