پرش به محتویات

آموزش تنظیم DNS سرور

این صفحه به شما نشان می‌دهد چطور سرور DNSی را که سرور هیدیفای شما استفاده می‌کند انتخاب کنید و چطور بررسی کنید که DNS درست کار می‌کند. اگر سایت‌ها از طریق پروکسی شما باز نمی‌شوند، یا تست نشتی DNS سرورهای اشتباهی نشان می‌دهد، این صفحه به کار شما می‌آید.

DNS (سیستم نام دامنه) نام‌ها را به آدرس IP تبدیل می‌کند. مثلاً وقتی google.com را باز می‌کنید، دستگاه شما ابتدا از یک سرور DNS می‌پرسد «IP سایت google.com چیست؟». سرور DNS آدرس IP را برمی‌گرداند و تنها پس از آن دستگاه شما به سایت وصل می‌شود.

نحوه تبدیل نام به آدرس IP با درخواست DNS

سرور شما هم مثل گوشی یا کامپیوترتان به یک سرور DNS سالم و مطمئن نیاز دارد.

سرورهای DNS عمومی معروف

شرکت‌های بزرگ سرورهای DNS رایگانی دارند که در همه جای دنیا کار می‌کنند. این‌ها گزینه‌های خوبی برای سرور شما هستند:

آدرس شرکت
1.1.1.1 Cloudflare
8.8.8.8 Google

نشانه‌های مشکل DNS در سرور

  • اتصال برقرار می‌شود اما سایت‌ها از طریق پروکسی باز نمی‌شوند یا خیلی کند باز می‌شوند.
  • نصب‌کننده یا آپدیت هشدار DNS is not working. را نشان می‌دهد.
  • تست نشتی DNS سرورهای DNSی را نشان می‌دهد که شما انتخاب نکرده‌اید.

راه‌حل، یکی از روش‌های زیر یا هر دوی آن‌هاست.

روش ۱: تنظیم سرور DNS از طریق پنل

تنظیم سرور DNS در پنل، سرور DNSی است که سرویس پروکسی هیدیفای برای پیدا کردن سایت‌ها برای کاربران شما استفاده می‌کند. مقدار پیش‌فرض آن 1.1.1.1 (Cloudflare) است.

  1. وارد پنل مدیریت هیدیفای شوید.
  2. صفحه تنظیمات را باز کنید.
  3. در کادر جستجو (جستجو در همه تنظیمات…) عبارت DNS را بنویسید. این تنظیم در بخش تنظیمات عمومی و جزو تنظیمات پیشرفته است.
  4. سرور DNS دلخواه خود را وارد کنید، مثلاً 1.1.1.1 یا 8.8.8.8. توضیح زیر این فیلد گزینه‌های 1.1.1.2 (مسدود کردن بدافزار) و 1.1.1.3 (مسدود کردن بدافزار و محتوای بزرگسالان) را هم پیشنهاد می‌کند.
  5. روی ذخیره بزنید.
  6. وقتی پنل درخواست کرد، روی اعمال تغییرات بزنید تا تغییر اعمال شود.

فیلد سرور DNS در تنظیمات پنل (نسخه قدیمی پنل؛ ظاهر پنل جدید متفاوت است)

روش ۲: تنظیم DNS خود سرور از طریق SSH

سیستم‌عامل سرور هم برای کارهایی مثل دانلود آپدیت‌ها از یک سرور DNS استفاده می‌کند. در Ubuntu، هیدیفای برای این کار از سرویس systemd-resolved استفاده می‌کند. اگر DNS سرور کار نمی‌کند، آن را با اسکریپتی که همراه هیدیفای نصب می‌شود تنظیم کنید (نصب‌کننده هم از همین اسکریپت استفاده می‌کند).

  1. با SSH به سرور خود وصل شوید. اگر منوی هیدیفای باز شد، با Ctrl+C از آن خارج شوید.
  2. این دستور را روی سرور اجرا کنید. این دستور سرورهای DNS را روی 8.8.8.8 و 1.1.1.1 تنظیم می‌کند:

    sudo /opt/hiddify-manager/scripts/common/change_dns.py 8.8.8.8 1.1.1.1
    
  3. وقتی کار تمام شد، خط آخر خروجی باید DNS servers set to 8.8.8.8 and 1.1.1.1 باشد.

فایل /etc/resolv.conf را پاک یا قفل نکنید

در آموزش‌های قدیمی گفته می‌شد فایل /etc/resolv.conf را پاک کنید، دستی بنویسید و با chattr +i قفل کنید. این کار را روی سرور هیدیفای فعلی انجام ندهید. در Ubuntu این فایل توسط systemd-resolved مدیریت می‌شود و قفل کردن آن ممکن است جلوی تعمیر خودکار DNS توسط نصب‌کننده هیدیفای را بگیرد. اگر قبلاً آن را قفل کرده‌اید، با دستور sudo chattr -i /etc/resolv.conf قفل را باز کنید.

بررسی DNS روی سرور

این دستورها را از طریق SSH روی سرور اجرا کنید.

  1. بررسی کنید سیستم از کدام سرورهای DNS استفاده می‌کند:

    resolvectl status
    

    دنبال خط DNS Servers بگردید. در این خط فقط باید سرورهایی که انتخاب کرده‌اید دیده شوند، مثلاً 8.8.8.8 1.1.1.1.

  2. بررسی کنید که یک نام به IP تبدیل می‌شود:

    nslookup google.com
    

    اگر درست کار کند، یک یا چند خط Address: با آدرس‌های IP گوگل می‌بینید. ممکن است در خط Server: آدرس 127.0.0.53 دیده شود. این طبیعی است: این آدرس سرویس محلی systemd-resolved است که درخواست را به سرورهای مرحله ۱ می‌فرستد. اگر خطایی مثل connection timed out یا server can't find دیدید، یعنی DNS کار نمی‌کند و باید روش ۲ را تکرار کنید.

    (اگر nslookup نصب نیست، آن را با sudo apt install dnsutils نصب کنید.)

نمونه خروجی دستور nslookup google.com

اطلاعات بیشتر درباره نشتی DNS


اخرین بروزرسانی: 23 اکتبر 2026

نظرات