هر کاربر اینترنت حتماً از سرویس‌های نام دامنه یا دامین نیم سرور یا DNS استفاده کرده است، اگرچه بسیاری چیزی در مورد آن نمی دانند. Domain Name Service یا DNS یکی از پروتکل‌های مورد استفاده در مجموعه استانداردهایی است که برای تبادل داده بین رایانه ها در فضای اینترنت و بسیاری از شبکه های خصوصی استفاده می‌شود و عموماً به عنوان پروتکل‌های TCP/IP شناخته می‌شوند.

به زبان ساده کار DNS تبدیل نام دامنه های آشنا -مثل google.com یا websamin.com!- به آدرس‌های IP است که رایانه ها برای تشخیص هم روی شبکه استفاده می‌کنند. رایانه ها و دیگر ابزارهای متصل به شبکه اینترنت از یک آدرس IP برای مسیردهی درخواست شما به وب‌سایتی که می‌خواهید به آن دست‌رس پیدا کنید استفاده می‌کنند. این کار مثل گرفتن شماره تلفن کسی است که می‌خواهید با او تماس بگیرید. اگر سرویس DNS وجود نداشت شما مجبور بودید یک دفترچه تماس داشته باشید که در آن برای هر دامنه ای که ممکن است بخواهید بازدید کنید یک آدرس IP در آن یادداشت کنید. در عوض شما به یک سرور نام دامنه متصل می‌شوید که این دفترچه تلفن از قبل در آن به شکل یک پایگاه داده عظیم نگه داری می‌شود و هر نام دامنه ای را به IPهایش منتسب می‌کند.

وقتی که به یک وب‌سایت متصل می‌شوید یا ایمیل می فرستید رایانه شما از یک سرور DNS برای پیدا کردن دامنه ای که می‌خواهید استفاده می‌کند. به این کار Name Resolution گفته می‌شود. اگر نام دامنه را درست وارد کرده باشید سرور DNS آدرس IP مربوط به آن دامنه را پیدا می‌کند و به رایانه شما بر می‌گرداند. شما می‌توانید مستقیم آدرس IP دامنه مورد نظرتان را وارد کنید و احتیاجی به DNS نداشته باشید اما این کار چند مشکل دارد: حفظ کردن یک مجموعه اعداد آسان نیست؛ ممکن است IP یک وب‌سایت تغییر کند؛ و برخی وب‌سایت‌ها بیش از یک آدرس IP دارند.

اما رایانه شما از کجا می‌فهمد باید از چه سرور DNSی استفاده کند؟ معمولاً وقتی شما به شبکه وصل می‌شوید مودم یا روتری که به رایانه شما یک آدرس IP اختصاص می‌دهد مجموعه ای از اطلاعات مهم پیکره بندی شبکه نیز به رایانه تان می‌فرستد. یکی از این اطلاعات یک یا چند سرور DNS است که رایانه تان باید برای ترجمه نام دامنه ها به آدزس‌های IP استفاده کند.

منبع : سایت طاها دومین

IPها

گفتیم که کار سرور نام دامنه یا سرور DNS تبدیل یک نام دامنه به یک آدرس IP است. به نظر که کار راحتی می‌رسد٬ حتا با این‌که:

  • میلیاردها آدرس IP در حال استفاده اند و بیش‌تر رایانه ها ترجیح می‌دهند از اسم‌هایی استفاده کنند که برای آدمی‌زاد قابل حفظ کردن باشد. در نتیجه احتیاج به ترجمه به IP دارند.
  • در هر لحظه سرورهای DNS در حال پردازش میلیاردها درخواست روی اینترنتند.
  • میلیون‌ها نفر هر روز نام‌های دامنه جدید ایجاد می‌کنند یا نام دامنه ها و IPهایشان را تغییر می‌دهند.

برای انجام این همه کار ساده سرورهای DNS به کارآمدی شبکه و پروتکل‌های اینترنت وابسته اند. بخشی از کارآمدی سیستم IP به خاطر این است که هر ماشین روی شبکه یک IP منحصر به فرد دارد. این مطلب در هر دو استاندارد IPv4 و IPv6 صادق است. از آن‌جا که استاندارد ورژن ۶ هنوز کارآیی زیادی نیافته است فقط در مورد IP ورژن ۴ صحبت خواهیم کرد. این استانداردها و اختصاص جهانی IP را IANA مدیریت می‌کند.

یک آدرس IP در استاندارد ورژن ۴ شامل چهار عدد است که با نقطه از هم جدا شده اند. هر کدام از این عددها می‌توانند از ۰ تا ۲۵۵ تغییر کنند. بنابراین تعداد IPها نیز محدود است.

رایانه شما آدرس IP خود را از یک سرور «پروتکل پیکره بندی پویای میزبان» یا DHCP روی شبکه می‌گیرد. کار این پروتکل این است که مطمئن شود رایانه شما آدرس IP و دیگر اطلاعات پیکره بندی شبکه را که برای آنلاین بودن شما لازم است در اختیار داشته باشد. اما همان طور که از اسمش بر می‌ آید این آدرس IP پویا یا دینامیک (Dynamic) است و احتمالاً هر بار که شما رایانه تان را خاموش می‌کنید تغییر می‌کند. به هر حال شما متوجه تغییر خاصی نخواهید شد.

