آشنایی با Domain Name System

  • نویسنده: مهسا فرمانی
  • تاریخ انتشار: چهارشنبه ، ۳۱ خرداد ماه ۹۶
  • تعداد بازدید: 1639
  • تعداد نظرها: 2
  • دسته بندی: زیرساخت

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

برای آشنایی با مفهوم و کارکرد این سیستم لازم است تا در ابتدا با چند مفهوم اولیه آشنا شویم:

انسان ها زبان کلمات و کامپیوترها زبان اعداد را ترجیح می دهند. اینترنت به نحوی راه اندازی شد تا هر دو سمت ارتباط (کامپیوتر/انسان) به راحتی با آن کار کنند. این بدین معنی است که هر سایت دارای دو نام/آدرس می باشد.

  • یکی از آن ها نام دامنه است. نام های دامنه (Domain Names)، روشی برای سازماندهی و درک وب هستند. بدون وجود نام های دامنه، URL ها تنها مجموعه ای از اعداد یا آدرس های IP هستند که حفظ و یادآوری آن چندان موردعلاقه انسان­ها نیست. نام دامنه[1] برای ما آدرسی را فراهم می آورد که برای یادآوری آسان تر است. (مثلا com).
  • آدرس دیگر، رشته­ای از اعداد (موردعلاقه کامپیوترها) که با نام Internet Protocol (IP) Address شناخته می شود.

ثبت "نام دامنه"[2]:

نام دامنه پس از دریافت درخواست از یک فرد یا سازمان و از طریق یک شرکت دارای حق ثبت و برای مدتی خاص (یک سال، سه سال، ...) ثبت می گردد. طی تماس فرد/سازمان متقاضی با شرکت­های دارای مجوز ثبت و پس از اطمینان از آزاد بودن نام دامنه (عدم مالکیت آن توسط کشور، سازمان یا فرد دیگر) مراحل ثبت دامنه انجام می پذیرد. با پایان مدت ثبت، در صورت تمایل امکان تمدید دامنه وجود دارد، در غیر این صورت دامنه منقضی می گردد. تا این مرحله نام/آدرس دارای مفهوم برای انسان ثبت گردید اما برای سمت دیگر ارتباط (کامپیوتر) هنوز آدرسی تعریف نشده است.

مراحل تعریف آدرس قابل درک برای کامپیوتر (IP Address) خارج از این بحث است. اما با فرض این که هدف راه اندازی یک وب سایت باشد پس از راه اندازی وب سرور موردنیاز (بر روی سرور اختصاصی و یا از طریق هاستینگ) یک IP معتبر به این سرویس تخصیص داده می شود.

تا این مرحله هر دو نام/آدرس به سایت ما تخصیص داده شده است. حالا لازم است تا رکورد مربوطه (برقراری ارتباط متناظر بین نام و IP) را در DNS بیافزاییم.

یک Domain Name System (DNS)، در واقع پایگاه داده ای است که تمامی رکوردهای مربوط به یک نام دامنه و IP های مربوطه را در خود ذخیره می کند. لذا با استفاده از این سیستم آدرس قابل درک برای انسان به آدرسی که توسط کامپیوترها قابل درک است تبدیل می شود. فرایند تبدیل نام دامنه به IP آدرس توسط DNS را DNS resolution می­نامند.

قبل از توضیحات بیشتر، اجازه دهید تا یک بار اجزای این آدرس www.ashnasecure.com را با هم بررسی نماییم:

نحوه کارکرد Domain Name System

همان طور که اشاره شد هر تجهیز یا ابزار متصل به اینترنت (لپتاپ، تبلت، موبایل، وب سایت و ...) دارای یک آدرس اینترنتی IP Address است که براساس استانداردی خاص از ترکیب اعداد پدید آمده است. اما برای کاربران اینترنت، حفظ کردن نام یک سایت به مراتب ساده تر از حفظ کردن رشته ای از اعداد است.

در ادامه نحوه کارکرد DNS را مطابق با تصویر زیر با هم بررسی می­ کنیم:

  • قدم اول - ارسال پرسش

فرض کنید کاربر آدرس www.ashnasecure.com را برای اولین بار در مرورگر خود وارد می کند. مرورگر یک Query (پرسش) را مطرح می کند:

 “ IP آدرس www.ashnasecure.com چیست؟”

پاسخگویی به این پرسش، برعهده­ی Local DNS Server است که در ادامه با نام Recursive resolver از آن نام می بریم. Recursive resolver می­تواند تامین کننده اینترنت (ISP)، اپراتور خط موبایل و یا یک سرور که بدین منظور در شبکه داخلی کاربر راه­اندازی شده است، باشد. (مرحله اول در تصویر)

  • قدم دوم - پرسش از Root Server

