ابدأ الآن سيريا بروكسي syriaproxy أول خدمة بروكسي مختصة بسوريا

ما هو DNS؟

نظام أسماء النطاقات (DNS) قاعدة بيانات موزعة تحوّل الأسماء التي نكتبها، مثل example.com، إلى عناوين IP تحتاجها الأجهزة للاتصال. يسأل جهازك خادماً يسمى المحلل التكراري، فيتتبع السلسلة من خوادم الجذر إلى الخادم المسؤول عن النطاق، ثم يعيد الجواب ويحفظه مدة يحددها صاحب النطاق.

أجزاء النظام

وضع المعيار RFC 1034 عام 1987 أساس النظام، وقسّمه إلى ثلاثة أجزاء:

ويميّز المعيار RFC 9499 لمصطلحات DNS بين نوعين من المحللات. المحلل الجذعي (stub resolver) في جهازك لا يستطيع إتمام البحث وحده. لذلك يرسل السؤال إلى محلل تكراري (recursive resolver) يتولى البحث كله ويحفظ الأجوبة.

شجرة الأسماء

تبدأ المستويات من آخر الاسم. في www.example.com يأتي الجذر أولاً وهو غير مكتوب، ثم النطاق العلوي com، ثم example، ثم www. وكل مستوى يفوّض المستوى الذي تحته إلى خوادم أخرى.

يحدد المعيار RFC 1035 حدود الاسم: كل جزء بين نقطتين لا يتجاوز 63 بايتاً، والاسم كله لا يتجاوز 255 بايتاً.

ماذا يحدث حين تكتب اسم موقع

  1. يبحث المتصفح ثم نظام التشغيل في ذاكرتهما المؤقتة. إن وُجد جواب صالح استُخدم فوراً.
  2. يرسل المحلل الجذعي السؤال إلى المحلل التكراري المضبوط في جهازك أو موجّهك، عبر UDP على المنفذ 53 في الأصل.
  3. إن لم يكن الجواب في ذاكرة المحلل التكراري، سأل أحد خوادم الجذر. الجذر لا يعرف العنوان، لكنه يحيله إلى خوادم com.
  4. يسأل خوادم com، فتحيله إلى خوادم الأسماء المسؤولة عن example.com.
  5. يسأل الخادم الموثوق للنطاق، فيرد بالسجل المطلوب، كعنوان IPv4 أو IPv6.
  6. يحفظ المحلل التكراري الجواب مدة صلاحيته (TTL) ويعيده إلى جهازك، فيتصل الجهاز بالعنوان.

يعرّف المعيار TTL بأنه أقصى مدة يبقى فيها السجل في الذاكرة المؤقتة، ويحددها صاحب المنطقة. لهذا لا يظهر تغيير عنوان موقع عند الجميع في اللحظة نفسها. وإذا كان الجواب أكبر من أن يحمله UDP، وُضعت علامة الاقتطاع في الرد وأعاد المحلل السؤال عبر TCP على المنفذ نفسه.

أنواع السجلات الشائعة

السجلما يحمله
Aعنوان IPv4 للاسم
AAAAعنوان IPv6 للاسم، وعرّفه RFC 3596
CNAMEاسم بديل يشير إلى اسم آخر
MXخوادم البريد التي تستقبل رسائل النطاق
NSخوادم الأسماء الموثوقة للمنطقة
TXTنص حر، يُستخدم لإثبات ملكية النطاق وسياسات البريد
PTRالاسم المقابل لعنوان، في البحث العكسي

البحث العكسي

يمكن أيضاً السؤال في الاتجاه المعاكس: ما الاسم المرتبط بهذا العنوان؟ لهذا الغرض شجرة خاصة، يُكتب فيها عنوان IPv4 مقلوباً تحت النطاق in-addr.arpa، وعنوان IPv6 تحت ip6.arpa.

فالسؤال عن 192.0.2.10 يصبح سؤالاً عن سجل PTR للاسم 10.2.0.192.in-addr.arpa. وصاحب كتلة العناوين هو من يضع هذه السجلات، لا صاحب الموقع الذي يستخدم العنوان.

يستخدم مزودو البريد البحث العكسي للتحقق من الخوادم المرسلة. ويضع كثير من المشغّلين في أسماء موجّهاتهم رموز المدن، فيستفيد منها من يقدّر مواقع العناوين.

dig -x 9.9.9.9 +short

من يرى أسئلتك

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

التشفير يغلق المسار بين جهازك والمحلل: DNS over TLS وDNS over HTTPS، ويشرح الثاني مقال DNS عبر HTTPS. أما DNSSEC فيثبت صحة الجواب بالتوقيع، ولا يخفي السؤال.

المحلل يغيّر ما تراه

كثير من المواقع الكبيرة تعطي جواباً مختلفاً حسب مكان السائل، لتوجّهه إلى أقرب خادم. لهذا يؤثر مكان المحلل في سرعة الموقع، وأحياناً في النسخة التي تراها منه.

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

من أين يأتي المحلل الذي تستخدمه

حين يتصل جهازك بشبكة، يعطيه الموجّه عنوانه ومعه عنوان المحلل، عبر DHCP عادةً. والموجّه المنزلي يمرر الأسئلة غالباً إلى محلل المزود.

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

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

كيف تفحص DNS بنفسك

اسأل عن سجل محدد بأداة dig على لينكس وماك، أو nslookup على ويندوز:

dig example.com A +noall +answer
dig @9.9.9.9 example.com AAAA +short
nslookup example.com

الأمر الأول يعرض سطر الجواب بهذا الشكل، والعنوان هنا للتوضيح فقط. الحقل الثاني في السطر هو ما بقي من مدة الصلاحية بالثواني:

example.com.    3600    IN    A    192.0.2.10

ولمعرفة المحلل الذي يستخدمه جهازك:

resolvectl status         # Linux with systemd-resolved
ipconfig /all             # Windows: "DNS Servers"
scutil --dns              # macOS

كيف تختار محللاً وتحمي أسئلتك

DNS في syriaproxy

مع syriaproxy تُحلّ أسماء المواقع داخل سوريا عبر خوادم سيريتل، لا عبر محلل في بلدك. لذلك تحصل على الأجوبة نفسها التي يحصل عليها هاتف متصل بشبكة سيريتل داخل سوريا.

أسئلة شائعة

لماذا لا يظهر تغيير عنوان موقعي فوراً؟

لأن المحللات تحتفظ بالجواب القديم حتى تنتهي مدة صلاحيته. خفّض قيمة TTL قبل أي تغيير مخطط بوقت كافٍ.

هل يغيّر تبديل خادم DNS عنواني؟

لا. يغيّر الجهة التي تحوّل الأسماء إلى عناوين فقط. المواقع ما زالت ترى عنوانك العام عند الاتصال بها.

ما معنى أن الاسم «لا يُحلّ»؟

أن المحلل لم يحصل على عنوان. قد لا يكون الاسم موجوداً، أو يكون خادمه الموثوق معطلاً، أو يحجب المحلل الاسم عمداً.

هل يكفي DNS مشفر لإخفاء المواقع التي أزورها؟

لا وحده. المزود ما زال يرى عناوين الخوادم التي تتصل بها، وقد يرى اسم الموقع في بداية اتصال HTTPS.

افحص المحلل الذي يستخدمه اتصالك بأداة فحص تسريب DNS المجانية.