اما سرورهای وب و رایانه های دیگری که نیاز به یک اتصال ثابت به اینترنت دارند از یک آدرس IPی ایستا یا استاتیک (Static) استفاده می‌کنند؛ یعنی به واسط شبکه این سیستم‌ها یک آدرس ثابت اختصاص پیدا می‌کند. برای این‌که از ثابت بودن این آدرس IP اطمینان حاصل شود این آدرس با آدرس MAC واسط شبکه اتصال داده می‌شود. هر واسط شبکه دارای یک آدرس MAC منحصر به خود است که تولیدکننده به آن اختصاص داده است.

نام دامنه ها

اگر محبور بودیم برای دست‌رس به هر وب‌سایتی آدرس IPی آن را به خاطر بیاوریم احتمالاً بسیاری قید اینترنت را می‌زدند. آدم‌ها معمولاً در به یاد آوردن اعداد خیلی ماهر نیستند. اما به یاد آوردن کلمه ها راحت‌تر است٬ و به همین دلیل نام دامنه ها به وجود آمده اند. در همین لحظه اگر کمی به ذهن خود فشار بیاورید احتمالاً تعداد زیادی نام دامنه را به خاطر خواهید آورد: نام موتورهای جست‌جو٬ سرویس ایمیل مورد استفاده تان٬ سایت‌های خبری٬ سایت‌های اجتماعی٬ سایت‌هایی که به کارتان مرتبطند٬ و…

نام دامنه ها شامل رشته های از کاراکترند که به وسیله نقطه هایی از هم جدا می‌شوند. آخرین این کلمه ها (سمت راستی‌ ترین رشته کاراکتری) نشان دهنده یک «دامنه سطح بالا» (Top Level Domain) یا TLD است. دامنه های سطح بالا را IANA در «دیتابیس ناحیه ریشه» (Root Zone Database) کنترل می‌کند. بعضی از معروف‌ترین دامنه های سطح بالا عبارتند از: ٬NET٬COM ٬ORG ٬INFO ٬IR و…

در یک نام دامنه هر رشته کاراکتری و نقطه ای که قبل از دامنه سطح بالا اضافه شود یک سطح به نام دامنه شما اضافه می‌کند. هر سطح به معنی یک سرور یا گروه سرور است که مدیریت آن سطح را بر عهده دارند. گاهی در دامنه سطح بالا ممکن است یک سطح اضافی نیز تعریف شود مانند AC.IR یا CO.UK

مثلاً در نام www.websamin.com دامنه سطح بالا COM است و نام دامنه websamin یک دامنه سطح دوم از دامنه سطح بالای COM است. بعضی وب‌سایت‌ها ممکن است زیردامنه هایی نیز تعریف کنند مثلاً می‌توان زیردامنه ای به صورت blog.websamin.com داشت.

سمت چپ‌ترین عبارت مثل www یا mail یا ftp را به عنوان نام هاست (میزبان) می‌شناسند و معرف یک ماشین خاص در دامنه با یک آدرس IPی جداست که برای یک وظیفه معین (مثلاً دست‌رس وب یا ایمیل) اختصاص یافته است. هر نام دامنه ممکن است چندین نام هاست منحصر به خود داشته باشد.

در نتیجه یک دامنه از سه بخش اصلی تشکیل شده است:

۱-دامنه سطح بالا

۲-نام دامنه 

۳- نام هاست

از آن‌جا که همه نام دامنه ها باید منحصر به فرد باشند باید به طریقی لیست دامنه های موجود را کنترل کرد تا هیچ دامنه ای تکراری نباشد. این کار را ثبت کننده ها یا رجیسترارها (Registrar) انجام می‌دهند. یک ثبت کننده مسؤولیت اختصاص نام دامنه های موجود تحت یک یا چند دامنه سطح بالا را بر عهده دارد و این کار را به هماهنگی ICANN (نهاد بین المللی مسؤول اختصاص نام‌ها و شماره ها در اینترنت) انجام می‌دهد. مثلاً مسؤول ثبت دامنه های IR ایرنیک وابسته به پژوهشگاه دانش‌های بنیادی است. هر دامنه ثبت شده بخشی از یک دیتابیس مرکزی ثبت دامنه به نام دیتابیس Whois خواهد بود.

در بخش بعد خواهیم دیدی که در فرآیند ثبت یک دامنه باید یک یا چند سرور نام دامنه (DNS) نیز معین کرد که مسؤولیت تبدیل نام‌های هاست و زیردامنه ها را در داخل آن دامنه بر عهده خواهند داشت. این کار معمولاً از طریق یک شرکت ارایه خدمات میزبانی که سرورهای DNS خود را دارد انجام می‌شود.

منبع : سایت طاها دومین

زون رکوردها (Zone Records)

برای ثبت یک دامنه تازه باید کارهای زیر را انجام دهید:

