العودة إلى المدونة

شرح سجلات DNS: A وAAAA وCNAME وMX وTXT وNS بأمثلة عملية

فريق تحرير IM Host10 أكتوبر 20268 دقائق قراءة
شرح سجلات DNS: A وAAAA وCNAME وMX وTXT وNS بأمثلة عملية

سجلات DNS هي الإدخالات الموجودة في منطقة (Zone) الدومين، وهي التي تخبر الإنترنت بمكان كل خدمة. سجل A يوجه الاسم إلى عنوان IPv4، وAAAA إلى عنوان IPv6، وCNAME يجعل اسمًا بديلًا لاسم آخر، وMX يحدد السيرفرات التي تستقبل بريدك، وTXT يحمل نصوصًا تُستخدم في توثيق البريد وإثبات ملكية الدومين، وNS يحدد الخوادم المسؤولة عن المنطقة كلها. دومين أي شركة عادية يحتاج أقل من خمسة عشر سجلًا، لكن سجلًا واحدًا خاطئًا قد يوقف الموقع أو يرسل البريد إلى السبام بدون أن تلاحظ.

نشرح كل نوع بمثال حقيقي، ثم TTL، والسجلات التي يحتاجها موقع معتاد، وأكثر الأخطاء تكرارًا، وطريقة مراجعة منطقة DNS الخاصة بك. كل الأمثلة تستخدم example.com، فضع دومينك مكانه.

كيف تقرأ سجل DNS؟

كل سجل يتكون من نفس الأجزاء الخمسة:

example.com.   3600   IN   A   203.0.113.10
name           TTL    class type value
  • الاسم (Name): الجزء الذي ينطبق عليه السجل. الرمز @ في أغلب اللوحات يعني الدومين نفسه، ويسمى الجذر.

  • TTL: عدد الثواني التي يُسمح فيها بحفظ الإجابة في الذاكرة المؤقتة.

  • الفئة (Class): دائمًا تقريبًا IN، وأغلب اللوحات تخفيها.

  • النوع والقيمة: نوع السجل والبيانات الخاصة به.

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

أنواع السجلات بالتفصيل

سجل A: من الاسم إلى عنوان IPv4

example.com.       3600  IN  A  203.0.113.10
shop.example.com.  3600  IN  A  203.0.113.20

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

سجل AAAA: من الاسم إلى عنوان IPv6

example.com.  3600  IN  AAAA  2001:db8::10

نفس وظيفة A لكن لعناوين IPv6. لا تضفه إلا إذا كان السيرفر يرد فعلًا على هذا العنوان بنفس الموقع وبشهادة SSL صالحة. سجل AAAA قديم هو سبب شهير لمشكلة "الموقع يفتح عندي ولا يفتح عند العميل"، لأن كثيرًا من شبكات الموبايل تفضل IPv6.

سجل CNAME: اسم بديل لاسم آخر

www.example.com.   3600  IN  CNAME  example.com.
help.example.com.  3600  IN  CNAME  helpdesk.example.net.

سجل CNAME يقول: "ابحث عن ذلك الاسم الآخر بدلًا مني". مفيد لـ www ولتوجيه نطاق فرعي إلى خدمة خارجية. وهناك قاعدتان مهمتان:

  • CNAME لا يجتمع مع أي سجل آخر بنفس الاسم: لذلك لا يمكن وضعه على جذر الدومين، لأن الجذر عليه دائمًا سجلات NS وSOA. بعض مزودي DNS يوفرون ميزة ALIAS أو ANAME أو "CNAME Flattening" التي تعمل مثل CNAME على الجذر وترد بسجلات A.

  • سجلات MX وNS لا تشير إلى CNAME: وجّهها إلى اسم له سجل A أو AAAA خاص به.

سجل MX: أين يُسلَّم بريدك

example.com.  3600  IN  MX  10 mail.example.com.
example.com.  3600  IN  MX  20 backup-mx.example.com.

الرقم هو الأولوية، والأقل هو المفضل، فالسيرفرات المرسلة تجرب 10 أولًا ثم 20. ويجب أن تكون القيمة اسم سيرفر له سجل A أو AAAA، وليس عنوان IP. وإذا كان الدومين لن يستقبل بريدًا أبدًا، فالصيغة المعتمدة لذلك هي 0 . وتسمى Null MX.

سجل TXT: نصوص للتوثيق وأمان البريد

سجلات TXT تحمل نصًا حرًا، لكنها عمليًا تُستخدم في صيغ معروفة:

