DNS چیست؟
دفترچه تلفن اینترنت؛ سیستمی که نامهای دامنه قابل فهم برای انسان را به آدرسهای IP ترجمه کرده و تمام ترافیک وب و ایمیل را مسیریابی میکند.
۱. DNS چیست؟
سامانه نام دامنه (DNS) دفترچه تلفن اینترنت است. این سامانه نامهای دامنه (مانند example.com) را به آدرسهای IP (مانند 93.184.216.34) ترجمه میکند تا کامپیوترها بتوانند یکدیگر را در شبکه شناسایی کنند.
۲. چرا DNS ساخته شد؟
در سالهای اولیه، کامپیوترها فقط با آدرس IP شناسایی میشدند. یک فایل واحد به نام hosts.txt وظیفه نگاشت نامها به IPها را بر عهده داشت، اما با رشد اینترنت، مدیریت این فایل دیگر ممکن نبود.
نامگذاری قابل فهم
مردم google.com را به 142.250.180.206 ترجیح میدهند
مقیاسپذیری
امکان وجود میلیاردها دامنه بدون نیاز به یک فایل مرکزی
مدیریت غیرمتمرکز
هر سازمان کنترل دامنه خود را در اختیار دارد
انعطافپذیری
آدرسهای IP میتوانند بدون تغییر نام دامنه، تغییر کنند
اگر آدرس example.com از 93.184.216.34 به 203.0.113.10 تغییر کند، کاربران همچنان همان نام را تایپ میکنند و DNS به سادگی آدرس جدید را برمیگرداند.
۳. DNS واقعاً چه کاری انجام میدهد؟
DNS به یک سوال ساده پاسخ میدهد: با داشتن یک نام، IP یا اطلاعات مربوط به آن چیست؟ در عمل، این سامانه کارهای بسیار بیشتری از ترجمه نام به IP انجام میدهد.
نام به IP — ترجمه نامهای دامنه به آدرسهای IPv4/IPv6 (رکوردهای A / AAAA)
سرویسهای چندگانه — استفاده از www، mail، vpn و api زیر یک دامنه با نامهای کارستی مختلف
مسیریابی ایمیل — رکوردهای MX به سرورهای ایمیل میگویند که پیامها را کجا تحویل دهند
توزیع بار (Load Balancing) — بازگرداندن چندین IP برای یک نام جهت تقسیم ترافیک
کشف سرویس — رکوردهای SRV و TXT برای مکانیابی سرویسها و ذخیره تنظیمات
۴. مسیریابی ایمیل با رکوردهای MX
هنگامی که یک سرور ایمیل میخواهد پیامی را به user@example.com ارسال کند، از DNS درباره رکوردهای MX مربوط به example.com سوال میکند.
سرور ایمیل از DNS میپرسد: سرور ایمیل برای example.com چیست؟
DNS با رکوردهای MX پاسخ میدهد (مثلاً 10 mail1.example.com و 20 mail2.example.com)
سرور ایمیل نامهای میزبان را به IP تبدیل کرده و پیام را ارسال میکند
۵. توزیع بار و افزونگی
DNS میتواند چندین آدرس IP را برای یک نام دامنه برگرداند تا ترافیک بین سرورها پخش شود و در صورت خرابی، سیستم همچنان در دسترس باشد.
کاربران مختلف IPهای متفاوتی دریافت میکنند. هیچ سروری تحت فشار قرار نمیگیرد و اگر یکی از کار بیفتد، بقیه همچنان در دسترس هستند.
۶. ساختار DNS چگونه است؟
DNS یک پایگاه داده توزیعشده و سلسلهمراتبی است. فرآیند ترجمه از چهار سطح عبور میکند تا به پاسخ نهایی برسد.
Root Servers
میدانند کجا سرورهای TLD (.com, .net, .ir و غیره) را پیدا کنند
TLD Servers
میدانند کدام سرورهای نام برای هر دامنه معتبر هستند
Authoritative Name Servers
رکوردهای واقعی یک دامنه را نگه میدارند
Resolvers
از طرف شما در سلسلهمراتب جستجو کرده و نتایج را کش (Cache) میکنند
مراحل گامبهگام ترجمه
دستگاه شما از Resolver میپرسد: IP برای www.example.com چیست؟
Resolver از یک سرور Root میپرسد: سرورهای .com کجا هستند؟
سرور Root شما را به سرور TLD مربوط به .com ارجاع میدهد
سرور TLD شما را به سرور اصلی (Authoritative) دامنه example.com ارجاع میدهد
سرور اصلی پاسخ میدهد: 93.184.216.34
Resolver پاسخ را کش کرده و به دستگاه شما بازمیگرداند
۷. چرا DNS در عمل مهم است؟
DNS زیربنای تقریباً تمام فعالیتهای اینترنتی است؛ از بازدید وبسایتها و ارسال ایمیل گرفته تا هدایت ترافیک به نزدیکترین سرور (CDN).
کاربری در اروپا که cdn.example.com را باز میکند ممکن است IP متفاوتی نسبت به کاربری در آسیا دریافت کند؛ دامنه یکی است، اما بهترین سرور برای هر موقعیت مکانی انتخاب میشود.
خلاصه
DNS لایه نامگذاری اینترنت است که برای جایگزینی فایل hosts.txt غیرمقیاسپذیر با یک سیستم سلسلهمراتبی و توزیعشده طراحی شده است.
- ترجمه نامهای دامنه به آدرسهای IP (رکوردهای A / AAAA)
- مسیریابی ایمیل از طریق رکوردهای MX
- امکان توزیع بار و افزونگی با بازگرداندن چندین IP
- پشتیبانی از کشف سرویس با رکوردهای SRV و TXT
- ساختار سلسلهمراتبی و توزیعشده — قابل مقیاسپذیری در کل اینترنت