إعداد DNS واستكشاف أخطائه وإصلاحها
افهم كيفية تحويل خوادم Linux أسماء المضيفين إلى عناوين IP: اضبط محللات الأسماء، وحرّر /etc/hosts، واستخدم dig وnslookup وhost لتشخيص مشكلات DNS التي تعطل الاتصال حتى عندما تكون الشبكة سليمة.
إعداد DNS واستكشاف أخطائه وإصلاحها درس مجاني في Linux Server Deployment & SSH Mastery على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Linux Server Deployment & SSH Mastery، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Linux Server Deployment & SSH Mastery 4 دروس في المجموع.
لماذا يهم DNS على الخادم
قد تكون إعدادات الشبكة وجدار الحماية في خادمك مثالية، ومع ذلك يفشل في الوصول إلى العالم الخارجي إذا تعذّر عليه تحليل الأسماء. يترجم DNS أسماء المضيفين سهلة القراءة مثل example.com إلى عناوين IP.
تُعد معرفة كيفية عمل تحليل الأسماء — وكيفية تصحيح مشكلاته — مهارة أساسية في الشبكات.
مسار تحليل الأسماء
عندما يحتاج برنامج إلى عنوان IP لاسم ما، يتحقق Linux من المصادر بالترتيب، وعادةً ما تكون:
- ملف
/etc/hostsالمحلي - خوادم DNS المُعدّة (محللات الأسماء)
يحدّد السطر hosts: في /etc/nsswitch.conf هذا الترتيب.
grep hosts /etc/nsswitch.conf
# hosts: files dnsملف /etc/hosts
يربط /etc/hosts الأسماء بعناوين IP محليًا، متجاوزًا DNS. وهو مناسب للاختبار، أو لأسماء المضيفين الداخلية، أو لربط نطاق بعنوان IP محدد.
يتكون كل سطر من عنوان IP يتبعه اسم واحد أو أكثر.
127.0.0.1 localhost
192.168.1.50 db.internal dbأين تُضبط المحللات
الملف التقليدي هو /etc/resolv.conf، الذي يسرد خوادم الأسماء. وفي الأنظمة الحديثة تديره غالبًا systemd-resolved أو NetworkManager، ولذلك قد لا يستمر التعديل المباشر عليه.
تحقق مما هو مستخدم فعليًا قبل تغيير أي شيء.
cat /etc/resolv.conf
resolvectl statusإعداد خادم DNS
في نظام يستخدم systemd-resolved، اضبط DNS لكل واجهة بدلًا من تعديل resolv.conf. أما في الخوادم التي تستخدم Netplan، فتحدده في إعداد YAML.
يضبط هذا المثال محللات أسماء عامة لواجهة.
sudo resolvectl dns eth0 1.1.1.1 8.8.8.8
resolvectl dns eth0البحث عن السجلات باستخدام dig
يُعد dig أقوى أداة للاستعلام عن DNS. فهو يعرض الإجابة بالإضافة إلى بيانات الاستعلام الوصفية.
يختصر الخيار +short الناتج ليعرض الإجابة فقط، وهو مثالي للبرامج النصية.
dig example.com
dig +short example.comالاستعلام عن أنواع محددة من السجلات
يخزّن DNS أنواعًا كثيرة من السجلات. حدّد نوعًا لفحص البريد أو خوادم الأسماء أو الأسماء المستعارة.
A— عنوان IPv4AAAA— عنوان IPv6MX— خوادم البريدNS— خوادم الأسماءCNAME— اسم مستعار
dig example.com MX +short
dig example.com NS +shortnslookup وhost
يُعد nslookup وhost بديلين أبسط من dig. وهما مفيدان للفحوصات السريعة وللبحث العكسي (من IP إلى اسم).
تستعلم عمليات البحث العكسي عن سجل PTR للعنوان.
host example.com
nslookup example.com
dig -x 8.8.8.8 +shortالاستعلام عن خادم محدد
لاختبار ما إذا كان أحد المحللات هو سبب المشكلة، وجّه الاستعلام إلى خادم محدد باستخدام الصيغة @. إذا عمل محلل عام ولم يعمل المحلل لديك، فالمشكلة في إعداد DNS لديك.
dig @1.1.1.1 example.com +short
dig @8.8.8.8 example.com +shortمنهجية استكشاف الأخطاء وإصلاحها
عندما يتعذّر تحليل اسم، افحص الطبقات بالتتابع:
- هل يمكنك تنفيذ ping لعنوان IP مباشرةً؟ (لاستبعاد الشبكة)
- هل يعمل
dig @1.1.1.1 name؟ (لاستبعاد الاسم نفسه) - هل يعمل
dig nameباستخدام المحلل الافتراضي لديك؟ (لعزل مشكلة إعداد المحلل) - هل يوجد إدخال قديم في
/etc/hostsيتجاوز النتيجة؟
ping -c1 1.1.1.1
dig @1.1.1.1 example.com +short
dig example.com +shortأفضل الممارسات
حافظ على موثوقية تحليل الأسماء:
- استخدم محللين اثنين على الأقل لتحقيق التكرار
- لا تعدّل
resolv.confيدويًا إذا كان يُدار تلقائيًا - استخدم
/etc/hostsللاختبار، لكن نظّف الإدخالات القديمة - فضّل
dig +shortفي البرامج النصية للحصول على مخرجات واضحة
تحقق سريع
اختبر معرفتك باستكشاف مشكلات DNS وإصلاحها.
مراجعة
يمكنك الآن إعداد DNS وتصحيح مشكلاته على الخادم:
- ترتيب تحليل الأسماء عبر
/etc/nsswitch.confو/etc/hosts - المحللات في
resolv.conf/systemd-resolved - الاستعلام باستخدام
digوhostوnslookup، بما في ذلك أنواع السجلات والخوادم المحددة - منهجية استكشاف أخطاء متعددة الطبقات
تكمّل هذه المهارات مهاراتك في الشبكات وجدار الحماية بإضافة طبقة التسمية.
الأسئلة الشائعة
هل درس «إعداد DNS واستكشاف أخطائه وإصلاحها» مجاني؟
نعم — نص درس «إعداد DNS واستكشاف أخطائه وإصلاحها» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Linux Server Deployment & SSH Mastery، انتقل إلى CoddyKit PRO. تتضمن دورة Linux Server Deployment & SSH Mastery 4 دروس في المجموع.
ماذا ستتعلم في «إعداد DNS واستكشاف أخطائه وإصلاحها»؟
افهم كيفية تحويل خوادم Linux أسماء المضيفين إلى عناوين IP: اضبط محللات الأسماء، وحرّر /etc/hosts، واستخدم dig وnslookup وhost لتشخيص مشكلات DNS التي تعطل الاتصال حتى عندما تكون الشبكة سليمة. تتمرن على Linux Server Deployment & SSH Mastery مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Linux Server Deployment & SSH Mastery؟
لا تُشترط خبرة سابقة. Linux Server Deployment & SSH Mastery على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.
كم من الوقت يستغرق درس «إعداد DNS واستكشاف أخطائه وإصلاحها»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Linux Server Deployment & SSH Mastery هذا؟
نعم. كل درس في Linux Server Deployment & SSH Mastery يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- تهيئة الشبكة الأساسية
- فهم جدران الحماية (UFW/firewalld)
- إدارة المنافذ وأمانها
- إعداد DNS واستكشاف أخطائه وإصلاحها