في هذا الدرس 9تصفّح المواضيع
عرفنا في الدرس السابق أن البشر يفضّلون التعامل مع أسماء النطاقات النصية سهلة الحفظ مثل www.google.com أو closetag.com، بينما لا تفهم موجهات الشبكة والخوادم سوى عناوين بروتوكول الإنترنت الرقمية (IP Addresses) مثل 172.217.19.142 (IPv4) أو 2a00:1450:4001:829::200e (IPv6). وهنا يأتي دور نظام أسماء النطاقات (Domain Name System — DNS)؛ فهو قاعدة البيانات العالمية الموزعة والبروتوكول المسؤول عن ترجمة الأسماء النصية إلى عناوين IP رقمية خلال أجزاء من الثانية.
يعمل نظام DNS تماماً مثل تطبيق جهات الاتصال (دليل الهاتف) العالمي للإنترنت: فعندما تضغط على اسم صديقك في هاتفك المحمول، يبحث الهاتف تلقائياً عن رقم الهاتف المرتبط بالاسم ويتصل به دون أن تضطر لحفظ الأرقام. بالطريقة نفسها، بمجرد كتابة اسم النطاق في شريط المتصفح، يستعلم جهازك من نظام DNS ليحصل على عنوان IP الخاص بالخادم المضيف ويبدأ الاتصال الفوري به.
لماذا لم يكتفِ مهندسو الإنترنت بملف أسماء واحد على كل جهاز أو بكتابة عناوين IP مباشرة داخل التطبيقات؟ يوفّر تصميم DNS الهرمي الموزع أربع فوائد هندسية جوهرية لا غنى عنها لعمل الإنترنت الحديث:
- سهولة الاستخدام البشري: يتيح للمستخدمين تذكر أسماء نصية واضحة مثل
closetag.comبدلاً من حفظ سلاسل رقمية معقدة فيIPv4أوIPv6. - المرونة وسلاسة نقل الخوادم: يستطيع مهندس الشبكات نقل الموقع بالكامل إلى شركة استضافة جديدة بعنوان
IPمختلف تماماً، ثم تحديث الرقم داخل سجلDNSفقط دون أن يشعر الزوار بأي تغيير في عنوان الموقع. - توزيع عبء العمل والاعتمادية العالية: تمتلك المنصات الكبرى مثل جوجل مئات الخوادم بعناوين
IPمتعددة؛ وتتيح خدماتDNSالمتقدمة إرجاع عناوين مختلفة لتوزيع الحمل (Load Distribution) وتوجيه كل زائر إلى أقرب مركز بيانات جغرافي يعمل بكفاءة. - القابلية للتوسع العالمي دون نقطة فشل مركزية: بدلاً من وجود خادم واحد يتوقف معه الإنترنت عالمياً إذا تعطل، يوزّع
DNSالمسؤولية هرمياً على آلاف الخوادم المستقلة حول العالم.
عندما يحتاج حاسوبك إلى معرفة عنوان IP لاسم نطاق غير محفوظ في ذاكرته المحلية، فإنه لا يتصل بخوادم الإنترنت العليا مباشرةً؛ بل يرسل عميل النظام الخفيف المدمج في جهازك — ويُسمى المحلل المحلي البسيط (Stub Resolver) — طلباً واحداً إلى خادم وسيط يُعرف باسم مفسر أو محلل DNS المتكرر (Recursive DNS Resolver).
يعمل المحلل المتكرر كوكيل بحث ذكي ينوب عن جهازك: إذ يستقبل سؤالك ويتكفل هو بالقيام برحلة التتبع الكاملة عبر خوادم الإنترنت خطوةً بخطوة حتى يعثر على عنوان IP النهائي ويعيده إلى متصفحك جاهزاً. وإذا كان مستخدم آخر قد طلب الموقع نفسه قبل قليل، فإن المحلل المتكرر يجيبك فوراً من ذاكرته المؤقتة (Cache) خلال بضعة أجزاء من الألف من الثانية دون الحاجة لإعادة البحث من الصفر.
يحصل جهازك افتراضياً (عبر بروتوكول DHCP من الراوتر) على عنوان المحلل المتكرر التابع لمزود خدمة الإنترنت (ISP)، كما يمكنك تغييره يدوياً في إعدادات الشبكة لاستخدام محللات عامة سريعة مثل Cloudflare (1.1.1.1) أو Google Public DNS (8.8.8.8) أو Quad9 (9.9.9.9).
Query a Public Recursive DNS Resolverالاستعلام عبر المحلل المتكرر العام (Recursive Resolver)
1.1.1.1 لجلب عنوان IP النطاق.nslookup closetag.com 1.1.1.1
# Query Cloudflare Recursive Resolver (1.1.1.1) to resolve closetag.com
Recursive DNS Resolver Comparison Previewمعاينة مقارنة خوادم المحلل المتكرر العامة
إذا لم يجد المحلل المتكرر (Recursive Resolver) عنوان الموقع في ذاكرته المؤقتة، فإنه يبدأ رحلة البحث من قمة الشجرة العالمية مروراً بطبقتين أساسيتين من خوادم الإحالة والتوجيه:
- 1. خوادم الجذر الأساسية (Root Name Servers —
.): تمثّل القمة العليا لشجرةDNSبإشراف هيئةIANA، وهي المحطة الأولى دائماً عند غياب الكاش. تتكون عالمياً من13مجموعة منطقية تحمل الحروف منAإلىM(a.root-servers.netحتىm.root-servers.net). لا تحفظ خوادم الجذر عناوين جميع مواقع العالم، بل تنظر إلى الامتداد الأخير فقط (مثل.comأو.eg) وتوجّه المحلل إلى خوادم النطاق الأعلى المختصة بهذا الامتداد. - 2. خوادم أسماء النطاقات العليا : تديرها سجلات الامتدادات العالمية والوطنية (مثل شركة
Verisignلنطاقَي.comو.net، أو الجهاز القومي لتنظيم الاتصالات لنطاق.eg). تحتفظ هذه الخوادم بقائمة خوادم الأسماء لكل نطاق مسجّل تحت امتدادها؛ فعند سؤال خادم.comعنclosetag.com، يردّ بإحالة المحلل إلى الخادم النهائي المختص بهذا الموقع تحديداً.
تأمل المخطط المعماري الآتي الذي يلخص الأدوار الأربعة الكبرى لخوادم منظومة DNS:
دعنا نتتبع الرحلة الكاملة التي تحدث خلال أجزاء من الثانية عند كتابة www.closetag.com في المتصفح لأول مرة، مع الانتباه للفرق الجوهري بين الاستعلام التكراري (Recursive Query) والاستعلام التتابعي (Iterative Query):
- الفحص المحلي أولاً (كاش المتصفح والنظام وملف
hosts): قبل إرسال أي طلب عبر الشبكة، يفحص المتصفح ذاكرته المؤقتة، ثم يسأل نظام التشغيل الذي يفحص كاش النظام وملف الأسماء المحليhosts(/etc/hostsفي لينكس وماك أوC:\Windows\System32\drivers\etc\hostsفي ويندوز). - الاستعلام التكراري (من جهازك إلى المحلل المتكرر): عند عدم وجود الإجابة محلياً، يرسل جهازك استعلاماً تكرارياً (Recursive Query) إلى المحلل المتكرر (مثل
1.1.1.1) مطالباً إياه بالعودة بالعنوان النهائي. - الاستعلام التتابعي الأول (من المحلل إلى خادم الجذر): يرسل المحلل استعلاماً تتابعياً (Iterative Query) إلى خادم الجذر (
.)، فيحيله إلى خوادم امتداد.com. - الاستعلام التتابعي الثاني (من المحلل إلى خادم
TLD): يسأل المحلل خادم.comفيحيله إلى خادم الأسماء المعتمد للنطاق (ns1.closetag.com). - الاستعلام التتابعي الثالث (من المحلل إلى الخادم المعتمد): يسأل المحلل الخادم المعتمد فيردّ عليه بعنوان
IPالنهائي للموقع (93.184.216.34). - التخزين المؤقت وبدء الاتصال: يحفظ المحلل العنوان في ذاكرته المؤقتة ويعيده إلى المتصفح، فيبدأ المتصفح الاتصال الفوري بخادم الويب لعرض الصفحة.
تأمل مخطط تدفق الاستعلام الآتي، ثم تفاعل مع محاكي رحلة DNS لتجربة كل مرحلة خطوة بخطوة:
لا تقتصر قاعدة بيانات خادم DNS المعتمد على حفظ عناوين الجيل الرابع فقط، بل تُخزّن تعليمات منظمة تُسمى سجلات الموارد (Resource Records — RRs). يحتاج كل مطور ويب ومهندس شبكات ومختص أمن سيبراني إلى إتقان السجلات القياسية الآتية:
- سجل
A(Address — عنوان الجيل الرابع): يربط اسم النطاق أو النطاق الفرعي مباشرةً بعنوانIPv4رقمي من32بت (مثل ربطclosetag.comبالعنوان93.184.216.34). - سجل
AAAA(Quad-A — عنوان الجيل السادس): يربط اسم النطاق بعنوانIPv6حديث من128بت (وسُمّي بأربعة حروفAلأن طول العنوان أربعة أضعاف الجيل الرابع). - سجل
CNAME(Canonical Name — الاسم البديل): يوجّه نطاقاً فرعياً ليكون اسماً مستعاراً يتبع نطاقاً آخر بدلاً من كتابة رقمIP(مثل توجيهwww.closetag.comإلىclosetag.com). - سجل
MX(Mail Exchange — تبادل البريد): يحدد الخوادم المسؤولة عن استقبال رسائل البريد الإلكتروني الخاصة بالنطاق مع تحديد رقم الأولوية لكل خادم. - سجل
TXT(Text — السجل النصي): يحفظ قيماً نصية تُستخدم لإثبات ملكية النطاق وتأمين البريد الإلكتروني ضد الانتحال عبر معاييرSPFوDKIMوDMARC. - سجل
NSوسجلPTR: يحدد سجلNSخوادم الأسماء المعتمدة للنطاق، بينما يُستخدم سجلPTRفي البحث العكسي لترجمة رقمIPإلى اسم نطاق.
Standard DNS Zone Records Configurationتهيئة سجلات منطقة النطاق القياسية (DNS Zone)
; Example DNS Zone Records for closetag.com
@ IN A 104.21.45.182
@ IN AAAA 2606:4700::6815:2db6
www IN CNAME closetag.com.
@ IN MX 10 mail.closetag.com.
@ IN TXT "v=spf1 include:_spf.google.com ~all"
DNS Zone Records Dashboard Previewمعاينة لوحة سجلات منطقة النطاق DNS
تخيّل لو أن متصفحك يضطر لمراسلة خوادم الجذر والامتداد والخادم المعتمد مع كل صورة أو ملف تنسيق أو رابط تضغط عليه داخل الموقع الواحد؛ لأصبح التصفح بطيئاً للغاية ولازدحمت خوادم الإنترنت العالمية! لمنع ذلك، يعتمد النظام على التخزين المؤقت لنتائج DNS (DNS Caching) عبر عدة طبقات متتالية: في ذاكرة المتصفح، ثم ذاكرة نظام التشغيل، ثم الموجه المنزلي (الراوتر)، ثم المحلل المتكرر لمزود الخدمة.
يُرفق الخادم المعتمد مع كل سجل DNS عداداً زمنياً بالثواني يُسمى مدة الصلاحية أو البقاء (Time to Live — TTL)، مثل 3600 ثانية (ساعة واحدة) أو 300 ثانية (خمس دقائق). وطالما لم تنتهِ مدة TTL، يستخدم جهازك والمحلل العنوان المحفوظ في الكاش فوراً دون إعادة السؤال؛ وعندما ينقضي الوقت يُحذف السجل القديم ويُطلب تحديث جديد. ويفسر هذا أيضاً لماذا يستغرق تعديل عنوان IP لموقعك بعض الوقت ليظهر لجميع المستخدمين حول العالم — وهو ما يُعرف بظاهرة انتشار تحديثات DNS (DNS Propagation) — ريثما تنتهي مدة TTL للسجلات القديمة المخزنة في كاش مزودي الخدمة.
Inspect DNS TTL and Flush Local Cacheفحص مدة بقاء السجل TTL وتفريغ الكاش المحلي
# Inspect DNS record with remaining TTL and flush local OS DNS cache
nslookup -debug closetag.com
ipconfig /flushdns
DNS Caching Layers and TTL Previewمعاينة طبقات التخزين المؤقت وعمر السجل TTL
عندما صُمّم بروتوكول DNS عام 1983، كانت الاستعلامات تُرسل كنص مكشوف غير مشفر وبدون توقيع رقمي يثبت مصدرها. وفي بيئة الأمن السيبراني الحديثة، يستهدف المهاجمون هذا الضعف التاريخي، وتصدّهم الشبكات الحديثة عبر طبقتَي حماية متكاملتين:
- التهديد الأمني — انتحال وتسميم الكاش (DNS Spoofing & Cache Poisoning): يحاول المهاجم تزوير ردّ
DNSوحقن عنوانIPخبيث داخل الذاكرة المؤقتة للمحلل أو الشبكة المحلية، بحيث عندما يكتب الضحية اسم موقع سليم في المتصفح يتوجه دون علمه إلى خادم مزيف للتصيّد وسرقة البيانات. - الحماية الأولى — التوقيع الرقمي وموثوقية السجلات عبر
DNSSEC: تضيف امتدادات أمان نظام أسماء النطاقات (DNSSEC) توقيعاً رقمياً مشفراً لكل سجل داخل ملف المنطقة، مما يمكّن المحلل التكراري من التحقق رياضياً من أن عنوانIPالمستلم صادر فعلاً عن الخادم المعتمد الأصلي ولم يتعرض للتلاعب في الطريق. - الحماية الثانية — تشفير القناة والخصوصية عبر
DoHوDoT: لأنDNSSECيثبت صحة السجل لكنه لا يخفي اسم الموقع الذي تبحث عنه عن المتنصتين في شبكات الواي فاي العامة، تعتمد المتصفحات وأنظمة التشغيل الحديثة تشفير استعلاماتDNSبالكامل عبر بروتوكول DNS فوق HTTPS (DoHعلى المنفذ443) أو DNS فوق TLS (DoTعلى المنفذ853).
سجّل الدخول لحفظ تقدمك
تابع إنجاز المواضيع والمصطلحات والمهام، وكمّل من آخر خطوة على أي جهاز.
المصطلحات7
راجع المعنى، اشرحه لنفسك، ثم علّم البطاقة كمفهومة.
- 01 Recursive DNS Resolver محلل DNS المتكرر (Recursor)
- الخادم الوسيط (التابع لمزود الخدمة أو لجهات عامة مثل 1.1.1.1 و8.8.8.8) الذي يستقبل استعلام جهازك ويتولى رحلة البحث الكاملة بالنيابة عنك.
- للمراجعة
- 02 Root Name Server خادم الأسماء الجذري (Root Server)
- القمة العليا لشجرة DNS (تضم 13 مجموعة منطقية من A إلى M) وتوجه المحلل المتكرر إلى خادم النطاق الأعلى (TLD) المناسب.
- للمراجعة
- 03 TLD Name Server خادم نطاق المستوى الأعلى
- خادم يدير امتداداً محدداً (مثل .com أو .org أو .eg) ويحيل المحلل المتكرر إلى خادم الأسماء المعتمد الخاص بالنطاق المطلوب.
- للمراجعة
- 04 Authoritative Name Server خادم الأسماء المعتمد (المختص)
- الخادم النهائي صاحب الحقيقة الرسمية الذي يحتفظ بملف المنطقة (Zone File) للنطاق ويعيد عنوان IP الفعلي للموقع.
- للمراجعة
- 05 Zone File ملف منطقة النطاق (Zone File)
- ملف قاعدة البيانات الرسمي المحفوظ داخل خادم الأسماء المعتمد ويضم جميع سجلات الموارد (A وAAAA وCNAME وMX وTXT) الخاصة بالنطاق.
- للمراجعة
- 06 DNS Caching التخزين المؤقت لنتائج DNS
- الاحتفاظ المؤقت بنتائج ترجمة النطاقات داخل ذاكرة المتصفح ونظام التشغيل والمحلل المتكرر طوال مدة الصلاحية (TTL) لتسريع التصفح.
- للمراجعة
- 07 DNS Cache Poisoning تسميم ذاكرة DNS المؤقتة
- هجوم سيبراني يهدف إلى حقن إجابات DNS مزيفة داخل الذاكرة المؤقتة لتوجيه المستخدمين من موقع شرعي إلى خادم احتيالي خبيث.
- للمراجعة
لا توجد بطاقات تطابق البحث والتصفية.
اقرأ البطاقات بحرية. سجّل الدخول لحفظ تقدم مراجعتك.
الاختصارات6
راجع المعنى، اشرحه لنفسك، ثم علّم البطاقة كمفهومة.
- 01 DNS نظام أسماء النطاقات
- Domain Name System
- النظام الهرمي الموزع المسؤول عن ترجمة أسماء النطاقات المقروءة بشرياً إلى عناوين IP رقمية على شبكة الإنترنت.
- للمراجعة
- 02 TTL مدة البقاء والصلاحية
- Time to Live
- المدة الزمنية بالثواني التي يُسمح خلالها بالاحتفاظ بسجل DNS في الذاكرة المؤقتة قبل انتهاء صلاحيته وطلب تحديثه.
- للمراجعة
- 03 CNAME سجل الاسم البديل الكنسي
- Canonical Name Record
- سجل في DNS يربط نطاقاً فرعياً كاسم مستعار يشير إلى اسم نطاق آخر بدلاً من الإشارة المباشرة لعنوان IP.
- للمراجعة
- 04 MX سجل تبادل البريد الإلكتروني
- Mail Exchange Record
- سجل في DNS يحدد خوادم البريد المسؤولة عن استقبال الرسائل الإلكترونية الموجهة إلى اسم النطاق.
- للمراجعة
- 05 DNSSEC امتدادات أمان نظام أسماء النطاقات
- Domain Name System Security Extensions
- مجموعة معايير أمنية تضيف توقيعات رقمية مشفرة لسجلات DNS للتأكد من صحة مصدرها ومنع تزويرها في الطريق.
- للمراجعة
- 06 DoH / DoT تشفير DNS عبر HTTPS أو TLS
- DNS over HTTPS / DNS over TLS
- بروتوكولات حديثة تشفّر استعلامات DNS عبر المنفذ 443 (DoH) أو المنفذ 853 (DoT) لحماية الخصوصية ومنع التنصت.
- للمراجعة
لا توجد بطاقات تطابق البحث والتصفية.
اقرأ البطاقات بحرية. سجّل الدخول لحفظ تقدم مراجعتك.
مهامك قبل الاختبار
خطوة صغيرة كل مرة. وإنجاز تقدر ترجع له.
-
استعرض المراحل الأربع في محاكي الموضوع السادس، وسجّل الفرق الدقيق بين الاستعلام التكراري (من جهازك إلى المحلل 1.1.1.1) والاستعلامات التتابعية الثلاثة (من المحلل إلى الجذر والامتداد والخادم المعتمد).
-
افتح نافذة الأوامر في جهازك ونفّذ الأمر "nslookup example.com 1.1.1.1" ثم "nslookup -type=AAAA example.com 1.1.1.1" لمقارنة عنوان IPv4 وعنوان IPv6 المسترجعين من المحلل العام.
-
نفّذ أمر تفريغ الكاش المناسب لنظام تشغيلك ("ipconfig /flushdns" في ويندوز أو "resolvectl flush-caches" في لينكس مينت) ولاحظ كيف يعيد الاستعلام التالي جلب السجل بكامل مدة صلاحيته TTL.
تأشير المهمة إقرار منك بإتمامها، وليس تصحيحًا آليًا للكود. يُحفظ تقدمك في حسابك.
اختبر فهمك.
ووصلها للإتقان.
كل سؤال خطوة لقدّام. اختار، اكتب كود، وشوف نتيجتك فورًا.
أكمل المهام، واجمع كل الإجابات الصحيحة. أقل من 100%؟ راجع وأعد المحاولة.
الأسئلة متاحة للاطلاع. سجّل الدخول للتفاعل وحفظ تقدمك.