نتحدث في هذا التقرير عن خادم DNS إذ أنه يعد اختصارًا لعبارة Domain Name System، وهو عبارة عن نظام يخزن المعلومات التي تتعلق بأسماء النطاقات Domain Name التي توجد في قاعدة البيانات التي توزع على الشبكة العنكبوتية، ويربط خادم DNS المعلومات والعناوين بأسماء النطاقات المرتبطة، فعندما تكتب www.google.com عن طريق رابط الإنترنت يسترجع خادم DNS اسم النطاق وهو 74،125،224،72، وبمعنى آخر يعمل DNS على ترجمة أسماء النطاق من الكلمات إلى العناوين IP Address .
نشأة خادم DNS
الجيل الأول
بعد أكثر من محاولة مبكرة بغية جعل الوصول إلى المضيفين على الإنترنت أكثر سهولة وبساطة، أنشأ عدد كبير من المهندسين وصف لنظام أسماء النطاقات، حيث جرى إنجاز ذلك العمل في فريق مهام هندسة الإنترنت IETF ومع الوثائق التي نشرت في سلسلة طلب التعليق RFC، تصف تلك الوثائق بروتوكولا وظيفيا بالكامل وتتضمن الكثير من أنواع البيانات المبكرة التي ستنقل.
كما جرى تحديد بريد الإنترنت وكانت هناك الكثير من محاولات للسماح للبريد باستعمال كبير لـ DNS. بالرغم من أن المحاولات الأخرى تبعت لإضافة ميزات خاصة بالتطبيقات في نظام أسماء النطاقات، غير أنه لم يجرى التمسك به لأنه في وقت لاحق تبين أنه لم تكن فكرة ربط التطبيقات الأخرى بعمق في خادم DNS فكرة جيدة، حيث مر حوالي عشرة أعوام قبل القيام بنشر أول تحديث رئيسي لبروتوكول DNS.
كان هذا التحديث كان عبارة إضافة أكثر من رائعة وذلك على مستوى ديناميكي لإبقاء الخوادم محدثة عن طريق استعمال آليات تعرف باسم NOTIFY ونقل المنطقة التزايدي (IXFR)، ففي الجيل الأول من خادم DNS، كان أبرز وأسهل أسلوب لتوفير الاستمرارية هي وجود خوادم متعددة تعمل على الإجابة على استعلامات متنوعة، كان يطلق على خادم واحد اسم الخادم الأساسي master server، في حين كانت البقية خوادم تابعة slave servers، وكل خادم تابع كان لديه تعليمات للتحقق من الخادم الأساسي بشكل دوري لتحديد ما إذا كانت البيانات قد تغيرت أو لا.
الجيل الثاني
كان NOTIFY أول تغيير طرأ على العبة، فبدلا من اضطرار الخادم الأساسي إلى الانتظار حتى تحقق الخوادم التابعة، صار بإمكانه إرسال رسالة إشعار إلى الخوادم التابعة، ما يدفعهم إلى أن يحصلوا على البيانات الجديدة، وفي الوقت ذاته قامت IXFR بإجراء تغيير ملحوظ في طريقة توصيل البيانات؛ إذ كان تغيير سجل واحد فقط من المئات في وقت سابق يجعل المواصفات الأصلية ترسل مئات الرسائل، بينما تغيير IXFR للنظام لا يسمح إلا بإرسال التغييرات.
الجيل الثالث
بعدما جرى زيادة NOTIFY و IXFR والتحديثات الحيوية، تطور بروتوكول DNS لكنه سارع إلى النهيار بعد ذلك، حيث جرى إضافة الكود في أكثر من مكان، ولكن لم يعط أي أحد للبروتوكولات مراجعة جيدة لما يعرف باسم النزاهة الهيكلية، فكان محور التطوير في الجيل الثالث هو أمن dns وسيظل كذلك لسنوات عديدة قادمة.
فائدة DNS
عندما تدخل إلى موقع محدد مثل ويكيبيديا wikipedia.org، يكون من السهل أن تصل إليها وأن تحفظها عن طريق كتابة اسم الموقع، ولكن من الصعب ذكر عنوان الموقع وهو 207،142،131.206، ومن ثم فإن خادم DNS يقوم بتوفير طريقة سلسة وبسيطة على المستعملين للتعامل مع عناوين الشبكة والاتصال بها.
بنية نظام خادم DNS
فضاء الأسماء Domain Name Space، في هذا الجزء يجرى تخزين وحفظ ملفات الموقع ويمكن أن نعرفه باسم قاعدة البيانات للموقع، وهناك الخادم Server، إذ يشتمل خادم DNS على معلومات وعناوين ال IP التي توجد على الشبكة؛ بحيث إذا أرسل مستعمل طلب Request حتى يحصل غلى المعلومات وكان الخادم Server لا يوجد فإن الطلب يمرر إلى خادم آخر Another Server لتنفيذ الطلب.
اسم النطاق Domain Name، هو اسم يستعمل في الإنترنت من أجل الدلالة على موقع محدد، فأي موقع يشتمل على Domain Name من أجل الدلالة على عمل الموقع وأقسامها ويكون اختيار النطاق قريب من اسم الجهة أو عملها، وهناك ملف النطاق Zone File، يشتمل ذلك الملف على كل سجلات المصادر (المعلومات) التي تتعلق باسم النطاق Domain Name، وتُحفظ وإدارة الملف عن طريق خادم أسماء النطاقات Domain Name Server.
خادم أسماء النطاقات Domain Name Server، ويرد ذلك الخادم على استفسارات المستعملين، وهناك خادم أساسي لكل نطاق على الأقل، ولا ننسى المقرر Resolver، حيث يرسل بالنيابة عن المستعملين الاستفسارات حول أي معلومة توجد في النظام، وإرسال النتيجة النهائية إلى المستفسرين، وأخيرًا هناك المستعمل User، حيث أنه المستفيد من تلك الخدمة من النظام؛ بحيث يستطيع التعامل مع ال DNS للحصول على المعلومات المطلوبة.
طريقة عمل DNS
يدخل المستعمل من أقرب خادم مقرر Resolver، عنوان اسم النطاق مثل www.google.com، عن طريق الرابط الذي يوجد على المتصفح، حيث يبحث المقرر Resolver عن اسم النطاق عن طريق الخادمات الأساسية Root Server، أما خادم أسماء النطاقات Domain Name Server فهو يجري عملية البحث عن الملفات التي تتوفر ويجرى الرد على الاستفسارات.
ما هي مكونات DNS
إعادة توزيع DNS (DNS recursor، يمكن أن نعتبره مسؤول مكتبة يمكن أن تطلب منه البحث عن كتاب محدد في أي مكان بالمكتبة، حيث يكون dns recursor مسؤولا عن تقديم طلبات إضافية هذا ما يحسن البحث ويرضي المستعمل، وهناك خادم الاسم الجذر Root nameserver، وهو عبارة عن الخطوة الأولى في ترجمة أو حل أسماء المضيفين القابلة للقراءة إلى عناوين IP.
ويمكن أن نعتبر كمؤشر في مكتبة يرمز إلى رفوف مختلفة من الكتب؛ إذ يكون في مقدورنا أن نعتبره مرجعا إلى مواقع أخرى أكثر تحديدا، وهناك خادم اسم نطاق المستوى الأعلى top-level domain nameserver، ويمكن أن نعتبر خادم نطاق المستوى الأعلى TLD بمثابة رف يخص بالكتب في المكتبة، ويعد خادم الأسماء هذا الخطوة الآتية في البحث عن عنوان IP محدد، ويستضيف الجزء الأخير من اسم موقع ما فمثلا لنقل أن لدينا موقع باسم example.com يكون نطاق المستوى الأعلى هو com.