DNS

DNS چیست؟زمان مطالعه 7 دقیقه

DNS نوعی مترجم است که زبان ورودی انسان مانند (pishrocloud.com) را به رشته‌ای از اعداد تبدیل می‌کند. در واقع DNS مانند یک دفترچه تلفن است که در آن هر نام به یک شماره متصل است و برای پیدا کردن شماره تنها لازم است نام شخص را بدانید.

Domain Name Systems، یا به اختصار DNS برای ارتباط میان زبان انسان و مرورگر طراحی شده است. همانطور که می‌دانید، زبان ماشین زبان اعداد است و تمام حروف و ورودی‌هایی که به آن داده می‌شود، در نهایت برای قابل فهم شدن توسط ماشین، باید به زبان صفر و یک تبدیل شود؛ در واقع DNS در یک لایه بالاتر، مانند Assembler سیستم‌های مورد استفاده توسط ما، که زبان انسان را به زبان ماشین (صفر و یک) تبدیل می‌کنند، زبان ورودی انسان را تحت فرمت خاصی به سلسله‌ای از اعداد تبدیل می‌کند، تا برای مرورگر‌ها قابل فهم شود. DNS وظیفه‌ی تبدیل Domain ورودی شما به IP اختصاص داده شده به همان Domain را دارد. در واقع DNS، هر Domain را به یک IP اختصاصی که هیچ نمونه‌ی دیگری ندارد، لینک کرده است و در هر زمانی که نیاز باشد این Domain name را به یک IP تبدیل می‌کند و سپس شما به Domain مورد نظر توسط IP اختصاصی آن لینک خواهید شد.

تاریخچه‌ی به وجود آمدن DNS

در حدود سی سال قبل که اینترنت و دامنه ی IPهای موجود در آن بسیار محدود‌تر بود برای دستیابی به یک سایت باید IP آن را می‌دانستید. این به آن دلیل بود که در آن زمان تنها راه ارتباط با کامپیوترها زبان اعداد بود. این IPها طولانی بودند و با توجه به گسترش روزانه‌ی آنها و محدودیت ذهن انسان در به خاطر سپردن این اعداد باید راهی برای حل این مشکل پیدا می‌شد؛ راه حلی که می‌بایست سریع و قابل گسترش می‌بود.

در اوایل دهه‌ی ۱۹۸۰ فردی به نام پاول ماکپتریس سیستمی طراحی کرد که هر IP را مستقیما به یک Domain name متصل می‌کرد. و اینگونه بود که DNS متولد شد. امروزه سیستمی مشابه در پشت سیستم مدرن خدمت ارائه می‌کند.

DNS چگونه کارمی‌کند؟

DNS در چند مرحله و در مواردی با طی مسافت های طولانی پاسخ مورد نظر شما را بازمی‌گرداند. این مراحل را بررسی می‌کنیم:

۱-     درخواست داده

زمانی که شما یک Domain Name را در صفحه‌ی مرورگر خود وارد می‌کنید در اولین مرحله، چک می‌شود که آیا این آدرس در Local Cache شما وجود دارد یا خیر؛ در صورتی که در گذشته این آدرس را سرچ کرده باشید و به آن دست‌یافته باشید، از همین محل به دست خواهد آمد و پاسخ بازگردانده می‌شود. در غیر اینصورت یک DNS query برای یافتن پاسخ مورد نظر شما زده می‌شود.

۲-     DNS سرورهای بازگشتی

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

۳-     سرورهای Root Name

جست‌و‌جوی شما می‌تواند مسیری طولانی را طی کند. قدم بعدیName server ها هستند، آنها پاسخ را به شما نمی‌دهند اما به شما می‌گویند که کجا می‌توانید پاسخ مورد نظر خود را بیابید.

۴-     Top Level Domain(TLD) name servers

name serverها آدرس Domain شما را از راست به چپ میخوانند و شما را به TLD مورد نظر(مانند .com) هدایت می‌کنند. پس از آن، TLD شما را به جایی هدایت می‌کنند که پاسخ درست در آنجا قرار دارد.

مسیر پاسخ به وسیله DNS

در آخر پس از یافتن داده و بازگرداندن آن به Provider server و پس از آن سیستم شما، این دو Recordها را در Cache خود برای مدت معینی نگهداری می‌کنند، تا برای درخواست‌های مشابه بعدی، نیاز نباشد تا تمام این مسیر باری دیگر طی شود.

در حالی که به نظر می‌رسد این پروسه بسیار طولانی است، اما در واقع چند ثانیه به طول خواهد انجامید که می‌تواند با استفاده از داده‌های ذخیره شده محلی در لایه سیستم و سرور، سرعت دریافت پاسخ را افزایش داده شود.

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

پاسخ دادن:

ایمیل شما نمایش داده نمی‌شود.