recent
أخبار ساخنة

ما هو DNS وكيف يعمل؟ شرح نظام أسماء النطاقات خطوة بخطوة

ما هو DNS وكيف يحول اسم النطاق إلى عنوان IP

عندما تكتب اسم موقع مثل www.google.com في المتصفح، لا يستخدم جهازك هذا الاسم مباشرة للوصول إلى الخادم. شبكات الحاسوب تتعامل في النهاية مع عناوين IP، وهنا يأتي دور نظام أسماء النطاقات DNS في معرفة عنوان الخادم المرتبط بالاسم الذي كتبته.

لكن DNS ليس مجرد جدول بسيط يحوّل أسماء المواقع إلى عناوين IP. إنه نظام موزع وهرمي يتكون من خوادم متعددة، ويستخدم داخل الإنترنت والشبكات الداخلية وبيئات الشركات وActive Directory والبريد الإلكتروني والعديد من الخدمات الأخرى.

الخلاصة السريعة:

DNS اختصار لـ Domain Name System أو نظام أسماء النطاقات. وظيفته الأساسية ربط أسماء مثل computargi.com بالمعلومات المرتبطة بها، مثل عنوان IPv4 أو IPv6 أو خادم البريد أو الخادم المسؤول عن النطاق. عند طلب موقع، يستعلم جهازك عن DNS، وقد يحصل على الإجابة من Cache مباشرة، أو يقوم DNS Resolver بالبحث وصولاً إلى الخادم Authoritative DNS الذي يملك السجل المطلوب.

ما هو DNS ولماذا نحتاج إليه؟

DNS هو نظام موزع لتنظيم أسماء الأجهزة والنطاقات وربطها بما يسمى Resource Records. أكثر استخداماته وضوحاً هو تحويل اسم سهل التذكر إلى عنوان IP.

على سبيل المثال، بدلاً من أن يحتاج المستخدم إلى معرفة عنوان IP الخاص بخادم موقع معين، يكفي أن يكتب:

www.example.com

ثم يقوم DNS بالبحث عن السجل المناسب وإرجاع عنوان IP للخادم.

معلومة مهمة:

DNS لا يقوم فعلياً بتحميل الموقع ولا ينقل صفحات الويب. مهمته في هذه المرحلة هي مساعدة الجهاز على العثور على عنوان أو معلومات الخدمة المطلوبة. بعد معرفة عنوان IP، يبدأ الاتصال بالخادم باستخدام البروتوكول المناسب مثل HTTPS.

كما أن DNS لا يستخدم للمواقع فقط. تعتمد عليه خدمات كثيرة مثل:

  • العثور على خوادم البريد الإلكتروني.
  • اكتشاف Domain Controllers في Active Directory.
  • تحديد مواقع خدمات LDAP وKerberos.
  • ربط أسماء الخوادم الداخلية بعناوين IP.
  • التحقق من بعض إعدادات البريد مثل SPF وDKIM وDMARC.
  • اكتشاف خدمات مختلفة باستخدام SRV Records.

كيف يعمل DNS خطوة بخطوة؟

لفهم DNS عملياً، لنفترض أنك كتبت:

www.example.com

لن يقوم جهازك بالضرورة بالاتصال مباشرة بخوادم DNS العالمية في كل مرة. توجد عدة مراحل، ويمكن أن تنتهي العملية مبكراً إذا كانت الإجابة موجودة في Cache.

مراحل عمل DNS من جهاز المستخدم إلى Recursive Resolver ثم Root وTLD وAuthoritative DNS
رحلة استعلام DNS من جهاز المستخدم حتى الخادم Authoritative DNS وإعادة عنوان IP.
1. التطبيق أو نظام التشغيل يبحث عن نتيجة محفوظة

قد يكون المتصفح أو نظام التشغيل قد استعلم عن هذا الاسم سابقاً. إذا كانت الإجابة ما تزال صالحة، يمكن استخدامها مباشرة دون تنفيذ استعلام كامل من جديد.

2. الجهاز يرسل الاستعلام إلى DNS Resolver

إذا لم تكن الإجابة متاحة محلياً، يرسل الجهاز طلب DNS إلى خادم DNS المعرّف على كرت الشبكة.

قد يكون هذا الخادم DNS Server تابعاً للشركة، أو خادماً تابعاً لمزوّد خدمة الإنترنت ISP، أو خدمة Public DNS.

