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

آیا تا به حال در مورد اصطلاح "DNS" هنگام استفاده از اینترنت(Internet) شنیده اید ؟ DNS مخفف Domain Name System است. قبل از اینکه ادامه دهیم و در مورد اینکه DNS چیست و جستجوی (DNS)DNS چگونه کار می کند صحبت کنیم، اجازه دهید بفهمیم D در DNS مخفف چیست.

دامنه چیست

می دانید که فرمت یک URL وب http : (URL)http:s//www.domainname.tld است. در این مثال، TLD (tld) به دامنه سطح بالا اشاره دارد. در روزهای اولیه وب، TLD یکی از موارد زیر بود:

  1. .com (اشاره به سازمان های تجاری)
  2. .org (به سازمان های غیر انتفاعی اشاره دارد)
  3. .net (باز هم وب سایت های تجاری)
  4. .gov (وب سایت های دولتی)
  5. .edu (آموزشی)
  6. .mil ( مقاصد نظامی ) و
  7. .int (بین المللی)

با افزایش خریداران وب سایت ها، انواع دامنه های مربوط به مکان ها معرفی شدند. برای مثال، .asia ، .us، .in  و .ca به ترتیب به آسیا(Asia) ، ایالات متحده، هند(India)  و کانادا(Canada) اشاره دارند. به زودی(Soon) ، چندین نوع دیگر از TLD وارد شد که نوع وب سایت را به ما می گوید. به عنوان مثال، .me به یک وب سایت شخصی اشاره دارد در حالی که .tv به یک وب سایت پخش ویدیو اشاره دارد. افزایش مقوله‌های TLD امکان دسته‌بندی وب‌سایت‌ها را بر اساس نوع آن‌ها در حالی که نیازهای روزافزون مصرف‌کنندگان را برآورده می‌کند، ممکن کرد.

