نحوه عملکرد DNS سرور

یاگرام شماتیک نحوه عملکرد DNS سرور که ترجمه نام دامنه به IP را نشان می‌دهد و به سؤال "DNS سرور چیست؟" پاسخ می‌دهد.

DNS سرور چیست و چگونه کار می‌کند؟ راهنمای جامع

مقدمه: چرا DNS سرور چیست اولین سؤال هر وبمستر است؟

در ادامه DNS سرور چیست شما اینترنت را مانند یک شهر بزرگ تصور کنید که هر خانه (وب‌سایت) یک آدرس منحصربه‌فرد دارد. اما این آدرس‌ها به جای نام خیابان، رشته‌ای از اعداد به نام آدرس IP هستند (مانند 172.67.170.15). به خاطر سپردن این اعداد برای ما انسان‌ها تقریباً غیرممکن است. اینجاست که قهرمان گمنام اینترنت، یعنی DNS سرور، وارد میدان می‌شود.

DNS سرور چیست؟ به زبان ساده، DNS (Domain Name System) مانند دفترچه تلفن غول‌پیکر و هوشمند اینترنت عمل می‌کند. وظیفه اصلی آن، ترجمه نام دامنه به IP است؛ یعنی نام‌های قابل فهم برای انسان (مانند www.poshtvar.com) را به آدرس‌های عددی IP که کامپیوترها می‌فهمند، تبدیل می‌کند.

در این مقاله جامع که به عنوان ستون اصلی (Pillar Page) هاب محتوایی “دامنه، DNS و ایمیل” ما عمل می‌کند، ما به طور عمیق به این خواهیم پرداخت که DNS سرور چیست، نحوه عملکرد DNS سرور چگونه است و چرا وجود آن برای عملکرد روان اینترنت حیاتی می‌باشد. درک این مفاهیم برای هر کسی که با وب‌سایت، دامنه و هاستینگ سروکار دارد، یک ضرورت است.

DNS سرور دقیقاً چیست؟ (تعریف ساده)

یک DNS سرور (Domain Name System Server) در واقع یک کامپیوتر یا مجموعه‌ای از سرورهاست که نام‌های دامنه قابل فهم برای انسان (مانند www.example.com) را به آدرس‌های IP عددی متناظر آن‌ها (192.0.2.1) ترجمه می‌کند. این فرآیند ترجمه نام دامنه به IP به دستگاه‌های مختلف در اینترنت اجازه می‌دهد تا یکدیگر را پیدا کرده و با هم ارتباط برقرار کنند.

نقش اصلی DNS سرور این است که به درخواست‌های DNS (پرس‌وجوهای کامپیوترها) پاسخ دهد. این سرورها با نگهداری یک پایگاه داده از نام‌های میزبان و آدرس‌های IP مربوط به آن‌ها، به عنوان یک “دفترچه تلفن اینترنت” عمل می‌کنند. هنگامی که شما نام یک وب‌سایت را در مرورگر تایپ می‌کنید، کامپیوتر شما از DNS سرور می‌پرسد که آدرس IP مربوط به آن نام چیست و سپس به آن آدرس متصل می‌شود

DNS Root Serverها چه هستند؟

DNS Root Serverها مجموعه‌ای از سرورهای مرکزی در سراسر جهان هستند که در بالاترین سطح سلسله‌مراتب DNS قرار دارند. آن‌ها به طور مستقیم به یکدیگر متصل نیستند، بلکه یک آدرس IP مشترک دارند که توسط پروتکل Anycast به نزدیک‌ترین سرور مسیریابی می‌شود. این سرورها اطلاعات مربوط به دامنه‌های فردی را ذخیره نمی‌کنند، اما به عنوان یک ستون فقرات برای کل سیستم DNS عمل می‌کنند.

نحوه عملکرد DNS Root Serverها

هنگامی که یک کاربر نام یک دامنه را در مرورگر خود وارد می‌کند، این فرآیند آغاز می‌شود:

  • درخواست اولیه: کامپیوتر کاربر ابتدا یک درخواست به نزدیک‌ترین سرور ریشه ارسال می‌کند.
  • پاسخ با هدایت: سرور ریشه با آدرس IP سرور TLD (Top-Level Domain) مربوط به آن دامنه پاسخ می‌دهد (مانند .com، .org یا .ir).
  • هدایت به TLD: کامپیوتر کاربر سپس درخواست خود را به سرور TLD ارسال می‌کند.
  • هدایت نهایی: سرور TLD نیز با آدرس IP سرور نام معتبر (Authoritative Name Server) که مسئول اطلاعات دقیق آن دامنه است، پاسخ می‌دهد.