۱- باید از دیتابیس‌های whois چک کنید که نام دامنه مورد نظرتان قبلاً ثبت نشده باشد. سایت‌های متعددی برای این کار وجود دارد. عموماً شرکت‌های ثبت دامنه این مورد را برای شما چک می‌کنند.

۲- از طریق یک رجیسترار (شرکت ثبت کننده) نام دمانه مورد نظرتان را ثبت کنید. ممکن است این شرکت‌ها برای برخی نام دامنه های سطح بالا یا در ازای استفاده از خدمات هاستینگ آن‌ها به شما در ثبت دامنه تخفیفاتی هم بدهند.

۳- اگر از خدمات هاستینگ شرکت دیگری غیر از ثبت کننده دامنه استفاده می‌کنید باید در تنظیمات ثبت دامنه خود نام دامنه تان را به هاست یا IP شرکت هاستینگ ارجاع دهید.

در این مورد معمولاً شما از سرورهای DNS شرکت هاستینگ استفاده می‌کنید؛ یعنی دامنه شما بخشی از تنظیمات DNS آن شرکت خواهد بود. در عوض شما می‌توانید سرور شخصی خود را تهیه کنید که می‌تواند یک سرور اختصاصی یا مجازی باشد. در این حالت می‌توانید سرور DNS خودتان را ایجاد کنید. هر کدام از این گزینه ها را که استفاده کنید سرور DNSی که استفاده می‌کنید SOA دامنه شما خواهد بود.

در هر صورت شما می‌توانید تنظیمات DNS دامنه خود را اصلاح کنید و زیردامنه هایی به آن اضافه کنید٬ ایمیل‌تان را ری‌دایرکت کنید یا سرویس‌های دیگرتان را کنترل کنید. این اطلاعات در یک زون فایل (Zone File) روی سرور DNS شما نگه داشته می‌شوند. هر دامنه و زیردامنه یک زون فایل دارد. کار زون فایل‌ها ایجاد پیوند میان هر دامنه و زیردامنه با آدرس‌های IP مربوط به آن‌ها است. اگر از سرور شخصی استفاده می‌کنید احتمالاً مجبور خواهید بود زون فایل‌تان را دستی اصلاح کنید. بیش‌تر شرکت‌های هاستینگ و ثبت دامنه برای این کار یک واسط تحت وب در اختیار شما می‌گذارند. هر کدام از پیکره بندی‌های DNS موجود در این فایل را یک رکورد می‌نامند و ضروری‌ترین رکوردهایی که در یک سرور DNS برای یک دامنه تنظیم می‌شود عبارتند از:

  • هاست (A): کار نگاشت آدرس IP به نام هاست را انجام می‌دهد. این ضروری‌ترین زون رکورد در اینترنت است.

    نام قانونی (واقعی یا Canonical Name) با رکورد CNAME: نام مستعار (آلیاس) یک دامنه یا زیردامنه است. کسی که تلاش کند به این آلیاس دست‌رس پیدا کند به طور خودکار به سروری هدایت خواهد شد که در رکورد A تعیین شده است. با این کار می‌توانید برای یک هاست بیش از یک نام داشته باشید. وقتی آدرس IPی خود را در رکورد A تغییر دهید رکوردهای CNAME آن دامنه به طور خودکار به IP جدید اشاره خواهند کرد.

    تبادل‌گر ایمیل (رکورد MX): نگاشت ترافیک ایمیل به یک سرور ایمیل را انجام می‌دهد. این رکورد می‌تواند یک هاست دیگر یا یک آدرس IP باشد. این رکورد باعث می‌شود ایمیل‌های شما به درستی تبادل شوند.

    نیم سرور (NS): شامل اطلاعات نیم سرور آن زون است. تنظیم این رکورد به سرورهای DNS دیگر که اطلاعات حاصل از جست‌جوی نام دامنه در سرورهای DNS  را کش می‌کنند نشان می‌دهد که سرور شما نقش SOA را برای این دامنه ایفا می‌کند.

    Start of Authority با رکورد SOA: در آغاز هر زون فایل وجود دارد و شامل نیم سرور اصلی برای آن دامنه٬ اطلاعات کشینگ٬ و نشانی ایمیل ادمین آن زون است. اگر سرور DNS شما متعلق به شرکت هاستینگ است نیازی به تعیین این رکورد ندارید.

عموماً کاربران بیش‌تر با رکوردهای MX و CNAME سروکار دارند. با استفاده از رکوردهای MX می‌توانید سرویس‌های ایمیل‌تان را به جایی غیز از شرکت هاستینگ‌تان ارجاع دهید. با استفاده از رکوردهای CNAME می‌توانید نام هاست‌های دامنه تان را به نقاط دیگر ارجاع دهید. مثلاً می‌توانید google.example.com را به google.com ری‌دایرکت کنید یا یک سرور گیم با آدرس IP مخصوص خودش داشته باشید و آن را به زیردامنه ای مانند gameserver.example.com ارجاع دهید.

منبع : سایت طاها دومین