لا يفيدك اسم النطاق ما لم تُخبر سجلات DNS العالم بمكان خادمك. في هذا الدليل ستربط نطاقك بـ VPS Linux Infrawire، وتضيف سجلات IPv4 وIPv6 وwww، ثم تتأكد من أن كل شيء يُحلّ بشكل صحيح.
📋 المتطلبات
- خادم VPS بعنوان IPv4 عام (وIPv6 اختياريًا). من مساحة العميل الخاصة بك تجد عنوان IP وكلمة مرور root الخاصة بالخادم.
- اسم نطاق مسجَّل (
example.com) وإمكانية الوصول إلى منطقة DNS الخاصة به، لدى مسجّل النطاق أو لدى مزوّد DNS. - الأداتان
digوnslookupعلى جهازك أو على الخادم:
Bash# Ubuntu 24.04 / Debian 12 sudo apt update && sudo apt install -y dnsutils # AlmaLinux 9 / Rocky 9 sudo dnf install -y bind-utils
🧭 فهم أنواع السجلات
| النوع | الدور | مثال على القيمة |
|---|---|---|
| A | اسم إلى عنوان IPv4 | VPS_IP |
| AAAA | اسم إلى عنوان IPv6 | VPS_IPV6 |
| CNAME | اسم مستعار لاسم آخر | example.com. |
لا يمكن وضع CNAME على النطاق الجذر (example.com) لأنه يتعارض مع باقي سجلات المنطقة. استخدم A/AAAA هناك، واستخدم CNAME للنطاقات الفرعية مثل www.
✍️ إنشاء سجلات A وAAAA
في محرّر منطقة DNS لدى المسجّل، أضف هذه السجلات. الرمز @ في حقل المضيف يعني النطاق الجذر.
TEXTType Host Value TTL A @ VPS_IP 3600 AAAA @ VPS_IPV6 3600
بعض الواجهات تطلب الاسم الكامل (example.com.) بدل @. أبقِ النقطة الأخيرة فقط إذا طلب المحرّر اسمًا مؤهلًا بالكامل. إذا كنت لا تستخدم IPv6 بعد، فلا تُنشئ سجل AAAA: السجل الخاطئ أسوأ من عدمه، لأن كثيرًا من العملاء يجرّبون IPv6 أولًا.
🔗 إضافة www عبر CNAME
اجعل www يتبع الاسم الرئيسي حتى تغيّر العنوان في مكان واحد فقط:
TEXTType Host Value TTL CNAME www example.com. 3600
تعمل النطاقات الفرعية الأخرى بالطريقة نفسها. استخدم سجل A عندما يجب أن يشير نطاق فرعي إلى خادم مختلف (مثل api إلى عنوان آخر).
⏱️ TTL والانتشار
يخبر TTL (مدة البقاء بالثواني) المحلِّلات بالمدة التي يجوز لها فيها الاحتفاظ بالإجابة في الذاكرة المؤقتة. يظهر السجل الجديد عادةً خلال دقائق، أما تعديل سجل موجود فلا يظهر قبل انتهاء TTL القديم.
- قبل الترحيل، اخفض TTL إلى
300قبل يوم، ثم غيّر العنوان. - بعد استقرار التغيير، أعده إلى
3600أو أكثر. - الانتشار الكامل ليس فوريًا أبدًا: توقّع من بضع دقائق إلى بضع ساعات.
✅ التحقق عبر dig وnslookup
اسأل المحلِّل الخاص بك ثم محلِّلًا عامًا للمقارنة:
Bashdig +short example.com A dig +short example.com AAAA dig +short www.example.com CNAME # استعلام من محلِّل عام محدد dig @1.1.1.1 +short example.com A dig @8.8.8.8 +short example.com A # سؤال الخوادم المخوَّلة مباشرة (بدون ذاكرة مؤقتة) dig +short NS example.com dig @NAMESERVER +short example.com A
الفحص نفسه عبر nslookup:
Bashnslookup example.com nslookup -type=AAAA example.com nslookup www.example.com 1.1.1.1
يجب أن تساوي الإجابة VPS_IP. ثم اختبر المسار إلى الخادم:
Bashping -c 3 example.com curl -I http://example.com
🔁 DNS العكسي (PTR)
يحوّل DNS المباشر الاسم إلى عنوان IP. أما DNS العكسي (سجل PTR) فيفعل العكس: يربط VPS_IP باسم مضيف. لا يُدار في منطقة نطاقك بل لدى مالك كتلة العناوين، لذا اطلب من مزوّدك ضبطه. تعتمد خوادم البريد عليه كثيرًا، فاضبطه على الاسم الذي ترسل منه البريد، مثل mail.example.com، وتأكد أن لهذا الاسم سجل A مطابقًا.
Bashdig -x VPS_IP +short host VPS_IP
☁️ حالة خاصة: بروكسي Cloudflare
عندما يكون السجل عبر البروكسي (السحابة البرتقالية)، يُرجع DNS العام عناوين Cloudflare وليس VPS_IP. هذا طبيعي: لن يُظهر dig عنوان خادمك أبدًا.
- يمر حركة الويب (80/443) عبر Cloudflare، أما الخدمات الأخرى مثل SSH والبريد وخوادم الألعاب فلا.
- لكل ما ليس HTTP(S)، أنشئ سجلًا بوضع DNS فقط (السحابة الرمادية)، مثل
ssh.example.comيشير إلىVPS_IP. - يجب أن تكون سجلات البريد (
mailوأهداف MX) دائمًا بوضع DNS فقط. - أبقِ وضع SSL على Full (strict) وثبّت شهادة صالحة على الخادم، وإلا ستحصل على حلقات إعادة توجيه أو الخطأ 525.
🛠️ استكشاف الأخطاء
ما زال العنوان القديم يظهر. لم ينتهِ TTL السابق. اسأل الخادم المخوَّل بـ dig @NAMESERVER للتأكد من صحة المنطقة، ثم انتظر. فرّغ الذاكرة المؤقتة المحلية عند الحاجة:
Bashsudo resolvectl flush-caches
NXDOMAIN أو لا توجد إجابة. السجل في منطقة خاطئة، أو في اسم المضيف خطأ إملائي، أو أن النطاق يستخدم خوادم أسماء غير التي عدّلتها. قارن dig NS example.com بخوادم الأسماء المعلنة لدى المسجّل.
النطاق يُحلّ لكن الموقع لا يُفتح. DNS سليم والمشكلة في الخدمة. تأكد من أن خادم ويب يستمع على المنفذ وأن الجدار الناري يسمح به:
Bashsudo ss -tlnp | grep -E ':80|:443'
🎉 أصبح نطاقك يشير الآن إلى خادمك: يمكنك تثبيت خادم ويب وإصدار شهادة.