این فرآیند در نهایت به ترجمه نام دامنه به IP و دسترسی کاربر به وب‌سایت مورد نظر منجر می‌شود. در حال حاضر، ۱۳ مجموعه سرور ریشه در جهان وجود دارد که توسط سازمان‌های مختلفی اداره می‌شوند.

نقشه جهان که توزیع ۱۳ خوشه سرور ریشه DNS را نشان می‌دهد، بخشی از آموزش "DNS سرور چیست".
توزیع جهانی ۱۳ خوشه سرور ریشه DNS که توسط سازمان‌های مختلف مدیریت می‌شوند. (منبع: root-servers.org)
 
پ.ن
آیا نیاز به سرور مجازی ایران دارید؟ لطفا بر روی لینک اون کلیک کنید! اگر نیاز به vps ایران با آی پی تمیز و بدون محدودیت دارید کلیک کنید.

نحوه عملکرد DNS سرور: سفر یک درخواست از مرورگر تا سرور

برای درک کامل نحوه عملکرد DNS سرور، باید به جزئیات فرآیند ترجمه نام دامنه به IP بپردازیم. این فرآیند یک سفر کوتاه و سریع است که چهار نوع سرور در آن دخیل هستند:

۴ سرور درگیر در بارگذاری یک صفحه وب:
  1. DNS Resolver (یا Recursive Resolver): این سرور که معمولاً توسط ارائه‌دهنده خدمات اینترنت (ISP) شما مدیریت می‌شود، اولین نقطه‌ای است که درخواست شما را دریافت می‌کند. DNS Resolver مانند یک کتابدار کوشا عمل می‌کند که وظیفه دارد آدرس IP مورد نظر شما را پیدا کند، حتی اگر لازم باشد از سایر سرورهای DNS سؤال کند.
  2. Root Server: این سرورها در بالاترین سطح سلسله‌مراتب DNS قرار دارند. آن‌ها آدرس IP دقیق را نمی‌دانند، اما Resolver را به سمت سرور TLD صحیح راهنمایی می‌کنند.
  3. TLD (Top-Level Domain) Server: این سرورها مسئول مدیریت دامنه‌های سطح بالا مانند .com، .org، .net و غیره هستند. به عنوان مثال، سرور TLD برای .com، Resolver را به سمت سرور نام معتبر برای دامنه مورد نظر شما هدایت می‌کند.
  4. Authoritative Name Server: این سرور، ایستگاه نهایی در این سفر است. این سرور اطلاعات نهایی و معتبر را برای یک دامنه خاص در اختیار دارد و آدرس IP دقیق را به Resolver برمی‌گرداند. مدیریت رکوردهای DNS (مانند رکوردهای A, CNAME, MX) که در مقاله‌های بعدی به آن خواهیم پرداخت، روی این سرورها انجام می‌شود. هنگامی که شما یک هاستینگ از پشتوار سرور تهیه می‌کنید، Name Serverهایی به شما داده می‌شود که به عنوان Authoritative Name Server برای دامنه شما عمل می‌کنند.

پس از اینکه Resolver آدرس IP را از Authoritative Name Server دریافت کرد، آن را به مرورگر شما برمی‌گرداند. سپس مرورگر می‌تواند مستقیماً به وب سرور متصل شده و محتوای وب‌سایت را بارگذاری کند.

انواع پرس‌وجوهای DNS (DNS Queries)

در فرآیند ترجمه نام دامنه به IP، سه نوع پرس‌وجوی DNS نقش دارند که هر کدام عملکرد متفاوتی دارند:

Recursive DNS Query

در این نوع پرس‌وجو، کلاینت (مانند مرورگر شما) از DNS Resolver می‌خواهد که پاسخ کامل را پیدا کند. Resolver مسئول است تا تمام مراحل لازم را طی کرده و آدرس IP نهایی را به کلاینت برگرداند. این نوع پرس‌وجو، تعهد Resolver به یافتن پاسخ نهایی را نشان می‌دهد.

Iterative DNS Query

در این نوع پرس‌وجو، سرور DNS (مانند Root یا TLD) پاسخ کامل را ارائه نمی‌دهد، بلکه Resolver را به سرور DNS بعدی در زنجیره ارجاع می‌دهد. Resolver باید به صورت تکراری از سرورهای مختلف سؤال کند تا به پاسخ نهایی برسد. این فرآیند، بخش اصلی سفر یک درخواست DNS است.

Non-Recursive DNS Query

این یک درخواست است که زمانی رخ می‌دهد که DNS Resolver اطلاعات مورد نیاز را در حافظه پنهان (cache) خود دارد. در این حالت، Resolver می‌تواند بدون پرس‌وجو از سرورهای دیگر، مستقیماً پاسخ دهد و این سریع‌ترین نوع پرس‌وجو محسوب می‌شود.