با فرض این که Recursive resolver جواب پرسش را نداند (یعنی قبلا به چنین پرسشی جواب نداده باشد و پاسخ را ذخیره نکرده باشد)، اما می داند که برای یافتن پاسخ کاربر باید از کدام DNS سرورها سوال بپرسد. اولین نوع DNS server ها که Recursive resolver با آن ارتباط برقرار می کند Root Server نامیده می شود. Root Server ها دارای اطلاعات DNS های مرتبط با Top Level Domain هایی همچون .com هستند. بدین منظور برای پاسخ به query کاربر، Recursive resolver از Root server درباره DNS هایی که اطلاعات مربوط به .com را دارند سوال می پرسد (مرحله دوم در تصویر) و IP آن­ها را به دست می آورد (مرحله سوم در تصویر).

  • قدم سوم - پرسش از The Top-Level Domain Name Server

هر TLD خود دارای مجموعه ای از DNS سرورها می باشد که اطلاعات مربوط به Second Level Domain ها را در خود ذخیره دارند. لذا با در نظر گرفتن Second Level Domain لازم است تا پیغامی برای DNS سرورهای Top Level Domain (TLD) ارسال شود. (مرحله چهارم در تصویر)

در پایان این مرحلهIP Address  مربوط به DNS دامنه ی موردنظر (ashnasecure.com) به عنوان پاسخ برای Recursive resolver ارسال می شود. (مرحله پنجم در تصویر)

  • قدم چهارم - پرسش از سرور DNS دامنه ی موردنظر

در این مرحله Recursive resolver پرسش خود را از DNS سرور دامنه ی موردنظر می پرسد. (مرحله ششم در تصویر)

هر دامنه دارای یک یا تعدادی DNS سرور معتبر است که دارای اطلاعات کامل از آن دامنه ی خاص هستند.

به عنوان مثال، نمونه هایی از رکوردهای ثبت شده در DNS سرور دامنه ی ashnasecure.com ، چنین هستند: (مقادیر غیرواقعی)

در این مرحله Recursive Resolver ، رکورد مربوط به www را از سرور DNS فراخوانی و این رکورد را در حافظه داخلی خود ذخیره می کند تا اگر مجددا نیاز داشت بدون تکرار این مراحل، تنها مقدار IP را ارسال نماید. (مرحله هفتم در تصویر)

همچنین این رکورد را برای کامپیوتر کاربر ارسال می کند. (مرحله هشتم در تصویر)

  • قدم پنجم - نمایش سایت

در آخرین مرحله کامپیوترIP  را به مرورگر می فرستد. حالا مرورگر اقدام به ارسال درخواست خود به وب سایت کرده، یک ارتباط را با سایت www.ashnasecure.com باز می کند و محتویات سایت برای کاربر نمایش داده می شود.

نکته قابل توجه این است که تمامی این مراحل پیچیده از دید کاربر مخفی است و در مدت زمانی کمتر از نیم ثانیه اتفاق می افتد.

 

[1] Domain name

[2] Domain registration

برچسب ها:
DNS Domain Name System
نویسنده: مهسا فرمانی دسته بندی: زیرساخت
نظرات کاربران

امیر خوانی

چهارشنبه ، ۳۱ خرداد ماه ۹۶

با تشکر. در صورت از دسترس خارج شدن این سرویس آیامی توان از طریق آی پی به وب سایت مربوطه متصل شد یا خیر؟

مهسا فرمانی

یک‌شنبه ، ۲۵ تیر ماه ۹۶

با سلام.
پاسخ این سوال هم بله و هم خیر است.
1- خیر: در صورتی که وب سایت مدنظر شما در کنار تعداد دیگری سایت در حال سرویس دهی با یک IP مشترک باشد، برای اتصال به وب سایت مدنظر تنها اطلاع از IP کفایت نخواهد کرد. هم چنین ممکن است از طریق ابزارهای امنیتی در دسترسی به وب سایت با IP، محدودیت ایجاد شده باشد.
2-بله: در صورتی که وب سایت مدنظرتان دارای IP اختصاصی باشد و یا در حالت استفاده از IP مشترک، در تنظیمات وب سرور به عنوان وب سایت پیشفرض تعریف شده باشد. البته در این حالت نیز در صورتی که محدودیت دسترسی از طریق IP ایجاد نگردیده باشد، اتصال به سایت از طریق IP امکان پذیر است.
---
راه حل پیشنهادی:
در صورت از کار افتادن این سرویس، به عنوان راهکار موقت می توانید رکورد وب سایت مدنظر را بر روی DNS داخلی سیستم خودتان تنظیم نمایید.