في معظم الحالات، يعتمد الجهاز على Recursive Resolver ليقوم بعملية البحث نيابة عنه.

3. Recursive Resolver يفحص الـ Cache

إذا سبق للـ Resolver أن حصل على الإجابة وما تزال ضمن مدة الصلاحية TTL، يعيدها للجهاز مباشرة.

4. الاستعلام عن Root DNS عند الحاجة

إذا لم تكن الإجابة موجودة في Cache، يبدأ Resolver عملية البحث في التسلسل الهرمي للـ DNS.

خادم Root يوجّه Resolver نحو الخوادم المسؤولة عن نطاق المستوى الأعلى TLD المناسب.

5. الاستعلام عن TLD Name Server

إذا كان النطاق ينتهي بـ .com، يصل الاستعلام إلى الخوادم المسؤولة عن هذا الـ TLD، والتي تستطيع توجيه Resolver إلى Name Servers المسؤولة عن النطاق المطلوب.

6. الوصول إلى Authoritative DNS Server

بعد ذلك يصل Resolver إلى Authoritative Name Server الذي يملك السجلات الموثوقة الخاصة بالـ DNS Zone.

www.example.com.   A   192.0.2.20
7. إعادة النتيجة وتخزينها مؤقتاً

يعيد Recursive Resolver النتيجة إلى الجهاز ويحتفظ بها عادة في Cache وفق قيمة TTL.

ملاحظة:

هذا التسلسل يشرح عملية DNS Resolution النموذجية، لكنه لا يعني أن كل زيارة لموقع ستنفذ جميع الخطوات. وجود DNS Cache في الجهاز أو Resolver قد يجعل الإجابة تصل بسرعة أكبر.

ما الفرق بين DNS Resolver وRoot وTLD وAuthoritative DNS؟

المكوّن وظيفته ماذا يعرف؟
DNS Client / Stub Resolver يرسل طلب DNS نيابة عن التطبيق أو نظام التشغيل. يعرف عادة عنوان DNS Server الذي سيستخدمه.
Recursive Resolver يبحث عن الإجابة نيابة عن العميل ويستخدم Cache. قد يملك الإجابة في Cache أو يتابع البحث.
Root Name Server يوجّه البحث نحو نطاق المستوى الأعلى المناسب. يعرف الخوادم المسؤولة عن نطاقات TLD.
TLD Name Server يوجّه Resolver نحو Name Servers الخاصة بالنطاق. يعرف الخوادم Authoritative الخاصة بالنطاق.
Authoritative Name Server يقدم البيانات الموثوقة الخاصة بالـ Zone. يملك DNS Records الخاصة بالنطاق المسؤول عنه.
Recursive Query مقابل Iterative Query

في Recursive Query يطلب العميل من Resolver الحصول على الإجابة النهائية نيابة عنه.

أما خلال عملية البحث بين خوادم DNS، فيمكن أن يحصل Resolver على Referral يوجّهه إلى الخادم التالي ضمن التسلسل الهرمي.

ما معنى DNS Zone؟

الـ DNS Zone هي جزء من مساحة أسماء DNS تتم إدارته بواسطة جهة أو خادم مسؤول عنها، وتحتوي على Resource Records المرتبطة بالأسماء والخدمات التابعة لها.

أهم أنواع DNS Records التي يجب معرفتها

DNS يستطيع تخزين أنواع مختلفة من البيانات وليس عنوان IP فقط. فيما يلي أهم السجلات التي يواجهها مسؤول الشبكة أو فني IT.

أهم أنواع سجلات DNS مثل A وAAAA وCNAME وMX وTXT وPTR وSRV وNS
أهم أنواع DNS Records والوظيفة الأساسية لكل سجل.
السجل وظيفته مثال استخدام
A ربط اسم بعنوان IPv4. ربط server.example.com بعنوان IPv4.
AAAA ربط اسم بعنوان IPv6. توفير عنوان IPv6 لموقع أو خادم.
CNAME إنشاء Alias يشير إلى اسم DNS آخر. ربط اسم خدمة باسم Canonical آخر.
MX تحديد خوادم البريد المسؤولة عن النطاق. توجيه البريد الوارد إلى Mail Server.
NS تحديد Name Servers المسؤولة عن DNS Zone. تعريف Authoritative DNS Servers.
TXT تخزين معلومات نصية تستخدمها خدمات مختلفة. SPF والتحقق من ملكية النطاق وغيرها.
PTR Reverse DNS من عنوان IP إلى اسم. العثور على الاسم المرتبط بعنوان IP.
SRV تحديد موقع خدمة مع Port وPriority وغيرها. Active Directory وLDAP وKerberos.
SOA يحتوي معلومات إدارية أساسية عن الـ Zone. Serial ومعلومات الخادم وتوقيتات الـ Zone.
ما هو TTL؟