کشینگ DNS (DNS Caching) چیست؟

کشینگ DNS به معنای ذخیره‌سازی موقت اطلاعات DNS در حافظه پنهان (Cache) دستگاه‌ها و سرورهاست. وقتی شما برای اولین بار نام یک وب‌سایت را جستجو می‌کنید، کامپیوتر شما با طی کردن فرآیند کامل ترجمه نام دامنه به IP، آدرس IP مربوط را پیدا می‌کند. سپس این اطلاعات را در حافظه پنهان محلی خود ذخیره می‌کند. دفعه بعد که از همان وب‌سایت بازدید می‌کنید، کامپیوتر شما دیگر نیازی به ارسال درخواست به سرورهای DNS راه دور ندارد و می‌تواند به سرعت از اطلاعات ذخیره‌شده در حافظه پنهان استفاده کند.

چرا کشینگ DNS اهمیت دارد؟
  • افزایش سرعت: با استفاده از اطلاعات کش‌شده، فرآیند ترجمه نام دامنه حذف می‌شود و وب‌سایت بسیار سریع‌تر بارگذاری می‌شود.
  • کاهش بار سرور: این فرآیند تعداد درخواست‌های ارسالی به سرورهای DNS را به شکل چشمگیری کاهش می‌دهد، که به پایداری و عملکرد بهتر زیرساخت DNS اینترنت کمک می‌کند.

هر رکورد DNS دارای یک مقدار TTL (Time to Live) است که مدیران دامنه آن را تعیین می‌کنند. این مقدار نشان می‌دهد که اطلاعات DNS تا چه مدت باید در حافظه پنهان باقی بمانند. پس از انقضای TTL، اطلاعات از حافظه پنهان حذف می‌شود تا مطمئن شویم که همیشه جدیدترین آدرس IP استفاده می‌شود. به همین دلیل است که تغییر Name Serverها یا رکوردهای DNS مدتی طول می‌کشد تا در سراسر اینترنت منتشر (Propagate) شود.

چگونه DNS سرور خود را پیدا و تغییر دهیم؟

مدیریت و بهینه‌سازی DNS سرور یکی از اقدامات مهم برای افزایش سرعت دسترسی به وب‌سایت‌ها، بهبود امنیت و حتی حفظ حریم خصوصی کاربران است. بسیاری از کاربران، بدون آگاهی، از DNS سرور پیش‌فرض ارائه‌دهنده اینترنت (ISP) خود استفاده می‌کنند، در حالی که می‌توان با تغییر آن به یک DNS سرور سریع‌تر و ایمن‌تر، تجربه وب‌گردی بهتری داشت.

در ادامه، مراحل پیدا کردن DNS سرور فعلی و تغییر آن را به‌طور کامل بررسی می‌کنیم.

پیدا کردن DNS سرور فعلی با DNS Lookup

برای پیدا کردن آدرس DNS سروری که در حال حاضر استفاده می‌کنید، می‌توانید از ابزار nslookup در خط فرمان ویندوز یا ترمینال macOS استفاده کنید:

  • Command Prompt (در ویندوز) یا Terminal (در macOS) را باز کنید.
  • دستور nslookup google.com را تایپ کرده و Enter را بزنید. 3. در خروجی، آدرس IP که در کنار “Server” یا “Addresses” نمایش داده می‌شود، آدرس DNS سرور شماست.
خروجی دستور nslookup google.com در Command Prompt ویندوز که آدرس DNS سرور فعلی را نمایش می‌دهد.
استفاده از nslookup برای شناسایی آدرس DNS سرور شما.

تغییر DNS سرور در ویندوز

دلایل زیادی برای تغییر DNS سرور وجود دارد؛ از جمله افزایش سرعت بارگذاری سایت‌ها، ارتقای امنیت در برابر حملات سایبری و حتی دور زدن برخی محدودیت‌های اینترنتی. تغییر DNS در ویندوز فرآیندی ساده است که با چند کلیک انجام می‌شود.

مراحل تغییر DNS در ویندوز:

  • به مسیر Settings > Network & Internet بروید.
  • روی گزینه Change adapter options کلیک کنید.
  • روی اتصال شبکه فعال خود (مانند Wi-Fi یا Ethernet) راست‌کلیک کرده و Properties را انتخاب کنید.
