تكرار السؤال: …
الإجابة المختصرة
يقوم DNS بترجمة أسماء النطاقات البشرية (example.com) إلى عناوين IP رقمية؛ في الاستعلام التكراري (Recursive) يتولى الخادم الوسيط جلب الإجابة الكاملة للعميل، بينما في الاستعلام المتتالي (Iterative) يوجه الخادم السائل إلى الخادم التالي في التسلسل الهرمي.
الشرح
عند كتابة رابط في المتصفح: (1) فحص الكاش المحلي في المتصفح ثم نظام التشغيل ثم الروتر. (2) إرسال استعلام لمحلل DNS لمزود الإنترنت (DNS Resolver). (3) يستعلم المحلل خوادم الجذر (Root Servers) التي توجهه لخوادم نطاق المستوى الأعلى (.com TLD Servers). (4) يوجه خادم TLD المحلل إلى خادم الأسماء المعتمد للنطاق (Authoritative Name Server). (5) يجلب المحلل سجل A ويحفظه في الكاش وفقاً لـ TTL ويرسله للمتصفح ليبدأ الاتصال.
مثال بالكود
import socket
# One call hides the whole chain: stub resolver → recursive resolver → root → .com TLD → authoritative server
for family, _, _, _, address in socket.getaddrinfo("example.com", 443, proto=socket.IPPROTO_TCP):
print(family.name, address[0])
# Watch every hop of the iterative lookup from the shell:
# dig +trace example.comأخطاء شائعة
- ضبط قيمة TTL (Time to Live) طويلة جداً في سجلات الـ DNS قبل إجراء عملية نقل أو ترقية لخوادم الموقع، مما يؤدي لبقاء الزوار عالقين في السيرفرات القديمة لساعات.