سامانه نام دامنه که به انگلیسی Domain Name Service، یا به صورت مخفف DNS، خوانده میشود نظامی سلسلهمراتبی برای نامگذاری رایانهها و دیگر منابعی است که به اینترنت یا شبکههای دیگر رایانهای متصل میشوند.
وقتی میخواهید وارد وبگاهی شوید، باید نشانی کارساز وب آنرا بدانید. نشانی کارساز وب با نشانی آیپی مشخص میشود. اما به خاطر سپردن نشانی آیپی دشوار است. میتوان به جای نشانی آیپی از نامهای دامنه استفاده کرد. برای هر نشانی آیپی یک نام دامنه در نظر گرفته شده است. مثلا نشانی آیپی وبگاه گوگل ۷۴٫۱۲۵٫۶۷٫۱۰۰ است. برای دسترسی به گوگل میتوانید از این نشانی آیپی یا نام دامنه آن یعنی www.google.com استفاده کنید.
این سیستم در سال ۱۹۸۴ معرفی شد. در DNS، کل نشانیهای اینترنت درون بانکهای اطلاعاتی توزیع شدهای هستند که هیچ تمرکزی روی نقطهای خاص از شبکه دارند. روش ترجمهٔ نام بدین صورت است که وقتی یک برنامهٔ کاربردی مجبور است برای برقراری یک ارتباط، معادل نشانی آیپی از یک ماشین با نامی مثل CS. ucsb. edu را بدست بیاورد، قبل از هر کاری یک تابع کتابخانهای (Library Function) را صدا میزند، به این تابع کتابخانهای «تابع تحلیلگر نام » (Name Resolver) گفته میشود. تابع تحلیلگر نام، یک نشانی نمادین را که بایستی ترجمه شود، بعنوان پارامتر ورودی پذیرفته و سپس یک بستهٔ درخواست (Query Packet) به روش UDP تولید کرده و به نشانی یک سرویس دهندهٔ DNS (که به صورت پیش فرض مشخص میباشد) ارسال میکند. همهٔ ماشینهای میزبان، حداقل باید نشانی آیپی از یک سرویس دهندهٔ DNS را در اختیار داشته باشند. این «سرویس دهندهٔ محلی» پس از جستجو، نشانی آیپی معادل با یک نام نمادین را بر می گرداند. «تابع تحلیلگر نام» نیز آن نشانی آیپی را به برنامهٔ کاربردی تحویل میدهد با پیدا شدن نشانی آیپی، برنامهٔ کاربردی میتواند عملیات مورد نظرش را ادامه بدهد.
حوزه (Zone)
برای تحلیل یک نام حوزه، سطوح از سمت راست به چپ تفکیک میشوند و در یک روند سلسله مراتبی، سرویس دهندهٔ متناظر با آن سطح پیدا میشود. نامهای حوزه به هفت منطقهٔ عمومی و حدود صد و اندی منطقهٔ کشوری تقسیم بندی شده است. حوزه بدین معناست که شما با یک نگاه ساده به انتهای نشانی نمادین، میتوانید ماهیت آن نام و سرویس دهندهٔ متناظر با آن را حدس بزنید. یعنی اگر انتهای نامهای حوزه متفاوت باشد منطقهٔ جستجو برای یافتن نشانی آیپی معادل نیز متفاوت خواهد بود. هفت حوزه عمومی که همه آنها سه حرفی هستند عبارتند از:
* . com صاحب این نام جزو موسسات اقتصادی و تجاری به شمار میآید. www.sony.com
* .edu صاحب این نام جزو موسسات علمی یا دانشگاهی به شمار میآید. www.sharif.edu
* .gov این مجموعه از نامها برای آژانسهای دولتی آمریکا اختصاص داده شده است. www.whitehouse.gov
* .int صاحب این نام یکی از سازمانهای بین المللی (مثل یونسکو، فائو، …) محسوب میشود. www.unicef.int
* .mil صاحب این نام یکی از سازمانهای نظامی دنیا به شمار میآید.
* .net صاحب این نام جزو یکی از «ارائه دهندگان خدمات شبکه» به شمار میرود. www.pegah.net
* . org صاحب این نام جزو یکی از سازمانهای عام المنفعه و غیر انتفاعی محسوب میشوند. www.ieee.org
نامهای حوزهٔ بسیار زیادی در اینترنت تعریف شده اند که هیچیک از حوزههای سه حرفی هفتگانه را در انتهای آنها نمی بینید. معمولا در انتهای این نشانیها یک رشتهٔ دو حرفی مخفف نام کشوری است که آن نشانی و ماشین صاحب آن، در آن کشور واقع است.
هر حوزه میتواند به زیر حوزههای کوچکتری تقسیم شود. بعنوان مثال نامهای مربوط به حوزه ژاپن با مخفف .jp به دو حوزه کوچکتر تقسیم میشود : ac.jp و.co.jp که اولی یک موسسه علمی و دانشگاهی و دومی یک موسسه بازرگانی یا تجاری را در ژاپن تعیین می نماید. یعنی محل جستجو برای ترجمهٔ یک نام متفاوت خواهد بود. بعنوان مثال:
cs.keio.ac.jp
* کشور: ژاپن
* هویت: دانشگاهی
* نام دانشگاه: Keio
* نام دانشکده: کامپیوتر Computer science
Zoneها با دامنهها (Domain) یکسان نبوده و یک Zone میتواند شامل رکورد هایی در رابطه با چندین دامنه باشد. مثلا فرض کنید، دامنه www.microsoft.com دارای دو زیر دامنه با نام West، East باشد. (West.microsoft.com , East.microsoft.com) . مایکروسافت دارای دامنه اختصاصی msn. com بوده که خود شامل یک زیر دامنه با نام mail.microsoft.com است.
روشهای جستجو در سرویس دهندههای نام
همانگونه که اشاره شد اسامی نمادین در شبکه اینترنت که خود در قالب حوزهها و زیر حوزهها سازماندهی شده اند در یک فایل متمرکز ذخیره نمیشوند بلکه روی کل شبکه اینترنت توزیع شده اند، به همین دلیل برای ترجمه یک نام به نشانی آیپی ممکن است چندین مرحله “پرس و جو” صورت بگیرد تا یک نشانی پیدا شود. طبیعی است که یک پرس و جو برای تبدیل یک نام حوزه همیشه موفقیت آمیز نباشد و ممکن است به پرس و جوهای بیشتری نیاز شود یا حتی ممکن است یک نشانی نمادین اشتباه باشد و هیچ معادل نشانی آیپی نداشته باشد. سه روش برای پرس و جوی نام در سرویس دهندههای نام وجود دارد :
* پرس و جوی تکراری (Iterative Query)
* پرس و جوی بازگشتی (Recursive Query)
* پرس و جوی معکوس (Reverse Query)
این سه روش را بررسی می کنیم:
پرس و جوی تکراری
در پرس و جوی تکراری قسمت اعظم تلاش برای تبدیل یک نام بر عهده سرویس دهنده محلی است؛ این DNS حداقل به نشانی ماشین Root، به عنوان نقطه شروع نیاز دارد. وقتی یک تقاضای ترجمه نشانی به سرویس دهنده محلی ارسال میشود در صورتی که قادر به ترجمه نام به معادل نشانی آیپی آن باشد، معادل نشانی آیپی نام مورد نظر را به تقاضا کننده برمی گرداند. (این حالت وقتی است که سرویس دهنده محلی قبلاً آن نام را ترجمه و در یک فایل ذخیره کرده باشد.) در غیر این صورت سرویس دهنده محلی خودش یک تقاضا برای DNS سطح بالا ارسال میکند. این سرویس دهنده، نشانی ماشینی را که میتواند برای ترجمه نام مورد نظر مفید باشد، به سرویس دهنده محلی معرفی میکند؛ سرویس دهنده محلی مجدداً یک تقاضا به ماشین معرفی شده در مرحله قبل ارسال میکند. در این حالت هم سرویس دهنده نام میتواند در صورت یافتن نشانی آیپی با آن نام حوزه، آنرا ترجمه کند و یا آنکه نشانی سرویس دهنده سطح پایینتری را به او برگرداند. این روند ادامه مییابد تا DNS نهایی نام مورد نظر را به نشانی آیپی ترجمه نماید. برای درک بهتر از روند کار به شکل زیر دقت کنید. در این مثال فرض شده است که یک برنامه کاربردی با فراخوانی “تابع تحلیلگر نام”، تقاضای ترجمه نام www.microsoft.com را می نماید. مراحلی که انجام میشود به شرح زیر است :
* در مرحله اول برنامه کاربردی با فراخوانی “تابع تحلیل نام”، تقاضای ترجمه نشانی www.microsoft.com را برای سرویس دهنده محلی ارسال کرده و منتظر می ماند.
* در مرحله دوم، سرویس دهنده محلی از سرویس دهنده Root (که حوزههای متفاوت را تفکیک میکند) نشانی ماشین یک DNS که متولی حوزه.com است را سؤال میکند.
* در مرحله سوم، نشانی سرویس دهنده مربوط به حوزه. com بر میگردد.
* در مرحله چهارم، سرویس دهنده محلی، از ماشین معرفی شده در مرحله قبلی، نشانی سرویس دهنده مربوط به حوزه Microsoft.com را سؤال می نماید
* در مرحله پنجم فهرستی از سرویس دهندههای DNS مربوط به Microsoft.com بر میگردد.
* در مرحله ششم، سرویس دهنده محلی تقاضای ترجمه نشانی نمادین www.microsoft.com را از DNS متعلق به حوزه Microsoft.com میکند.
* در مرحله هفتم، معادل نشانی آیپی نام www.microsoft.com برمی گردد.
* در مرحله هشتم، نشانی آیپی خواسته شده در اختیار برنامه کاربردی قرار میگیرد.
پرس و جوی بازگشتی
در این روش هر گاه برنامهای بخواهد نشانی آیپی معادل یک نام مثل cs.yale.edu را بدست آورد بگونهای که قبلاً اشاره شد، “تابع سیستمی تحلیل نام” را فراخوانی میکند. این تابع یک ماشین را بعنوان سرویس دهنده محلی از قبل میشناسد و بنابراین تقاضای تبدیل نام را به روش UDP برای آن ارسال کرده و منتظر جواب می ماند (پاسخ نهایی DNS طبیعتاً باید یک نشانی ۳۲ بیتی معادل نشانی آیپی یک ماشین باشد) دو حالت ممکن است اتفاق بیفتد:
* ممکن است در بانک اطلاعاتی مربوط به سرویس دهنده محلی، نشانی آیپی معادل با آن نام از قبل وجود داشته و بالطبع به سرعت مقدار معادل نشانی آیپی آن بر میگردد.
* ممکن است در بانک اطلاعاتی سرویس دهنده محلی، معادل نشانی آیپی آن نام وجود نداشته باشد. مثلاً سرویس دهنده محلی در بانک اطلاعاتی خودش معادل نشانی آیپی نام cs.mit.edu را نداشته و طبیعتاً نمیتواند آن را ترجمه کند. در چنین حالتی سرویس دهنده محلی موظف است بدون آنکه به تقاضا دهنده خبر بدهد، خودش رأساً به سرویس دهنده سطح بالاتر تقاضای ترجمه نشانی بدهد. در این حالت هم DNS سطح بالاتر به همین نحو ترجمه نشانی را پیگیری میکند یعنی اگر معادل نشانی آیپی آن نام را داشته باشد آنرا برمی گرداند و در غیر اینصورت خودش از سرویس دهنده سطح پایینتر تقاضای ترجمه آن نام را می نماید و این مراحل تکرار میشود. در روش پرس و جوی بازگشتی ماشین سرویس دهنده محلی این مراحل متوالی را نمی بیند و هیچ کاری جز ارسال تقاضای ترجمه یک نشانی بر عهده ندارد و پس از ارسال تقاضا برای سرویس دهنده سطح بالا منتظر خواهد ماند. بازهم تکرار می کنیم، روشی که DNS برای ترجمه نشانی بکار میبرد میتواند بدون اتصال (UDP) باشد که این کار به سرعت عمل ترجمه نشانی می افزاید.
دقت کنید که در روش پرس و جوی تکراری نسبت به روش پرس و جوی بازگشتی، حجم عمده عملیات بر عهده سرویس دهنده DNS محلی است و مدیریت خطاها و پیگیری روند کار ساده تر خواهد بود و روش منطقی تری برای بکارگیری در شبکه اینترنت محسوب میشود. روش پرس و جوی بازگشتی برای شبکههای کوچک کاربرد دارد. برای درک بیشتر این روش به شکل زیر دقت کنید.
پرس و جوی معکوس
فرض کنید حالتی بوجود بیاید که یک سرویس دهنده DNS، نشانی آیپی یک ماشین را بداند ولی نام نمادین معادل با آن را نداند. بعنوان مثال DNS مایل است بداند که چه نامی در شبکه اینترنت معادل با ۱۹۵٫۱۳٫۴۲٫۷ میباشد. در چنین حالتی مسئله کمی حادتر به نظر میرسد، چرا که برای ترجمه نامهای نمادین، چون این نامها دارای حوزه و زیرحوزه هستند، تحلیل نشانیها ساده است ولی ترجمه نشانی آیپی به معادل نام حوزه، از چنین روابطی تبعیت نمیکند ؛ بعبارت بهتر هیچ ارتباط مستقیم و متناظری بین نشانیهای نشانی آیپی و اسامی انتخاب شده در اینترنت وجود ندارد. برای یافتن نامهای متناظر با یک نشانی آیپی باید یک جستجوی کامل و در عین حال وقتگیر انجام بشود. روش کار بدین صورت است که سرویس دهنده محلی یک تقاضا برای DNS متناظر با شبکهای که مشخصه آن در نشانی آیپی، مشخص شده، ارسال میکند. بعنوان مثال نشانی آیپی شبکهای را ۱۳۸٫۱۴٫۷٫۱۳ در نظر بگیرید، نشانی کلاس B و مشخصه آن ۱۳۸٫۱۴٫۰٫۰ است. زمانی که مؤسسهای یک کلاس نشانی آیپی ثبت میدهد یک سرویس دهنده DNS، متناظر با شبکه خود ایجاد کرده و آنرا نیز معرفی میکند. سرویس دهنده محلی بایستی نشانی DNS متناظر با شبکه ۱۳۸٫۱۴٫۰٫۰ را پیدا کرده و سپس برای آن یک تقاضا ارسال کند. DNS مربوط به این شبکه، براساس زیر شبکههایی که دارد این سؤال را از طریق سرویس دهندههای متناظر با هر زیر شبکه پیگیری میکند. (چون هر زیر شبکه یک سرویس دهنده DNS مخصوص به خود دارد) نهایتاً یک نام نمادین حوزه معادل با آن نشانی آیپی بر خواهد گشت.
ساختار
نام دامنه از ارقام و حروفی تشکیل شده است. یکی قسمت نام کارساز است، دیگری نام دامنه و دیگری زیر دامنه است. مثلا http://www.yahoo.com را در نظر بگیرید. قسمت www که نام کارساز یا میزبان وب است. قسمت Yahoo نام دامنه و قسمت com زیر دامنه میباشد.
دو سازمان بین المللی مهم ناظر بر اینترنت ICANN و IANA هستند.
سازمان IANA بر هماهنگی بینالمللی سیستم نام دامنه ، آدرسدهی IP و سایر منابع پروتکل اینترنت نظارت میکند و اصلی ترین نقش آیکان (ICANN) مدیریت سیستم نام های دامنه و نظارت بر IANA است.
IANA دامنه ها را به سه دسته اصلی تقسیم می کند :
root zone
.int
.arpa
دامنه های متداولی که بیشتر وب سایت ها از آنها استفاده می نمایند جزو دسته root zone هستند که خود بر اساس پسوند دامنه به سه دسته تقسیم می گردند.
- دامنه های gTLD
- دامنه های ccTLD
- دامنه های IDN
دامنه های gTLD یا general ماهیت موضوعی – عمومی دارند ، یعنی بر اساس نوع فعالیت به اقسام زیر تقسیم می شوند:
دامنه های عمومی (generic):
————————————-
دامنه هدف
======= ====================
.COM دامنه عمومی سطح بالا
.NET دامنه عمومی سطح بالا
.INFO دامنه عمومی سطح بالا
.ORG دامنه عمومی سطح بالا
دامنه های عمومی – انحصاری (generic-restricted):
—————————————————————
دامنه هدف
======= ====================
.BIZ تجارتی
.NAME افراد
.PRO حرفه ای های معتبر و نهادهای مرتبط
دامنه های تضمین شده (sponsored):
——————————————–
دامنه هدف
======= ====================
.AERO مخصوص اعضای صنعت حمل و نقل هوایی
.ASIA آسیایی
.CAT انجمن های فرهنگی و زبان شناسی
.COOP شرکت های تعاونی
.JOBS مدیران منابع انسانی
.MOBI مصرف کنندگان و ارائه کنندگان محصولات و سرویسهای موبایل
.MUSEUM موزه ها
.TEL شرکت های تجاری و افراد جهت انتشار اطلاعات تماس شان
.TRAVEL نهادهایی که جهت فعالیت برای صنعت مسافرت هستند
.EDU نهادهای معتبر آموزشی
.INT تنها برای ثبت سازمانهای ایجاد شده توسط عهد نامه های بین المللی بین دولت ها
.GOV منحصرا برای دولت آمریکا
.MIL منحصرا برای ارتش آمریکا
دامنه های زیر بنایی (infrastructure):
———————————————
دامنه هدف
======= ====================
.ARPA منحصرا جهت پشتیبانی فضاهای تعیین هویت زیربنایی عملیات بحرانی توسط بورد معماری اینترنتی
دامنه های ccTLD بر اساس کد های کشورهای (Country Code) مختلف ایجاد شده اند و همگی دو حرفی می باشند.
برخی افراد از این دامنه ها برای اهداف دیگری نیز استفاده می نمایند ، لیکن هدف اصلی از ایجاد آنها تمایز بین کشورهای مختلف بوده است.
مانند دامنه .TV که در برخی موارد برای اهداف شبکه های تلویزیونی استفاده می شود.
Domain Country (کشور) ======= ============================ .AC Ascension Island .AD Andorra .AE United Arab Emirates .AF Afghanistan .AG Antigua and Barbuda .AI Anguilla .AL Albania .AM Armenia .AN Netherlands Antilles .AO Angola .AQ Antarctica .AR Argentina .AS American Samoa .AT Austria .AU Australia .AW Aruba .AX Aland Islands .AZ Azerbaijan .BA Bosnia and Herzegovina .BB Barbados .BD Bangladesh .BE Belgium .BF Burkina Faso .BG Bulgaria .BH Bahrain .BI Burundi .BJ Benin .BL Saint Barthelemy .BM Bermuda .BN Brunei Darussalam .BO Bolivia .BR Brazil .BS Bahamas .BT Bhutan .BV Bouvet Island .BW Botswana .BY Belarus .BZ Belize .CA Canada .CC Cocos (Keeling) Islands .CD Congo, The Democratic Republic of the .CF Central African Republic .CG Congo .CH Switzerland .CI Cote d’Ivoire .CK Cook Islands .CL Chile .CM Cameroon .CN China .CO Colombia .CR Costa Rica .CU Cuba .CV Cape Verde .CX Christmas Island .CY Cyprus .CZ Czech Republic .DE Germany .DJ Djibouti .DK Denmark .DM Dominica .DO Dominican Republic .DZ Algeria .EC Ecuador .EE Estonia .EG Egypt .EH Western Sahara .ER Eritrea .ES Spain .ET Ethiopia .EU European Union .FI Finland .FJ Fiji .FK Falkland Islands (Malvinas) .FM Micronesia, Federated States of .FO Faroe Islands .FR France .GA Gabon .GB United Kingdom .GE Georgia .GF French Guiana .GG Guernsey .GH Ghana .GI Gibraltar .GL Greenland .GM Gambia .GN Guinea .GP Guadeloupe .GQ Equatorial Guinea .GR Greece .GS South Georgia and the South Sandwich Islands .GT Guatemala .GU Guam .GW Guinea-Bissau .GY Guyana .HK Hong Kong .HM Heard Island and McDonald Islands .HN Honduras .HR Croatia .HT Haiti .HU Hungary .ID Indonesia .IE Ireland .IL Israel .IM Isle of Man .IN India .IO British Indian Ocean Territory .IQ Iraq .IR ایران Islamic Republic of Iran .IS Iceland .IT Italy .JE Jersey .JM Jamaica .JO Jordan .JP Japan .KE Kenya .KG Kyrgyzstan .KH Cambodia .KI Kiribati .KM Comoros .KN Saint Kitts and Nevis .KP Korea, Democratic People’s Republic of .KR Korea, Republic of .KW Kuwait .KY Cayman Islands .KZ Kazakhstan .LA Lao People’s Democratic Republic .LB Lebanon .LC Saint Lucia .LI Liechtenstein .LK Sri Lanka .LR Liberia .LS Lesotho .LT Lithuania .LU Luxembourg .LV Latvia .LY Libyan Arab Jamahiriya .MA Morocco .MC Monaco .MD Moldova, Republic of .ME Montenegro .MF Saint Martin .MG Madagascar .MH Marshall Islands .MK Macedonia, The Former Yugoslav Republic of .ML Mali .MM Myanmar .MN Mongolia .MO Macao .MP Northern Mariana Islands .MQ Martinique .MR Mauritania .MS Montserrat .MT Malta .MU Mauritius .MV Maldives .MW Malawi .MX Mexico .MY Malaysia .MZ Mozambique .NA Namibia .NC New Caledonia .NE Niger .NF Norfolk Island .NG Nigeria .NI Nicaragua .NL Netherlands .NO Norway .NP Nepal .NR Nauru .NU Niue .NZ New Zealand .OM Oman .PA Panama .PE Peru .PF French Polynesia .PG Papua New Guinea .PH Philippines .PK Pakistan .PL Poland .PM Saint Pierre and Miquelon .PN Pitcairn .PR Puerto Rico .PS Palestinian Territory, Occupied .PT Portugal .PW Palau .PY Paraguay .QA Qatar .RE Reunion .RO Romania .RS Serbia .RU Russian Federation .RW Rwanda .SA Saudi Arabia .SB Solomon Islands .SC Seychelles .SD Sudan .SE Sweden .SG Singapore .SH Saint Helena, Ascension and Tristan da Cunha .SI Slovenia .SJ Svalbard and Jan Mayen .SK Slovakia .SL Sierra Leone .SM San Marino .SN Senegal .SO Somalia .SR Suriname .ST Sao Tome and Principe .SU Soviet Union (being phased out) .SV El Salvador .SY Syrian Arab Republic .SZ Swaziland .TC Turks and Caicos Islands .TD Chad .TF French Southern Territories .TG Togo .TH Thailand .TJ Tajikistan .TK Tokelau .TL Timor-Leste .TM Turkmenistan .TN Tunisia .TO Tonga .TP Portuguese Timor (being phased out) .TR Turkey .TT Trinidad and Tobago .TV Tuvalu .TW Taiwan .TZ Tanzania, United Republic of .UA Ukraine .UG Uganda .UK United Kingdom .UM United States Minor Outlying Islands .US United States .UY Uruguay .UZ Uzbekistan .VA Holy See (Vatican City State) .VC Saint Vincent and the Grenadines .VE Venezuela, Bolivarian Republic of .VG Virgin Islands, British .VI Virgin Islands, U.S. .VN Viet Nam .VU Vanuatu .WF Wallis and Futuna .WS Samoa .YE Yemen .YT Mayotte .YU Yugoslavia (being phased out) .ZA South Africa .ZM Zambia .ZW Zimbabwe |
نوشته شده توسط : فرهاد سخایی
درج مطلب با ذکر نام نویسنده و لینک مستقیم در وب سایت دیگر بلامانع است