TTL أو Time To Live يحدد المدة التي يمكن خلالها الاحتفاظ بنتيجة DNS في Cache قبل الحاجة إلى الاستعلام عنها من جديد.

نصيحة عملية:

إذا كنت تخطط لتغيير عنوان خادم أو تنفيذ Migration لنطاق مهم، راجع قيمة TTL قبل التغيير بوقت كافٍ. تقليلها مسبقاً يمكن أن يساعد على انتقال العملاء إلى السجل الجديد بسرعة أكبر.

DNS في شبكات الشركات وActive Directory

في الشبكات المنزلية قد يبدو DNS مجرد وسيلة للوصول إلى مواقع الإنترنت، لكن في بيئات الشركات يصبح جزءاً أساسياً من البنية التحتية.

مخطط DNS داخل شبكة شركة يوضح DHCP وDNS Server وDomain Controller وActive Directory والإنترنت
مثال مبسط على دور DHCP وDNS وActive Directory داخل شبكة شركة.

أوضح مثال هو Microsoft Active Directory. أجهزة الدومين تستخدم DNS للعثور على Domain Controllers وخدمات Kerberos وLDAP وغيرها، وخاصة من خلال SRV Records.

يمكنك التوسع في هذه العلاقة من خلال مقال شرح Active Directory.

تحذير مهم في بيئة Active Directory:

لا تضبط أجهزة Domain Members على Public DNS مثل 8.8.8.8 أو 1.1.1.1 كبديل عن DNS الداخلي للدومين. يجب أن يستطيع العميل الوصول إلى DNS الذي يحتوي على سجلات Active Directory الداخلية.

كذلك يعمل DNS عادة بجانب DHCP. يستطيع بروتوكول DHCP توزيع عنوان DNS Server تلقائياً على أجهزة الشبكة.

مثال شركة مبسط

لنفترض شركة لديها Domain Controller بعنوان:

192.168.10.10

ويعمل لديها DNS داخلي خاص بالدومين:

corp.example.com

الأجهزة تحصل عبر DHCP على:

  • IP Address.
  • Subnet Mask.
  • Default Gateway.
  • DNS Server.

عندما يحتاج الجهاز إلى العثور على Domain Controller، يستخدم سجلات DNS الداخلية. وعند الوصول إلى الإنترنت، يستطيع DNS الداخلي التعامل مع الاستعلام وفق التصميم المستخدم مثل Forwarders أو Recursive Resolution.

كيف تفحص DNS وتحل مشكلاته عملياً؟

عند حدوث مشكلة اتصال، لا تفترض أن DNS هو السبب لمجرد أن الموقع لا يفتح. افصل أولاً بين مشكلة الوصول إلى الشبكة ومشكلة Name Resolution.

1. تحقق من إعداد DNS على الجهاز
ipconfig /all

راجع IPv4 Address وDefault Gateway وDNS Servers وDNS Suffix في بيئات الشركات.

2. اختبر Name Resolution
nslookup computargi.com

أو باستخدام PowerShell:

Resolve-DnsName computargi.com
3. اختبر نوع Record معين
nslookup -type=MX computargi.com

أو:

Resolve-DnsName computargi.com -Type MX
4. افصل DNS عن مشكلة الاتصال

إذا كان الوصول إلى عنوان IP يعمل بينما الوصول بالاسم يفشل، فهذا دليل قوي على أن المشكلة مرتبطة بمرحلة Name Resolution.

أما إذا كان الجهاز لا يستطيع الوصول حتى إلى Gateway أو الشبكة المطلوبة، فالمشكلة قد تكون في IP Configuration أو VLAN أو Routing أو Firewall.

5. فحص سجلات Active Directory
nslookup -type=SRV _ldap._tcp.dc._msdcs.corp.example.com

أو:

Resolve-DnsName _ldap._tcp.dc._msdcs.corp.example.com -Type SRV
6. تنظيف DNS Client Cache عند الحاجة
ipconfig /flushdns

أو:

Clear-DnsClientCache
ملاحظة تشخيصية:

Flush DNS قد يحل مشكلة ناتجة عن Cache محلي قديم، لكنه ليس بديلاً عن اكتشاف السبب الحقيقي. إذا عادت المشكلة، افحص السجل نفسه وTTL وDNS Server وForwarders والشبكة.

أوامر Linux المفيدة
dig computargi.com A
dig computargi.com MX
dig +trace computargi.com

الأمر dig +trace مفيد لتتبع DNS Delegation والوصول إلى الخوادم المسؤولة عن النطاق.

العرض ما الذي يجب فحصه؟ الإجراء الأول
IP يعمل لكن الاسم لا يعمل DNS Resolution افحص DNS Server ثم nslookup.
اسم داخلي لا يعمل DNS الداخلي والـ Zone اختبر السجل مباشرة من DNS Server.
Domain Join يفشل DNS وSRV Records تأكد أن العميل يستخدم DNS الخاص بالدومين.
الموقع يشير إلى الخادم القديم Cache وTTL افحص TTL والنتيجة من أكثر من Resolver.
بعض الأجهزة فقط متأثرة Client Configuration أو DHCP قارن ipconfig /all بين جهاز سليم وآخر متأثر.

هل DNS آمن؟ وما دور DNSSEC وDNS المشفر؟

DNSSEC

DNSSEC يضيف آليات للتحقق من صحة وأصالة بيانات DNS باستخدام توقيعات رقمية، ويساعد Resolver على اكتشاف بعض أشكال التلاعب ببيانات DNS.

لكن DNSSEC لا يعني تشفير استعلام DNS وإخفاء اسم النطاق المطلوب عن الشبكة.

DNS over HTTPS وDNS over TLS

تقنيات مثل DNS over HTTPS (DoH) وDNS over TLS (DoT) توفر اتصالاً مشفراً بين العميل أو التطبيق وDNS Resolver.

ملاحظة لمسؤولي الشركات:

استخدام DoH بشكل غير مُدار داخل المؤسسة قد يسمح لبعض التطبيقات بتجاوز DNS الداخلي أو سياسات DNS Filtering، لذلك يجب التعامل معه ضمن تصميم الشبكة وسياسات الأجهزة.

للتوسع في فلترة المواقع عبر DNS يمكنك مراجعة شرح OpenDNS.

أسئلة شائعة عن DNS

هل DNS هو نفسه عنوان IP؟

لا. DNS هو النظام الذي يساعد على العثور على المعلومات المرتبطة بالاسم، بينما IP Address هو العنوان الذي تستخدمه الشبكة للوصول إلى الجهاز أو الخدمة.

ما هو Port المستخدم بواسطة DNS؟

DNS يستخدم المنفذ 53 ويعمل باستخدام UDP وTCP وفق نوع الاستعلام والظروف المطلوبة.

ما الفرق بين DNS Server وDNS Resolver؟

DNS Server مصطلح عام، أما Recursive Resolver فهو خادم يستقبل طلب العميل ويبحث عن الإجابة نيابة عنه، بينما Authoritative DNS Server يحتفظ بالبيانات الموثوقة للـ Zone.

هل تغيير DNS يجعل الإنترنت أسرع؟

قد يقلل Resolver الأسرع زمن Name Resolution، لكنه لا يزيد Bandwidth أو سرعة خط الإنترنت نفسه.

لماذا يتأخر تغيير DNS بعد تعديل السجل؟

السبب الشائع هو DNS Cache وقيمة TTL. بعض Resolvers قد تستمر في استخدام النتيجة القديمة حتى انتهاء مدة صلاحيتها.

هل أستخدم 8.8.8.8 على أجهزة Active Directory؟

ليس كبديل عن DNS الداخلي الذي يحتوي على سجلات Active Directory. أجهزة الدومين تحتاج إلى الوصول إلى DNS الداخلي لاكتشاف خدمات الدومين.

الخلاصة

DNS هو واحد من أهم مكونات الشبكات، لأنه يوفر طبقة تسمية موزعة تسمح للمستخدمين والتطبيقات بالوصول إلى الخدمات بالأسماء بدلاً من الاعتماد على عناوين IP فقط.

وبالنسبة لفني IT أو مسؤول الشبكة، فإن فهم Recursive Resolver وRoot وTLD وAuthoritative DNS وDNS Records وCache يجعل تشخيص مشاكل الأسماء أكثر دقة، ويمنع تنفيذ تغييرات عشوائية لا تعالج السبب الحقيقي للمشكلة.

google-playkhamsatmostaqltradent