; SPF: السيرفرات المسموح لها بالإرسال باسم الدومين
example.com.  3600  IN  TXT  "v=spf1 a mx include:_spf.mailprovider.example ~all"

; DKIM: المفتاح العام للتحقق من توقيع الرسائل
default._domainkey.example.com.  3600  IN  TXT  "v=DKIM1; k=rsa; p=MIIBIjANBgkq..."

; DMARC: ماذا يفعل المستقبل إذا فشل SPF أو DKIM
_dmarc.example.com.  3600  IN  TXT  "v=DMARC1; p=none; rua=mailto:[email protected]"

; توثيق ملكية الموقع في Google Search Console
example.com.  3600  IN  TXT  "google-site-verification=abc123..."

يمكن أن يكون للدومين سجلات TXT كثيرة، لكن سجلًا واحدًا فقط يبدأ بـ v=spf1. ولسجل SPF حد أقصى 10 عمليات بحث DNS (كل include وa وmx تُحسب)، فإضافة include لكل أداة تسويق ستكسره في النهاية. واسم المحدد في DKIM (هنا default، وهو ما يستخدمه cPanel) تحدده الجهة التي توقّع بريدك. وللتفاصيل الكاملة عن السياسات وترتيب التفعيل راجع دليل توثيق البريد بسجلات SPF وDKIM وDMARC.

سجل NS: من المسؤول عن المنطقة

example.com.  86400  IN  NS  ns1.dns-provider.example.
example.com.  86400  IN  NS  ns2.dns-provider.example.

سجلات NS موجودة في مكانين: عند جهة تسجيل الامتداد (وتضبطها من حسابك لدى المسجل)، وداخل منطقة DNS نفسها، ويجب أن يتطابقا. تغيير الـ Nameservers عند المسجل ينقل التحكم في كل السجلات إلى المزود الجديد، ولهذا يجب إنشاء السجلات هناك أولًا. ودليل ربط الدومين بالاستضافة يشرح متى تغير الـ Nameservers ومتى تكتفي بتعديل السجلات.

سجلات أخرى تستحق المعرفة

  • SOA: يُنشأ تلقائيًا، ويحمل الرقم التسلسلي للمنطقة والمؤقتات، ومنها مدة حفظ إجابة "السجل غير موجود".

  • CAA: يحدد جهات الإصدار المسموح لها بإصدار شهادات SSL لدومينك، مثل example.com. CAA 0 issue "letsencrypt.org". إذا أضفته، فضع فيه الجهة التي تستخدمها استضافتك للشهادة المجانية، وإلا سيفشل التجديد.

  • SRV: يوجه خدمة معينة (بعض أنظمة الاتصال والمحادثة والإعداد التلقائي للبريد) إلى سيرفر ومنفذ.

  • PTR (الـ Reverse DNS): يحول عنوان IP إلى اسم، ويضبطه مالك الـ IP، أي شركة الاستضافة غالبًا، وليس من منطقة الدومين. سيرفرات البريد على VPS تحتاج PTR مطابقًا حتى تثق بها الخوادم الأخرى.

TTL: كم تُحفظ الإجابة؟

  • 3600 (ساعة): قيمة مناسبة لأغلب السجلات.

  • 300 (خمس دقائق): اضبطها قبل أي تغيير مخطط بيوم، ثم ارفعها بعده.

  • 86400 (يوم): مناسبة لسجلات لا تتغير تقريبًا مثل NS.

وهناك تفصيلة تربك كثيرين: إجابة "غير موجود" تُحفظ أيضًا. إذا بحثت عن new.example.com قبل إنشائه، قد يتذكر خادم DNS هذه الإجابة السلبية للمدة المحددة في SOA حتى بعد إضافة السجل. انتظر، أو اختبر عبر خادم DNS عام آخر.

السجلات التي يحتاجها دومين أي شركة

للموقع:

  • سجل A للرمز @ يشير إلى سيرفر الموقع.

  • سجل CNAME (أو A) لـ www.

  • سجل AAAA فقط إذا كان IPv6 مضبوطًا على السيرفر.

للبريد:

  • سجلات MX من مزود البريد.

  • سجل SPF واحد يضم كل خدمة ترسل باسم دومينك.

  • سجل DKIM (TXT أو CNAME) لكل خدمة إرسال.

  • سجل DMARC على _dmarc، يبدأ بـ p=none لجمع التقارير.

  • سجل A لسيرفر البريد إذا كان MX يشير إلى mail.example.com.

