DNS از کلمات Domain Name System اقتباس و يک پروتکل شناخته شده در عرصه شبکه هاي کامپيوتري خصوصا" اينترنت است . از پروتکل فوق به منظور ترجمه اسامي کامپيوترهاي ميزبان و Domain به آدرس هاي IP استفاده مي گردد. زماني که شما آدرس www.srco.ir را در مرورگر خود تايپ مي نمائيد ، نام فوق به يک آدرس IP و بر اساس يک درخواست خاص ( query ) که از جانب کامپيوتر شما صادر مي شود ، ترجمه مي گردد .
تاريخچه DNS
DNS ، زماني که اينترنت تا به اين اندازه گسترش پيدا نکرده بود و صرفا" در حد و اندازه يک شبکه کوچک بود ، استفاده مي گرديد . در آن زمان ، اسامي کامپيوترهاي ميزبان به صورت دستي در فايلي با نام HOSTS درج مي گرديد . فايل فوق بر روي يک سرويس دهنده مرکزي قرار مي گرفت . هر سايت و يا کامپيوتر که نيازمند ترجمه اسامي کامپيوترهاي ميزبان بود ، مي بايست از فايل فوق استفاده مي نمود . همزمان با گسترش اينترنت و افزايش تعداد کامپيوترهاي ميزبان ، حجم فايل فوق نيز افزايش و امکان استفاده از آن با مشکل مواجه گرديد ( افزايش ترافيک شبکه ). با توجه به مسائل فوق ، در سال 1984 تکنولوژي DNS معرفي گرديد .
پروتکل DNS
DNS ، يک "بانک اطلاعاتي توزيع شده " است که بر روي ماشين هاي متعددي مستقر مي شود ( مشابه ريشه هاي يک درخت که از ريشه اصلي انشعاب مي شوند ) . امروزه اکثر شرکت ها و موسسات داراي يک سرويس دهنده DNS کوچک در سازمان خود مي باشند تا اين اطمينان ايجاد گردد که کامپيوترها بدون بروز هيچگونه مشکلي ، يکديگر را پيدا مي نمايند . در صورتي که از ويندوز 2000 و اکتيو دايرکتوري استفاده مي نمائيد، قطعا" از DNS به منظور ترجمه اسامي کامپيوترها به آدرس هاي IP ، استفاده مي شود . شرکت مايکروسافت در ابتدا نسخه اختصاصي سرويس دهنده DNS خود را با نام ( WINS ( Windows Internet Name Service طراحي و پياده سازي نمود . سرويس دهنده فوق مبتني بر تکنولوژي هاي قديمي بود و از پروتکل هائي استفاده مي گرديد که هرگز داراي کارائي مشابه DNS نبودند . بنابراين طبيعي بود که شرکت مايکروسافت از WINS فاصله گرفته و به سمت DNS حرکت کند .
از پروتکل DNS در مواردي که کامپيوتر شما اقدام به ارسال يک درخواست مبتني بر DNS براي يک سرويس دهنده نام به منظور يافتن آدرس Domain مي نمايد ، استفاده مي شود .مثلا" در صورتي که در مرورگر خود آدرس www.srco.ir را تايپ نمائيد ، يک درخواست مبتني بر DNS از کامپيوتر شما و به مقصد يک سرويس دهنده DNS صادر مي شود . ماموريت درخواست ارسالي ، يافتن آدرس IP وب سايت سخاروش است .
پروتکل DNS و مدل مرجع OSI
پروتکل DNS معمولا" از پروتکل UDP به منظور حمل داده استفاده مي نمايد . پروتکل UDP نسبت به TCP داراي overhead کمتري مي باشد. هر اندازه overhead يک پروتکل کمتر باشد ، سرعت آن بيشتر خواهد بود . در مواردي که حمل داده با استفاده از پروتکل UDP با مشکل و يا بهتر بگوئيم خطاء مواجه گردد ، پروتکل DNS از پروتکل TCP به منظور حمل داده استفاده نموده تا اين اطمينان ايجاد گردد که داده بدرستي و بدون بروز خطاء به مقصد خواهد رسيد .
فرآيند ارسال يک درخواست DNS و دريافت پاسخ آن ، متناسب با نوع سيستم عامل نصب شده بر روي يک کامپيوتر است .برخي از سيستم هاي عامل اجازه استفاده از پروتکل TCP براي DNS را نداده و صرفا" مي بايست از پروتکل UDP به منظور حمل داده استفاده شود . بديهي است در چنين مواردي همواره اين احتمال وجود خواهد داشت که با خطاهائي مواجه شده و عملا" امکان ترجمه نام يک کامپيوتر و يا Domain به آدرس IP وجود نداشته باشد .
پروتکل DNS از پورت 53 به منظور ارائه خدمات خود استفاده مي نمايد . بنابراين يک سرويس دهنده DNS به پورت 53 گوش داده و اين انتظار را خواهد داشت که هر سرويس گيرنده اي که تمايل به استفاده از سرويس فوق را دارد از پورت مشابه استفاده نمايد . در برخي موارد ممکن است مجبور شويم از پورت ديگري استفاده نمائيم . وضعيت فوق به سيستم عامل و سرويس دهنده DNS نصب شده بر روي يک کامپيوتر بستگي دارد.
ساختار سرويس دهندگان نام دامنه ها در اينترنت
امروزه بر روي اينترنت ميليون ها سايت با اسامي Domain ثبت شده وجود دارد . شايد اين سوال براي شما تاکنون مطرح شده باشد که اين اسامي چگونه سازماندهي مي شوند ؟ ساختار DNS بگونه اي طراحي شده است که يک سرويس دهنده DNS ضرورتي به آگاهي از تمامي اسامي Domain ريجستر شده نداشته و صرفا" ميزان آگاهي وي به يک سطح بالاتر و يک سطح پائين تر از خود محدود مي گردد .
internic ، مسئوليت کنترل دامنه هاي ريشه را برعهده داشته که شامل تمامي Domain هاي سطح بالا مي باشد ( در شکل فوق به رنگ آبي نشان داده شده است) . در بخش فوق تمامي سرويس دهندگان DNS ريشه قرار داشته و آنان داراي آگاهي لازم در خصوص دامنه هاي موجود در سطح پائين تر از خود مي باشند ( مثلا" microsoft.com ) . سرويس دهندگان DNS ريشه مشخص خواهند کرد که کدام سرويس دهنده DNS در ارتباط با دامنه هاي microsoft.com و يا Cisco.com مي باشد .
هر domain شامل يک Primary DNS و يک Secondary DNS مي باشد . Primary DNS ، تمامي اطلاعات مرتبط با Domain خود را نگهداري مي نمايد. Secondary DNS به منزله يک backup بوده و در مواردي که Primary DNS با مشکل مواجه مي شود از آن استفاده مي گردد . به فرآيندي که بر اساس آن يک سرويس دهنده Primary DNS اطلاعات خود را در سرويس دهنده Secondary DNS تکثير مي نمايد ، Zone Transfer گفته مي شود .
امروزه صدها وب سايت وجود دارد که مي توان با استفاده از آنان يک Domain را ثبت و يا اصطلاحا" ريجستر نمود . پس از ثبت يک Domain ، امکان مديريت آن در اختيار شما گذاشته شده و مي توان رکوردهاي منبع (RR ) را در آن تعريف نمود. Support, www و Routers ، نمونه هائي از رکوردهاي منبع در ارتباط با دامنه Cisco.com مي باشد. به منظور ايجاد Subdomain مي توان از يک برنامه مديريتي DNS استفاده نمود . www و يا هر نوع رکورد منبع ديگري را مي توان با استفاده از اينترفيس فوق تعريف نمود . پس از اعمال تغييرات دلخواه خود در ارتباط با Domain ، محتويات فايل هاي خاصي که بر روي سرويس دهنده ذخيره شده اند نيز تغيير نموده و در ادامه تغييرات فوق به ساير سرويس دهندگان تائيد شده اطلاع داده مي شود . سرويس دهندگان فوق ، مسئوليت Domain شما را برعهده داشته و در ادامه تمامي اينترنت که به اين سرويس دهندگان DNS متصل مي شوند از تغييرات ايجاد شده آگاه و قادر به برقراري ارتباط با هر يک از بخش هاي Domain مي گردند.
مثلا" در صورتي که قصد ارتباط با Support.Cisco.com را داشته باشيد، کامپيوتر شما با سرويس دهنده DNS که مسئوليت مديريت دامنه هاي Com. را دارد ، ارتباط برقرار نموده و سرويس دهنده فوق اطلاعات لازم در خصوص دامنه Cisco.com را در اختيار قرار خواهد داد . در نهايت سرويس دهنده DNS مربوط به Cisco.com ( سرويس دهنده فوق ، تمامي اطلاعات مرتبط با دامنه Cisco.com را در خود نگهداري مي نمايد ) ، آدرس IP کامپيوتر مربوط به Support.Cisco.com را مشخص نموده تا امکان برقراري ارتباط با آن فراهم گردد .