العربية

ربط اسم النطاق بخادم VPS لينكس عبر سجلات DNS

3 min
استضافة VPS/VDS

لا يفيدك اسم النطاق ما لم تُخبر سجلات 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اسم إلى عنوان IPv4VPS_IP
AAAAاسم إلى عنوان IPv6VPS_IPV6
CNAMEاسم مستعار لاسم آخرexample.com.

لا يمكن وضع CNAME على النطاق الجذر (example.com) لأنه يتعارض مع باقي سجلات المنطقة. استخدم A/AAAA هناك، واستخدم CNAME للنطاقات الفرعية مثل www.

✍️ إنشاء سجلات A وAAAA

في محرّر منطقة DNS لدى المسجّل، أضف هذه السجلات. الرمز @ في حقل المضيف يعني النطاق الجذر.

TEXT
Type Host Value TTL A @ VPS_IP 3600 AAAA @ VPS_IPV6 3600

بعض الواجهات تطلب الاسم الكامل (example.com.) بدل @. أبقِ النقطة الأخيرة فقط إذا طلب المحرّر اسمًا مؤهلًا بالكامل. إذا كنت لا تستخدم IPv6 بعد، فلا تُنشئ سجل AAAA: السجل الخاطئ أسوأ من عدمه، لأن كثيرًا من العملاء يجرّبون IPv6 أولًا.

🔗 إضافة www عبر CNAME

اجعل www يتبع الاسم الرئيسي حتى تغيّر العنوان في مكان واحد فقط:

TEXT
Type Host Value TTL CNAME www example.com. 3600

تعمل النطاقات الفرعية الأخرى بالطريقة نفسها. استخدم سجل A عندما يجب أن يشير نطاق فرعي إلى خادم مختلف (مثل api إلى عنوان آخر).

⏱️ TTL والانتشار

يخبر TTL (مدة البقاء بالثواني) المحلِّلات بالمدة التي يجوز لها فيها الاحتفاظ بالإجابة في الذاكرة المؤقتة. يظهر السجل الجديد عادةً خلال دقائق، أما تعديل سجل موجود فلا يظهر قبل انتهاء TTL القديم.

  • قبل الترحيل، اخفض TTL إلى 300 قبل يوم، ثم غيّر العنوان.
  • بعد استقرار التغيير، أعده إلى 3600 أو أكثر.
  • الانتشار الكامل ليس فوريًا أبدًا: توقّع من بضع دقائق إلى بضع ساعات.

✅ التحقق عبر dig وnslookup

اسأل المحلِّل الخاص بك ثم محلِّلًا عامًا للمقارنة:

Bash
dig +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:

Bash
nslookup example.com nslookup -type=AAAA example.com nslookup www.example.com 1.1.1.1

يجب أن تساوي الإجابة VPS_IP. ثم اختبر المسار إلى الخادم:

Bash
ping -c 3 example.com curl -I http://example.com

🔁 DNS العكسي (PTR)

يحوّل DNS المباشر الاسم إلى عنوان IP. أما DNS العكسي (سجل PTR) فيفعل العكس: يربط VPS_IP باسم مضيف. لا يُدار في منطقة نطاقك بل لدى مالك كتلة العناوين، لذا اطلب من مزوّدك ضبطه. تعتمد خوادم البريد عليه كثيرًا، فاضبطه على الاسم الذي ترسل منه البريد، مثل mail.example.com، وتأكد أن لهذا الاسم سجل A مطابقًا.

Bash
dig -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 للتأكد من صحة المنطقة، ثم انتظر. فرّغ الذاكرة المؤقتة المحلية عند الحاجة:

Bash
sudo resolvectl flush-caches

NXDOMAIN أو لا توجد إجابة. السجل في منطقة خاطئة، أو في اسم المضيف خطأ إملائي، أو أن النطاق يستخدم خوادم أسماء غير التي عدّلتها. قارن dig NS example.com بخوادم الأسماء المعلنة لدى المسجّل.

النطاق يُحلّ لكن الموقع لا يُفتح. DNS سليم والمشكلة في الخدمة. تأكد من أن خادم ويب يستمع على المنفذ وأن الجدار الناري يسمح به:

Bash
sudo ss -tlnp | grep -E ':80|:443'

🎉 أصبح نطاقك يشير الآن إلى خادمك: يمكنك تثبيت خادم ويب وإصدار شهادة.

ابقَ على اطلاع بأحدث العروض والخصومات والعروض الترويجية الخاصة.

عرض العروض الترويجية

نستخدم ملفات تعريف الارتباط

نستخدم كوكيز تحليلية لتحسين تجربتك. لا نبيع البيانات لأطراف ثالثة. المزيد في سياسة الخصوصية.