در مثال بالا از URL (https://www.domainname.tld)، https به نحوه انتقال داده ها اشاره دارد و www می گوید که مربوط به شبکه جهانی وب(World Wide Web) است. هر چیزی بین www و TLD نام دامنه یک وب سایت است.

پیش از این، مردم برای دسترسی به یک وب سایت مجبور بودند www را تایپ کنند. از آنجایی که ارائه دهندگان خدمات میزبانی اجازه هدایت مجدد www.domainname.tld به domainname.tld را می دهند ، می توانید هنگام وارد کردن URL در مرورگر ، از تایپ www صرفنظر کنید. (www)نمونه ای از نام دامنه "thewindowsclub" است. URL برای دسترسی به دامنه "thewindowsclub" https://www.thewindowsclub.com یا http://thewindowsclub.com است. در اینجا، " thewindowsclub " بخشی از TLD .com است. سپس، می تواند زیر دامنه ها وجود داشته باشد. در مورد www.news.thewindowsclub.com، " اخبار(news) " زیر دامنه " thewindowsclub " است.

هنگام خرید دامنه، نامی را خریداری می کنید که با TLD(TLDs) های مختلف مطابقت دارد. می توانید .com ، .net ، .us یا سایر TLD ها را انتخاب کنید -(TLDs –) به شرطی که قبلاً توسط شخص دیگری گرفته نشده باشد. صرف(Simply) خرید یک وب سایت کمکی نمی کند زیرا مردم تا زمانی که آدرسی نداشته باشد نمی توانند به آن دسترسی پیدا کنند. برای هر دامنه ای که خریداری می کنید، می توانید هر تعداد زیر دامنه ایجاد کنید و از آن برای وب سایت ها و اهداف دیگر استفاده کنید. برای هر دامنه و زیر دامنه ای که ایجاد می کنید، باید آدرس سرورهایی که حاوی محتوای وب سایت شما هستند را مشخص کنید. اگر دامنه یا زیر دامنه به دستگاهی (مثلاً چاپگر شبکه) اشاره دارد، باید آدرس آن دستگاه را مشخص کنید.

همه دامنه ها و زیر دامنه های موجود در اینترنت(Internet) دارای یک آدرس پیوست شده اند. ما آنها را آدرس IP می نامیم: آدرس پروتکل اینترنت(Internet Protocol) یا به عبارت دیگر، آدرسی که با اینترنت(Internet) کار می کند . فقط در صورتی می توانید به یک دامنه/زیر دامنه دسترسی داشته باشید که آدرس IP سرورهای حاوی محتوای آن را بدانید.

DNS چیست؟

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

Domain Name System یا همان طور که عموماً DNS شناخته می شود، یک پایگاه داده توزیع شده است که شامل نگاشت نام دامنه به آدرس IP آنها(Domain Name System, or DNS as it is popularly known, is a distributed database that contains the mapping of domain names to their IP addresses) است.

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

یک سرویس DNS(DNS Service) به شما در حل نام دامنه هایی که در مرورگر وب خود وارد می کنید کمک می کند. همچنین در هنگام ارسال ایمیل یا زمانی که روی پیوندهای فعال کلیک می کنید به حل آدرس ها کمک می کند. به طور کلی، ارائه دهنده خدمات اینترنت(Internet Service Provider) شما یک سرویس DNS(DNS Service) به شما ارائه می دهد . به غیر از ISP شما، شرکت هایی وجود دارند که (ISP)خدمات (Services)نام دامنه(Domain Name) عمومی را ارائه می دهند . نمونه هایی از این شرکت ها عبارتند از Google , Comodo , و OpenDNS . هنگامی که روی یک پیوند کلیک می کنید یا یک URL را در مرورگر وب خود وارد می کنید، با سرویس DNS(DNS Service) برای حل DNS مربوطه تماس گرفته می شود.(DNS). وظیفه سرویس DNS اسکن پایگاه داده سیستم نام دامنه(Domain Name System) و ارائه آدرس IP میزبانی که می خواهید به آن متصل شوید، می باشد.

نام های دامنه و زیر دامنه ها را می توان نام مستعار(aliases) نامید . سرورهایی که یک پایگاه داده حاوی اطلاعات مربوط به آدرس نام های مستعار مختلف را در اختیار دارند، سرورهای نام(Name Servers) نامیده می شوند . دو نوع سرور در سیستم نام دامنه(Domain Name System) فعال هستند. اولین نوع سرورهای ریشه(Root Servers) هستند - اینها اطلاعات مربوط به دامنه های سطح بالا(Top Level Domains) را نگه می دارند ( TLD : .com، .net و .org، و غیره). انواع دیگر شامل آدرس سرورهایی هستند که میزبان دامنه ها و زیر دامنه های شما هستند.

مثال 1:(Example 1:) در مورد abc.xyz.com ، سرورهای ریشه(Root Servers) اطلاعاتی در مورد اینکه xyz یک .com است نگهداری می کند. برخی دیگر از سرورهای(Server) نام حاوی ورودی های پایگاه داده هستند که آدرس xyz.com را نشان می دهد . از آنجایی که شما نیز میزبان abc.xyz.com هستید(abc.xyz.com) ، آدرس آن می تواند در همان سرور نامی(Name) که آدرس xyz.com را در اختیار دارد یا در یک سرور(Server) نام دیگر باشد. اگر یک زیر دامنه دیگر به abc.xyz.com اضافه کنید(abc.xyz.com)، بسته به جایی که شما آن را میزبانی می کنید، ممکن است آدرس آن مجدداً در همان یا در یک سرور نام متفاوت باشد. رابطه بین موارد فوق را می توان به صورت زیر ایجاد کرد:

xyz com abc xyz.com qwe  xyz.com qwe abc.xyz.com

برای ایجاد آدرس qwe ، سرویس سیستم نام دامنه(Domain Name System Service) باید موارد زیر را حل کند:

این مورد زمانی است که سرویس سیستم نام دامنه(Domain Name System Service) از هیچ کش استفاده نمی کند. کمی بعد در این مقاله در مورد حافظه پنهان صحبت خواهیم کرد. موارد بالا نشان می دهد که برای حل کردن DNS qwe.abc.xyz.com (DNS)،(qwe.abc.xyz.com) سیستم DNS باید پایگاه داده (DNS)DNS را چهار بار اسکن کند. با توجه به اینکه آدرس‌های بخش‌های مختلف URL می‌توانند در سرورهای(Servers) نام مختلف باشند، این امر پیچیده می‌شود . اما با توجه به سرعت اینترنت(Internet) ، می توانید دانلود صفحه را در چند میلی ثانیه و در بدترین حالت چند ثانیه مشاهده کنید.

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

در حال حاضر، می دانید که سرورهای مختلفی میزبان پایگاه داده هستند که حاوی آدرس IP دامنه های مختلف و زیر دامنه های آنها هستند. همچنین می دانید که سرورهای ریشه(Root Servers) ای وجود دارند که آدرس IP سرورهای میزبان دامنه های سطح بالا(Top Level Domains) را در خود نگه می دارند . این سرورهای ریشه(Root Servers) به دسترسی به سرورهای حاوی پایگاه داده که آدرس IP نام دامنه اصلی را نگه می دارند کمک می کند. اگر دامنه‌های فرعی وجود داشته باشد، آدرس آنها می‌تواند روی همان سرورهای نام دامنه اصلی یا در سرور دیگری باشد. همه این سرورها برای یافتن آدرس IP URL(URL) دقیقی که باید استفاده کنید در دسترس هستند. فرآیند پیدا کردن آدرس IP هر URL در اینترنت(Internet) به عنوان DNS شناخته می شود(DNS)جستجو. برای اطلاع از نحوه عملکرد DNS Lookup ، مثال زیر را در نظر بگیرید.

مثال 2:(Example 2:) شبکه ای از ده کامپیوتر را در نظر بگیرید. هر کامپیوتر آدرس مخصوص به خود را دارد تا بسته های داده ای که در شبکه حرکت می کنند بدانند کجا باید بروند. یازدهمین رایانه ای وجود دارد که میزبان پایگاه داده ای است که شامل نام مستعار هر یک از این ده رایانه و آدرس های IP آنهاست. در حالی که کاربران رایانه می توانند با استفاده از نام خود به رایانه ها مراجعه کنند، بسته های داده به آدرس های IP رایانه ها نیاز دارند تا بتوانند به گیرنده مورد نظر برسند. اگر کامپیوتر A نیاز به استفاده از چاپگر متصل به کامپیوتر B داشته باشد، A پایگاه داده را در کامپیوتر یازدهم بررسی می کند تا آدرس IP B را بداند و سپس آدرس چاپگر متصل به B را پیدا کند. فقط پس از بدست آوردن آدرس چاپگر، A دستور print را به چاپگر متصل به B هدایت می کند.

در این مورد، تکرارهای زیر اتفاق می افتد:

A مخاطبین Computer11
A مخاطبین B
چاپگر مخاطبین متصل به B

روش مشابهی برای جستجوی رکوردهای DNS استفاده می شود. (DNS)به عنوان مثال، هنگامی که روی http://thewindowsclub.com کلیک می کنید، روتر شما برای رزولوشن DNS با (DNS)سرویس DNS پیش فرض شما تماس می گیرد. (DNS Service)سرویس DNS با سرورهای ریشه(Root Servers) تماس می گیرد و آدرس IP سرور حاوی سوابق .com را می خواهد. (.com)این آدرس به سرویس DNS شما بازگردانده می شود. سرویس DNS دوباره به Name Server حاوی آدرس های دامنه های .com می رسد و از آن آدرس http://thewindowsclub.com را می خواهد. پس از به دست آوردن آدرس IP سرورهایی که میزبان thewindowsclub.com هستند، DNS شما(DNS)سرویس آدرس IP را به رایانه شما برمی گرداند و سپس مرورگر شما را برای دانلود صفحه وب اصلی فعال می کند. این بدان معناست که سرویس DNS شما حداقل دو درخواست برای دریافت آدرس IP یک نام دامنه ساده ارسال می کند.

در زیر تصویری وجود دارد که نحوه عملکرد جستجوی DNS را توضیح می دهد:(Following is an image that explains how DNS lookup works:)

در مورد بالا، اگر به دنبال https://news.thewindowsclub.com بودید، سرویس DNS شما باید برای دانستن آدرس IP خود یک درخواست اضافی اجرا می کرد.

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

برخی از سیستم‌عامل‌ها نیز حاوی یک نسخه کش محلی از آدرس‌هایی هستند که معمولاً در رایانه خود استفاده می‌کنید. این نیز به صرفه جویی در زمان در هنگام استفاده از اینترنت(Internet) کمک می کند . ما در مورد کش های DNS در مقاله ای دیگر در زمان بعدی صحبت خواهیم کرد.

لطفاً اگر هنوز در مورد نحوه عملکرد جستجوی DNS شک دارید، به ما اطلاع دهید.(Please let us know if you still have any doubts about how DNS lookup works.)



About the author

من یک مهندس نرم افزار با بیش از 10 سال تجربه در ساخت و نگهداری از Apple Mac، دستگاه های iOS و مرورگرهای Google Chrome هستم. تجربه من شامل توسعه، نگهداری و بهره برداری از محصولات نرم افزاری از ابتدا یا مشارکت در پروژه های منبع باز است. من همچنین این فرصت را داشته ام که روی پروژه های سخت افزاری متنوعی کار کنم - از تعمیر صفحه نمایش شکسته در بیمارستان ها تا طراحی و اجرای ویژگی های جدید برای آیفون. در اوقات فراغت از انجام بازی های ویدیویی مورد علاقه، خواندن کتاب، پختن شام با خانواده یا گذراندن وقت با دوستان لذت می برم.



Related posts