یک سیستم نام دامنه یا DNS، نام دامنهها را به نشانیهای IP تبدیل میکند و به مرورگرها اجازه میدهد به سایتها و سایر منابع اینترنتی دسترسی پیدا کنند. هر دستگاه در اینترنت دارای یک نشانی IP است که سایر دستگاهها میتوانند از آن برای مکانیابی دستگاه استفاده کنند. به جای به خاطر سپردن فهرست طولانی نشانیهای IP، افراد میتوانند به سادگی نام سایت را وارد نموده و DNS آن را به نشانی IP ترجمه میکند.
سرور DNS، کامپیوتری است که دارای پایگاهداده حاوی نشانیهای IP عمومی مرتبط با نام وبسایتها است. DNS همانند دفترچه تلفنی برای اینترنت عمل میکند. هر زمان که افراد نام دامنه مانند Fortinet.com یا Yahoo.com را در نوار آدرس مرورگرهای وب تایپ میکنند، DNS، نشانی IP صحیح آن را پیدا میکند. این نشانی IP سایت، دستگاه را به مکان صحیح جهت دسترسی به دادههای سایت هدایت میکند.
هنگامی که سرور DNS، نشانی IP صحیح را پیدا کرد، مرورگرها نشانی را میگیرند و از آن برای ارسال داده به سرورهای شبکه تحویل محتوا (Content Delivery Network – به اختصار CDN) یا سرورهای مبدا استفاده میکنند. در واقع سرور DNS فرآیند را با یافتن نشانی IP مربوط به URL (Uniform Resource Locator) یک وب سایت آغاز میکند. پس از انجام این کار، اطلاعات موجود در وب سایت برای کاربر قابل دسترس خواهد بود.
همانطور که پیش از این عنوان نمودیم، DNS با تبدیل نام دامنه به نشانی IP به ما کمک میکند تا به سایت مورد نظر دسترسی پیدا کنیم. در این بخش به صورت دقیقتر بررسی میکنیم که نحوه کار DNS به چه شکل است؟ پروسههای DNS به صورت مرحله به مرحله پیش میروند. در یک پرسوجو معمولی DNS، URL تایپ شده توسط کاربر باید از چهار سرور عبور کند تا نشانی IP ارائه شود. این فرآیند تبدیل به عنوان “کوئری یا پرسوجو” (Query) شناخته میشود. این چهار سرور برای دریافت نشانی IP صحیح به مشتری با یکدیگر همکاری میکنند. در ادامه نگاهی دقیقتر به نحوه عملکرد هر یک از این چهار سرور خواهیم داشت:
مرحله 1. درخواست اطلاعات
ابتدا شما نام دامنه را در مرورگر وب سایت خود وارد میکنید، اولین جایی که کامپیوتر شما در آن جستجو میکند، حافظه Cache یا حافظه نهان است. این Cache حاوی اطلاعات از آخرین وب سایتهایی است که از آنها بازدید کردهاید. اگر سیستم شما نتواند پاسخ خود را در کش محلی پیدا کند، یک جستجوی DNS برای یافتن جواب اجرا میشود. دی ان اس، در اینجا مانند یک واسطه عمل میکند.
مرحله 2. پرسش از سرورهای DNS بازگشتی
در صورتی که اطلاعات در حافظه محلی ذخیره نشده باشد، کامپیوتر شما سرورهای dns بازگشتی را جستجو میکند. آنها به جای شما جستجوی دی ان اس، را انجام میدهند. سرورهای پاسخ دهنده دارای حافظه کش مخصوص به خود هستند. بنابراین فرایند جستجو در اینجا به پایان میرسد و اطلاعات به کاربر بازگردانده میشود.
مرحله 3. پرسش از سرورهای نام اصلی
اگر سرورها نتوانند پاسخ شما را پیدا کنند، سرورهای نام اصلی را جستجو میکنند. Name Server (سرور نام) به سوالات (Query) در مورد نام دامنه پاسخ میدهد. ابته باید به این نکته توجه کرد که سرورهای نام اصلی، پاسخ سوالات را نمیدانند اما میتوانند جستجو را به سمت کسی هدایت کنند که میداند کجا میتوان جواب سوالات را پیدا کرد.
مرحله 4. پرسش از سرورهای نام TLD
سرورهای TLD به قسمت اول درخواست ما نگاه میکنند. آنها از سمت راست دامنه به سمت چپ شروع به خواندن کرده و جستجوی ما را به سمت سرورهای نام پسوند دامنه سطح اول (TLD) هدایت میکنند. هر دامنه سطح اول (TLD) مانند Com. ، .org و us. مجموعهای از سرورهای نام مخصوص به خود را دارند که مانند یک مسئول پذیرش برای هر TLD عمل میکند. هرچند که این سرورها اطلاعات مورد نیاز ما را ندارند، اما به طور مستقیم ما را به سرورهای حاوی اطلاعات ارجاع میدهند.
مرحله 5. پرسش از سرورهای DNS معتبر
سرورهای نام TLD بخش بعدی درخواست ما را نگاه میکنند و جستجوی ما را به طور مستقیم به سرورهای نام مربوط به این دامنه خاص هدایت میکنند. این سرورها در مورد اطلاعات هر دامنه خاص مسئول هستند و در رکوردهای DNS ذخیره میشوند.
سرورهای معتبر DNS، سوابق مربوط به نام دامنه لازم برای وضوح دی ان اس، را نگه میدارند. این سوابق معمولا در یک پرونده توسط مالک دامنه یا یک مدیر فنی نگهداری میشود.
مرحله 6. بازیابی رکورد Record Retrieval
Name Server های پاسخ دهنده، A Record مربوط به دامنه را از سرورهای نام معتبر میپرسند و این رکورد را در حافظه Cache (کش) محلی ذخیره میکنند. اگر شخصی رکورد هاست این سایت را درخواست کند، سرورهای نام بازگشتی پاسخ او را دارند و دیگر نیازی به اجرای فرایند جستجو نیست.
همه رکوردها دارای مقداری به نام time-to-live یا (TTL) هستند که مانند تاریخ انقضا عمل میکند. پس از مدتی سرورهای نام بازگشتی باید نسخه جدیدی از این رکوردها را درخواست کنند تا مطمئن شوند تاریخ مصرف آنها تمام نشده.
مرحله 7. دریافت پاسخ
سرور بازگشتی، A Record را در حالی که پاسخ در آن قرار دارد، به کامپیوتر شما بازمیگرداند. کامپیوتر شما رکورد خود را در حافظه کش ذخیره میکند و آدرس IP را از رکورد میخواند. سپس این اطلاعات را به مرورگر منتقل میکند. در ادامه مرورگر یک اتصال به وب سرور ایجاد کرده و شروع به دریافت اطلاعات وب سایت میکند. به این ترتیب این فرایند به پایان میرسد.
DNS میتواند تأثیر قابل توجهی بر سرعت اینترنت داشته باشد. هنگامی که شما نام دامنهای مانند www.google.com را در مرورگر خود تایپ میکنید، مرورگر شما ابتدا درخواستی به DNS سرور محلی خود ارسال میکند. DNS سرور محلی شما درخواست را به یک DNS سرور ریشه ارسال میکند. DNS سرور ریشه درخواست را به یک DNS سرور سطح بالا ارسال میکند. DNS سرور سطح بالا درخواست را به یک DNS سرور اختصاصی برای دامنه www.google.com ارسال میکند. DNS سرور اختصاصی آدرس IP دامنه www.google.com را به DNS سرور سطح بالا ارسال میکند. DNS سرور سطح بالا آدرس IP را به DNS سرور ریشه ارسال میکند. DNS سرور ریشه آدرس IP را به DNS سرور محلی شما ارسال میکند. DNS سرور محلی آدرس IP را به مرورگر شما ارسال میکند. مرورگر شما سپس از آدرس IP برای برقراری ارتباط با سرور وب www.google.com استفاده میکند.
هرچه زمان لازم برای انجام این فرآیند بیشتر باشد، سرعت دسترسی شما به وب سایتها و سایر سرویسهای وب کندتر خواهد بود. بنابراین، DNS سرورهایی که سریعتر پاسخ میدهند، میتوانند سرعت اینترنت شما را بهبود بخشند.
عوامل مختلفی میتوانند بر سرعت پاسخ DNS سرور تأثیر بگذارند، از جمله:
شما میتوانید با استفاده از DNS سرورهای عمومی یا خصوصی، سرعت پاسخ DNS سرور را بهبود بخشید. DNS سرورهای عمومی توسط ارائهدهندگان خدمات اینترنت (ISP) ارائه میشوند. DNS سرورهای خصوصی توسط سازمانها یا افراد برای کنترل بهتر DNS استفاده میشوند.