پنجره Properties اتصال شبکه با انتخاب گزینه Internet Protocol Version 4 (TCP/IPv4) برای تغییر DNS سرور.
دسترسی به تنظیمات TCP/IPv4 برای وارد کردن آدرس‌های DNS جدید.
  • گزینه Internet Protocol Version 4 (TCP/IPv4) را پیدا کرده و پس از انتخاب، روی Properties کلیک کنید.
  • گزینه Use the following DNS server addresses را فعال کنید.
  • آدرس‌های DNS جدید را وارد نمایید. به‌عنوان مثال:
    • Google DNS: 8.8.8.8 و 8.8.4.4
    • Cloudflare DNS: 1.1.1.1 و 1.0.0.1
  • روی OK کلیک کنید تا تغییرات ذخیره شوند.

از این پس، تمام درخواست‌های DNS شما از طریق سرور جدید پردازش خواهند شد و معمولاً نتیجه آن، سرعت بهتر و امنیت بیشتر است.

مشکلات رایج DNS سرور و راه‌های رفع آن‌ها

گاهی اوقات ممکن است با مشکلاتی مانند “DNS server not responding” یا “DNS server unavailable” مواجه شوید. این مشکلات می‌توانند ناشی از حملات بدافزاری، تنظیمات نادرست یا مشکلات شبکه باشند.

حملات بدافزاری (Malware Attacks)

حملاتی مانند DNS Hijacking و DNS Poisoning می‌توانند شما را به وب‌سایت‌های مخرب هدایت کنند. برای محافظت، نرم‌افزار خود را به‌روز نگه دارید، از سرویس‌های DNS معتبر با قابلیت‌های امنیتی مانند DNSSEC استفاده کنید و فایروال خود را فعال نگه دارید.

DNS Server Not Responding

این مشکل می‌تواند به دلایل مختلفی رخ دهد. برای رفع آن می‌توانید:

  • روتر خود را ری‌استارت کنید.
  • اتصال اینترنت خود را بررسی کنید.
  • DNS سرور خود را به یک سرویس عمومی معتبر (مانند Google DNS) تغییر دهید.
  • حافظه پنهان DNS خود را با دستور ipconfig /flushdns در ویندوز پاک کنید.
  • فایروال یا آنتی‌ویروس خود را موقتاً غیرفعال کنید تا ببینید آیا مشکل از آن‌هاست یا خیر.
خطای DNS_PROBE_FINISHED_NXDOMAIN

این یکی از رایج‌ترین خطاهاست که نشان می‌دهد نام دامنه مورد نظر وجود ندارد. 

نتیجه‌گیری: DNS، ستون فقرات اینترنت

در این مقاله جامع، ما به طور کامل به این پرداختیم که DNS سرور چیست و نحوه عملکرد DNS سرور چگونه است. از فرآیند چهار مرحله‌ای ترجمه نام دامنه به IP گرفته تا نقش کشینگ، انواع پرس‌وجوها و راه‌های عیب‌یابی مشکلات رایج، اکنون شما درک عمیق‌تری از این جزء حیاتی اینترنت دارید. مدیریت رکوردهای DNS و درک مفاهیمی مانند انتشار DNS و امنیت SSL (که در مقالات آینده به آن‌ها خواهیم پرداخت) گام‌های بعدی برای تسلط کامل بر مدیریت دامنه و هاستینگ شما هستند.

تیم پشتوار سرور امیدوار است این راهنمای جامع برای شما مفید بوده باشد. ما با ارائه ابزارهای قدرتمند مدیریت DNS در پنل هاستینگ خود، به شما کمک می‌کنیم تا کنترل کاملی بر دامنه‌های خود داشته باشید. اگر برای راه‌اندازی وب‌سایت خود به یک هاستینگ با DNS قابل اعتماد و سریع نیاز دارید، پلن‌های سرور مجازی ایران ما را بررسی کنید.

برای کسب اطلاعات بیشتر در مورد سرورهای ریشه، می‌توانید به وب‌سایت رسمی آن‌ها مراجعه کنید. همچنین، برای افزایش سرعت و امنیت خود می‌توانید از سرویس‌های DNS عمومی محبوبی مانند Google Public DNS یا Cloudflare DNS (1.1.1.1) استفاده نمایید. برای بررسی وضعیت انتشار DNS دامنه خود نیز، از ابزارهای آنلاین مانند DNSChecker استفاده نمایید.
آیا این مقاله به شما در درک بهتر DNS کمک کرد؟ چه تجربه‌ای از کار با سرورهای DNS دارید؟ نظرات، سؤالات و تجربیات خود را در بخش دیدگاه‌ها با ما به اشتراک بگذارید تا این گفتگو ادامه پیدا کند.

5/5 - (527 امتیاز)

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این سایت توسط reCAPTCHA و گوگل محافظت می‌شود حریم خصوصی و شرایط استفاده از خدمات اعمال.

The reCAPTCHA verification period has expired. Please reload the page.