للتوثيق: سجل TXT لـ Google Search Console ولأي خدمة تطلب إثبات الملكية، وبعض الخدمات تطلب CNAME بدلًا منه.

وإذا كنت تشغل البريد على دومينك، فإن استضافة البريد من IM HOST تعطيك قيم MX وSPF وDKIM المطلوبة بالضبط، ودليل إيميل الشركة على الدومين الخاص بك يساعدك في تحديد أين تكون صناديق البريد.

أكثر الأخطاء التي نراها

  • CNAME على جذر الدومين: إما ترفضه اللوحة، أو تقبله فيتعطل البريد. استخدم سجل A للرمز @.

  • سجلا SPF: يحدث عادة بعد إضافة أداة مراسلات جديدة، والمستقبلون يعتبرونه خطأ. ادمجهما في سجل واحد.

  • MX يشير إلى IP أو CNAME: بعض السيرفرات تتسامح، وكثير منها لا يفعل.

  • نسيان النقطة الأخيرة في ملف المنطقة الخام، فتظهر أسماء مثل mail.example.com.example.com.

  • سجل AAAA منسي يشير إلى سيرفر قديم بعد النقل.

  • السجلات العامة (Wildcard *) التي تجعل أي نطاق فرعي مكتوب خطأ يفتح، فتخفي الأخطاء.

  • CNAME يشير إلى خدمة ألغيتها: إذا استطاع شخص آخر حجز ذلك الاسم الخارجي، يمكنه عرض محتوى على نطاقك الفرعي. احذف سجلات الخدمات التي لم تعد تستخدمها.

  • القفز إلى DMARC p=reject قبل قراءة التقارير، فيُحجب بريد سليم من أدوات نسيتها.

كيف تراجع منطقة DNS الخاصة بك؟

ابدأ بتصدير أو نسخ المنطقة كاملة من لوحة DNS، ثم اسأل عما يراه العالم فعلًا. لا تعتمد على dig ANY، لأن أغلب الخوادم أصبحت ترد عليه بإجابة مختصرة. اسأل عن كل نوع على حدة:

for t in A AAAA CNAME MX TXT NS CAA; do
  echo "== $t"
  dig +short "$t" example.com
done

dig +short CNAME www.example.com
dig +short TXT _dmarc.example.com
dig +short TXT default._domainkey.example.com

# عرض قيم TTL أيضًا
dig +noall +answer example.com A

على Ubuntu أو Debian يأتي dig مع حزمة dnsutils. بعدها راجع القائمة:

  1. اكتب بجوار كل سجل وظيفته ومن المسؤول عن خدمته. أي سجل لا يعرف أحد سببه مرشح للحذف بعد التأكد.

  2. تأكد أن سجلات A وAAAA تشير إلى سيرفرات ما زلت تستخدمها.

  3. تأكد من وجود سجل SPF واحد فقط يضم كل جهة ترسل فعلًا.

  4. تأكد من وجود DKIM لكل خدمة إرسال، وDMARC على _dmarc.

  5. ابحث عن CNAME يشير إلى خدمات خارجية ألغيتها.

  6. كرر المراجعة بعد أي تغيير في الاستضافة أو البريد، ومرة في السنة على الأقل.

أسئلة شائعة

ما الفرق بين سجل A وسجل CNAME؟

سجل A يربط الاسم بعنوان IP مباشرة، وCNAME يربط الاسم باسم آخر له سجل A خاص به. استخدم A لجذر الدومين، وCNAME للأسماء البديلة مثل www.

كم سجل MX أحتاج؟

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

هل يمكن وضع أكثر من سجل TXT؟

نعم، بالعدد الذي تحتاجه. الاستثناء هو SPF: سجل TXT واحد فقط لكل اسم يبدأ بـ v=spf1.

متى يظهر تعديل سجلات DNS؟

تعديل السجل يظهر خلال مدة TTL القديمة، غالبًا ساعة أو أقل. أما تغيير الـ Nameservers فقد يستغرق من 24 إلى 48 ساعة بسبب الذاكرة المؤقتة على مستوى الامتداد.

كل دومين مسجل لدى IM HOST يشمل إدارة DNS مجانية، فتضيف وتعدل كل السجلات السابقة من مكان واحد. وإذا لاحظت شيئًا غير مفهوم في منطقة DNS الخاصة بك، فمهندسونا يراجعونه معك على مدار الساعة.

المزيد من مدونتنا

اكتشف المزيد من الأدلة العملية ورؤى الخدمات من فريق IM Host.

عرض كل المقالات