DNS یا همان سامانه نام دامنه، سیستمی برای ثبت و ذخیره نام دامنه وبسایتها است. این سامانه همچون یک دفترچه تلفن بزرگ و قدرتمند در دنیای وب است که به کاربران در یافتن صفحات وب کمک میکند. به عبارت سادهتر DNS آدرس اسمی سایتها را از کاربر دریافت نموده و سپس آدرس IP آنها برای مرورگر سیستم کاربر ارسال میکند. سپس مرورگر به صفحه سایت مورد نظر کاربر دسترسی پیدا کرده و آن را به نمایش میگذارد.
در این مقاله از رادار جی پی اس تصمیم داریم در رابطه با سامانه DNS و نحوه عملکرد آن در یافتن آدرس سایتها به صحبت بنشینیم.
تعریف آیپی (IP)
پیش از شروع صحبت درباره DNS بهتر است با عبارت آیپی آشنا شویم. IP در واقع آدرس منحصر به فرد هر یک از دستگاههای فعال در شبکه وب است. در واقع هر دستگاه و وب سایتی دارای یک آدرس آی پی مختص به خود است که به کمک آن میتوان دستگاه یا صفحه وب مورد نظر را پیدا نمود. این آدرسها به صورت مجموعهای چهار جملهای از اعداد بیان میشوند.
DNS یا سامانه نام دامنه چیست؟
همانطور که گفتیم هر وب سایتی که در بستر اینترنت وجود دارد، دارای یک آدرس IP است. استفاده از اعداد در آدرسهای آی پی موجب سختی کار برای کاربران وب خواهد شد. زیرا به خاطر سپردن رشتههای متعدد اعداد معمولا برای انسانها دشوار است. از این رو نام دامنه برای آدرسدهی به سایتها مورد استفاده قرار گرفت. نام دامنه خود نیز از چند بخش تشکیل شده است. این بخشها اغلب شامل نام (ترکیبی از حروف و اعداد) و پسوندهای مختلف است.
هر نام دامنه منحصرا به یک آدرس IP اختصاص داشته و برای استفاده از آن باید به صورت رسمی ثبت شود. سپس تمام اطلاعات مربوط به نامهای دامنه و آی پی مختص به آنها در سامانهای عظیم ثبت و ذخیره میشود. این سامانه را امروزه با نام DNS برگرفته از عبارت Domain Name System معرفی میکنند.
DNS چه وظیفهای در فضای وب دارد؟
همانطور که گفتیم DNS شبیه به یک دفترچه تلفن عظیم است که آدرس تمام وبسایتهای فعال در بستر وب را میشناسد. این دفترچه تلفن نام دامنه را از کاربر دریافت نموده و سپس آدرس IP مختص به آن نام را برای وی ارسال میکند. به این ترتیب کاربر میتواند در فضای اینترنت جستجو نموده و از صفحات مختلف دیدن نماید. به طور کلی وظیفه اصلی سامانه نام دامنه را میتوان نگهداری آدرسهای IP هر نام دامنه و آدرسدهی برای مرورگر کاربران دانست.
آشنایی با چند اصطلاح کاربردی در رابطه با DNS
تا اینجا با DNS و کاربرد آن خواندیم اما برای شناخت بیشتر درباره سامانه نام دامنه و نحوه عملکرد آن بهتر است با چند اصطلاح کاربردی در این زمینه آشنا شویم:
1- DNS Server
سامانه نام دامنه برای حفظ و ذخیره اطلاعات مربوطه به نام دامین و آدرس IP آن نیاز به یک دیتابیس بزرگ به نام DNS Server دارد. این دیتابیس شامل مجموعهای از دامینها و IP های مربوط به آنها میباشد.
امروزه شرکتهای هاستینگ و سازمانهای بزرگ دارای سرورهای متعدد DNS هستند. این DNS Server ها در تمام جهان با یکدیگر در ارتباط میباشند. از این رو هنگام ثبت نام دامنه برای یک سایت، تنها کافی است شرکت هاستینگ مربوطه، نام دامنه سایت را در سرور دی ان اس خود ثبت کند. پس از آن در زمان کوتاهی (حداکثر 48 ساعت) تمام DNS Server های دنیا نام سایت مورد نظر و آدرس آی پی آن را میشناسند.
2- Cloud DNS
گاهی اوقات با مشکلات قطعی دی ان اس و یا سرعت پایین عملکرد آن مواجه هستیم. Cloud DNS راهحلی است که مهندسان در سالهای اخیر برای مواجه با چنین مسائلی طراحی کردهاند. DNS ابری میتواند محدودیتهای در دسترس بودن، آسیبپذیریهای امنیتی و حتی محدودیتهای عملکردی را تا حد زیادی کاهش دهد.
3- DNS error
گاهی ممکن است سرور DNS از کار بیفتد. در چنین شرایطی اگر شما یک URL را در آدرس بار مرورگرتان جستجو کنید، امکان برقراری ارتباط با Google را نخواهید داشت. در نتیجه کامپیوتر قادر به ارسال IP مرتبط با URL مورد نظر شما نبوده و با پیغام خطای DNS یا همان DNS error مواجه خواهید شد.
4- تغییر DNS
شرکتهای ارائهدهنده خدمات سرویس میزبانی وب و دامنه معمولا از DNSهای مشخصی استفاده میکنند. بنابراین اگر از دو شرکت متفاوت برای خدمات هاستیک و دامنه خود استفاده میکنید، بهتر است در قدم اول دی ان اس را بر اساس شرکت هاستیگ تغییر دهید. علاوه بر این توصیه میشود همیشه DNS های پیشفرض را تغییر دهید. این کار به دو دلیل مهم انجام میشود که عبارتند از:
- حفاظت از حریم خصوصی و پیشگیری از ردیابی فعالیتتان در بستر اینترنت
- برخورداری از سرعت بهتر در پاسخدهی سرور
تا چند سال گذشته گوگل یکی از معروفترین سرویسهای DNS جایگزین بود. به طوری که اگر کسی تمایل به استفاده از dnsهای پیشفرض نداشت به گوگل سوئیچ میکرد. اما امروزه تعداد زیادی DNS رایگان وجود دارد که خدمات و مزایای بیشتری نسبت به گوگل عرضه میکنند. به طور مثال این dnsها میتوانند از بارگذاری لینکهای مخرب پیشگیری نموده و مانع از آلوده شدن سیستم کاربران شوند.
مراحل کار DNS چگونه است؟
در ادامه مراحل کار DNS را به طور کامل شرح میدهیم:
1- درخواست اطلاعات
در قدم اول کاربر نام دامنه وب سایت مورد نظر را در مرورگر خود وارد میکند. سپس مرورگر حافظه Cache (نهان) خود را بررسی نموده تا از میان آخرین وبسایتهای بازدید شده، صفحه مورد نظر را بیابد. در صورت عدم موفقیت، یک جستجوی DNS برای یافتن پاسخ آغاز میشود. در این مرحله دی ان اس مانند یک واسطه عمل میکند.
2- پرسش از سرورهای DNS بازگشتی
اگر وب سایت مورد نظر در حافظه محلی (نهان) مرورگر پیدا نشود، جستجوی DNS بازگشتی اجرا خواهد شد. در این مرحله سرورهای پاسخدهنده حافظه کش خود را بررسی نموده و پاسخی برای مرورگر کاربر ارسال میکنند.
3- پرسش از سرورهای نام اصلی
در صورتی که باز هم وب سایت مورد نظر یافت نشود، جستجو در سرورهای نام اصلی آغاز خواهد شد. سرور نام (Name Server) به سوالات در رابطه با نام دامنه پساخ میدهد. البته این پاسخدهی از طریق این سرورها با هدایت به سمت سرورهای دارنده اطلاعات انجام میشود. زیرا خود سرورهای نام اطلاعات لازم را ندارند.
4- پرسش از سرورهای نام TLD
پس از انتقال به سرورهای نام TLD، ابتدا قسمت اول درخواست بررسی میشود. سپس از سمت راست دامنه به سمت چپ آن شروع به خواندن نموده و جستجو را آغاز میکنند. سرورهای نام پسوند دامنه سطح اول (TLD) مجموعهای از سرورهای نام مخصوص (مانند .Com، .org و us.) دارند که به سوال مرورگر پاسخ میدهند.
5- پرسش از سرورهای DNS معتبر
همانطور که گفتیم سرورهای TLD درخواست ما را بررسی نموده و به سرور مخصوص همان نام دامنه هدایت میکنند. این سرورها مسئول بررسی اطلاعات هر دامنه خاص بوده و آنها را در رکوردهای DNS ذخیره میکنند. در نتیجه سرورهای معتبر DNS سوابق مربوط به نام دامنه را برای وضوح دی ان اس نگهداری میکنند. این سوابق اغلب توسط مالک دامنه یا مدیر فنی شرکتها نگهداری میشوند.
6- بازیابی رکورد Record Retrieval
سرورهای نام پاسخ دهنده، یک رکورد مربوط به دامنه را از سرور نام معتبر پرسیده و پاسخ را در حافظه کش محلی ذخیره میکنند. در نتیجه اگر کاربر درخواست رکورد هاست این دامنه را داشته باشد، سرورهای نام بازگشتی پاسخ را خواهند داشت و فرآیند جستجو سریعتر انجام میشود. البته این رکوردها دارای TTL (معادل تاریخ انقضا) هستند. اگر در مدت زمان مشخص کسی درخواست برای دامنه مورد نظر را ارسال نکند، سرور نام رکورد مربوط به آن را پاک میکند.
7- دریافت پاسخ
در نهایت سرور بازگشتی رکورد مورد نظر را به مرورگر کاربر ارسال میکند. مرورگر نیز این رکورد را در حافظه کش ذخیره نموده و آدرس IP را از آن میخواند. در نتیجه صفحه برای کاربر به نمایش در میآید.
Zone File چیست؟
حال که با نحوه عملکرد DNS آشنا شدیم، بهتر به سراغ معرفی Zone File برویم.
سرورهای دی ان اس اغلب توسط ISP مدیریت میشوند. DNS Server هر یک از این ISPها از طریق DHCP و پس از آنلاین شدن کامپیوتر دریافت میشود. نحوه عملکرد در این سرورها جستجوی سلسله مراتبی است. یعنی در قدم اول، برای پیدا کردن آدرس IP مربوط به یک سایت، ابتدا بانک اطلاعاتی خود را بررسی میکنند. در صورت عدم یافتن اطلاعات مورد نظر به سراغ سرورهای DNS موجود در شبکه خواهند رفت. حال نکته اینجاست که هر بار به یک سرور دی ان اس مراجعه میشود، اطلاعات آن برای مدت محدودی در کش مرورگر ذخیره خواهد شد. این عمل به سبب سرعتدهی به درخواستهای کاربران برای یافتن URLهای تکراری است. محل ذخیره این اطلاعات همان Zone File است. هر Zone File حاوی رکوردهای مرجع (Resource Records) میباشد.
محل نگهداری Zone File کجاست؟
اطلاعات مربوطه به دامنه در فایل Zone روی سرور DNS نگهداری میشود. هر دامنه یا زیردامنه نیز دارای یک Zone File مخصوص است.
Zone File موظف است پیوند میان هر دامنه و زیر دامنه با آدرسهای IP مربوط به آن را ایجاد نماید. اغلب شرکتهای هاستینگ که خدمات خرید هاست و ثبت دامین را ارائه میکنند، برای این کار یک واسط تحت وب در اختیار کاربرانشان قرار میدهند.
مرورگر چگونه وب سایت درست را پیدا میکند؟
مرورگر برای پیدا کردن وب سایت مورد نظر کاربر، باید یک فرآیند سلسله مراتبی را طی کند. این فرآیند به جهت یافتن آدرس IP سایت مربوطه انجام میشود تا در نهایت به اطلاعات وب سایت دسترسی پیدا کند. این فرآیند کشف آدرس IP سایت توسط مرورگر به صورت زیر است:
- ابتدا باید URL سایت مورد نظر در address bar مرورگر تایپ شود.
- حال مرورگر در قدم اول به بررسی Cash خود میپردازد تا در صورت یافتن آدرس IP مربوط به وب سایت، آن را resolve کرده و سایت را نمایش دهد.
- در صورت عدم یافتن IP در حافظه نهان، مرورگر به سراغ بررسی فایلهای هاست و رکوردهای DNS میرود.
- اگر همچنان IP سایت پیدا نشود، مرورگر به سرور DNS پیشفرض رفته و دنبال resolve کردن سایت میباشد.
- اگر باز هم سایت resolve نشود، اینبار مرورگر در سرورهای سایر نقاط دنیا به دنبال آدرس IP خواهد بود.
- این مراحل به صورت سلسله مراتبی انجام میشود، تا مرورگر بتواند به اطلاعات سایت مورد نظر کاربر دسترسی پیدا کند. اما در صورتی که هیچ ردی از این سایت یافت نشود، در نهایت پیغام عدم resolve شدن برای کاربر به نمایش درمیآید.
صرف نظر کردن از رکوردهای DNS از طریق Host File
برای صرف نظر کردن از رکوردهای DNS از طریق Host File، باید تغییراتی در این فایل ایجاد کنید. هاست فایل در واقع فایلی در کامپیوتر شماست که همچون یک mini DNS server عمل میکند. با ایجاد تغییرات لازم در این فایل، مرورگر برای یافتن آدرس IP وب سایتها، ابتدا فایلهای هاست داخلی را بررسی میکند. سپس با نیافتن آدرس IP مورد نظر به سراغ سرورهای خارجی خواهد رفت.
صرف نظر کردن از رکوردهای DNS از طریق dns Local
با توجه به این که مرورگرها برای یافتن آدرس آی پی وب سایت، ابتدا local DNS server را بررسی میکنند، میتوانید رکوردهای مربوطه را در سرورهای dns داخلی کامپیوترتان تعریف نمایید. در نتیجه عمل resolve به صورت لوکال انجام خواهد شد.
مزایای DNS چیست؟
در ادامه برخی از مهمترین مزایای روی کار آمدن سرورهای DNS را بیان میکنیم:
- عدم نیاز به حفظ کردن آدرس IP وبسایتها و دسترسی به اطلاعات سایت تنها از طریق دانستن URL آنها
- ثبات در URLهای وب سایت ها (زیرا آدرس IP ممکن است تغییر کند، بنابراین میبایست علاوه بر حفظ کردن آنها، مرتب اطلاعاتمان را به روز میکردیم.)
- ارتقا سطح امنیت زیرساختها و دسترسی به بهروزرسانیهای ایمن و پویا
- امکان مشخص کردن عملکرد فنی دیتابیس توسط کاربر
- امکان تعریف مشخصات دقیق ساختار دادهها و مبادلات ارتباطی آن
معایب DNS چیست؟
با توجه به تمام مزیتها و فوایدی که DNS به همراه آورده است، مشکلات و معایبی نیز برای آن وجود دارد. بزرگترین ایراد در سیستم دی ان اس ، امکان کلاهبرداری از کاربران است. به این فرآیند DNS Attacks میگویند. در این حالت مهاجم آدرس IP واقعی وب سایت مورد نظر کاربر را با آی پی مدنظر خودش تعویض میکند. سپس کاربران بدون آن که متوجه شود، به آدرس مدنظر مهاجم هدایت خواهد شد. هدف از این حمله، معمولا کشف اطلاعات بانکی یا سایر دادههای مهم و حساس کاربران است.
امروزه بدافزارهایی وجود دارد که میتوانند فرآیند DNS Attacks را انجام دهند. در نتیجه شما با وارد کردن URL مورد نظرتان، به وبسایت هدف مهاجم وارد خواهید شد. گاهی نیز این بدافزارها، سرورهای دی ان اس را به سرقت برده و کاربران سایتهای شلوغ و پربازدید را به سایتهایی با تبلیغات فراوان منتقل میکنند. برای پیشگیری از بروز چنین مشکلاتی، توصیه میشود همواره از برنامههای آنتی ویروس معتبر و به روز استفاده کنید. همچنین از وارد کردن اطلاعات بانکی در سایتهای مشکوک پرهیز نمایید.
آیا DNS بر سرعت اینترنت تاثیر میگذارد؟
DNS در حالت کلی ارتباط مستقیمی با سرعت اینترنت ندارد. اما با توجه به ذخیره پاسخهای DNS به صورت محلی و در حافظه کش مرورگر میتوان دریافت که دامنههای خاص و پربازدید کاربر با سرعت بیشتری نسبت به دیگر وبسایتها بارگذاری خواهد شد. بنابراین دی ان اس تاحدودی بر سرعت نمایش یک صفحه وب در مرورگر کاربر تاثیر میگذارد.
چطور DNS را تغییر دهیم؟
اگر قصد تغییر تنظیمات DNS در ویندوز 10 را دارید، باید مطابق روال زیر عمل کنید:
- ابتدا از طریق تنظیمات (Settings) ویندوز، به بخش Network & Internet بروید.
- حال اتصال شبکه مورد نظرتات را انتخاب کنید.
- سپس بر روی گزینه IP Settings رفته و گزینه ویرایش (Edit) را کلیک کنید.
- در این مرحله با انتخاب گزینه Manual، امکان ویرایش دی ان اس را خواهید داشت.
برای سهولت بیشتر هنگام تغییر تنظیمات دی ان اس میتوانید از نرمافزارهایی مانند DNS Jumper بهره بگیرید.
بهترین DNSهای رایگان برای بازی کردن کداماند؟
در ادامه چند سرویس DNS رایگان برای تجربه بهتر بازی کردن معرفی میکنیم:
1- سرویس CloudFire
CloudFire امروزه یکی از سریعترین DNSهای موجود است که کاربران ایرانی امکان استفاده از آن را دارد. این سرویس سرعت اینترنت را بهبود داده و تا حدودی موجب افزایش سرعت ارتباطی کاربر با سرور بازی خواهد شد. برای استفاده از این سرویس باید از گزینههای زیر بهره بگیرید:
Preferred DNS Server: 1.1.11
Alternate DNS Server: 1.0.0.1
2- سرویس OpenDNS
OpenDNS یکی دیگر از دی ان اس سرورهای عمومی و رایگان است که توسط شرکت سیسکو ارائه میشود. این سرویس خدمات رایگان به کاربران هدیه داده و به صورت زیر قابل استفاده است:
Preferred DNS Server: 208.67.222.222
Alternate DNS Server: 208.67.220.220
3- سرویس Google DNS Servers
گوگل نیز یکی دیگر از ارائهدهندگان سرورهای دی ان اس رایگان است که آن را با نام Google DNS Servers میشناسیم. برای استفاده از این سرویس باید از گزینههای زیر استفاده نمایید.
Preferred DNS Server: 8.8.8.8
Alternate DNS Server: 8.8.4.4
سخن پایانی
در این مقاله به DNS و طرز کار آن آشنا شدیم. حال میدانیم این سیستم تا چه حد در راحتی کاربران برای دسترسی به وب سایت ها تاثیرگذار بوده و حتی برخی از سایتهای پربازدید را با سرعت بیشتری به کاربر نمایش میدهد.