هر بار که آدرس یک سایت را در مرورگر وارد میکنید، پیش از باز شدن صفحه، سیستمی پشت صحنه نام دامنه را به آدرس IP سرور تبدیل میکند. این سیستم DNS است. در این مقاله توضیح میدهیم DNS چیست، چطور کار میکند، رکوردهای مهم آن کداماند و هنگام اتصال دامنه به هاست، راهاندازی ایمیل یا رفع مشکل بالا نیامدن سایت چه نکاتی را باید بدانید.
فهرست مطالب
DNS چیست؟
DNS مخفف Domain Name System یا «سامانه نام دامنه» است. کامپیوترها با آدرسهای عددی IP، مثل 203.0.113.10، با هم ارتباط برقرار میکنند، اما به خاطر سپردن این اعداد برای انسان دشوار است. DNS مثل دفترچه تلفن اینترنت عمل میکند: نام دامنه را میگیرد و آدرس IP متناظر را برمیگرداند.
DNS چطور کار میکند؟
وقتی example.com را در مرورگر وارد میکنید:
- مرورگر و سیستمعامل ابتدا حافظه موقت (کش) خود را بررسی میکنند.
- اگر پاسخ در کش نباشد، درخواست به Resolver فرستاده میشود؛ معمولاً DNS اپراتور اینترنت یا سرویسهایی مثل ۱.۱.۱.۱.
- Resolver از سرورهای ریشه میپرسد مسئول دامنههای
.comکیست. - سپس از سرورهای
.comمیپرسد مسئولexample.comکدام سرور نام (Name Server) است. - در نهایت از سرور نام Authoritative دامنه، IP را میگیرد و برای مدتی کش میکند.
- مرورگر به آن IP وصل میشود و سایت بارگذاری میشود.
همه این مراحل معمولاً در کسری از ثانیه انجام میشوند و به لطف کش، درخواستهای بعدی سریعتر پاسخ داده میشوند.
انواع سرورهای DNS
- Recursive Resolver: از طرف کاربر جستجو را انجام میدهد و نتیجه را کش میکند.
- Root Server: بالاترین سطح؛ به سرورهای پسوندها ارجاع میدهد.
- TLD Server: مسئول یک پسوند مثل
.comیا.ir. - Authoritative Server: پاسخ نهایی و رکوردهای واقعی یک دامنه را نگه میدارد؛ همان سرورهای نامی که در پنل دامنه تنظیم میکنید.
رکوردهای مهم DNS
| رکورد | کاربرد | نمونه |
|---|---|---|
| A | اتصال نام به IPv4 | example.com → 203.0.113.10 |
| AAAA | اتصال نام به IPv6 | example.com → 2001:db8::10 |
| CNAME | نام مستعار برای یک نام دیگر | www → example.com |
| MX | سرور دریافت ایمیل دامنه | mail.example.com با اولویت ۱۰ |
| TXT | متن؛ برای SPF، DKIM، DMARC و تأیید مالکیت | v=spf1 ... |
| NS | سرورهای نام مسئول دامنه | ns1.provider.com |
| CAA | مراکز صدور مجاز گواهی SSL برای دامنه | letsencrypt.org |
| PTR | Reverse DNS؛ تبدیل IP به نام (تنظیم در ارائهدهنده IP) | 203.0.113.10 → mail.example.com |
رکورد CNAME نباید روی دامنه اصلی (ریشه) در کنار رکوردهای دیگر قرار گیرد؛ برای ریشه از A یا قابلیتهای جایگزین سرویس DNS استفاده کنید.
TTL و زمان اعمال تغییرات
هر رکورد یک TTL (زمان ماندگاری) دارد که تعیین میکند Resolverها پاسخ را چند ثانیه کش کنند. بعد از تغییر یک رکورد، کاربرانی که نسخه قدیمی را در کش دارند تا پایان TTL همان را میبینند. به این فرایند گاهی «انتشار DNS» گفته میشود. تغییر سرورهای نام (NS) معمولاً زمان بیشتری میبرد، چون TTL رکوردهای NS در سرورهای پسوند طولانی است و ممکن است تا ۲۴ تا ۴۸ ساعت طول بکشد.
نکته عملی: اگر قرار است سایت را به سرور جدید منتقل کنید، یک روز قبل TTL رکورد A را به ۳۰۰ ثانیه کاهش دهید تا تغییر نهایی در چند دقیقه اعمال شود.
اتصال دامنه به هاست: NS یا رکورد A؟
- تغییر NS: مدیریت کل DNS دامنه به ارائهدهنده هاست منتقل میشود و رکوردها را از پنل هاست (مثلاً Zone Editor در cPanel) مدیریت میکنید. سادهترین روش برای هاست اشتراکی.
- تغییر رکورد A: DNS نزد سرویس فعلی میماند و فقط رکورد A دامنه را به IP سرور جدید تغییر میدهید. برای VPS، وقتی از CDN استفاده میکنید یا ایمیل را جای دیگری میزبانی میکنید، روش مناسبتری است.
DNS و ایمیل
ایمیل بیش از هر سرویس دیگری به DNS وابسته است:
- MX تعیین میکند ایمیلهای دامنه به کدام سرور تحویل شوند.
- SPF (رکورد TXT) مشخص میکند کدام سرورها مجاز به ارسال ایمیل از طرف دامنهاند.
- DKIM امضای دیجیتال ایمیلها را با کلید منتشرشده در DNS تأیید میکند.
- DMARC به سرور گیرنده میگوید با ایمیلهایی که SPF یا DKIM را رد میکنند چه کند.
بدون این سه رکورد، احتمال رفتن ایمیلهای شما به پوشه اسپم بسیار بالاست.
بررسی و رفع مشکلات DNS
برای بررسی رکوردها از ابزارهای خط فرمان استفاده کنید:
dig example.com A +short
dig example.com MX +short
dig @1.1.1.1 example.com A
nslookup example.com
در ویندوز، nslookup در دسترس است. مشکلات رایج:
- سایت روی بعضی اینترنتها باز میشود و روی بعضی نه: کش DNS هنوز منقضی نشده؛ صبر کنید یا کش DNS سیستم را پاک کنید.
- دامنه به سرور قدیمی میرود: رکورد A یا NS را بررسی کنید و ببینید رکورد در سرور Authoritative درست است یا نه.
- ایمیلها نمیرسند: رکورد MX و SPF را بررسی کنید.
- گواهی SSL صادر نمیشود: دامنه هنوز به سرور جدید اشاره نمیکند یا رکورد CAA مانع صدور است.
امنیت DNS
- برای حساب پنل دامنه رمز قوی و احراز هویت دومرحلهای فعال کنید؛ کسی که DNS شما را کنترل کند، سایت و ایمیل شما را کنترل میکند.
- DNSSEC پاسخهای DNS را امضا میکند تا جعل آنها ممکن نباشد. اگر ثبتکننده دامنه و سرویس DNS از آن پشتیبانی میکنند، فعالش کنید.
- رکوردهای قدیمی که به سرویسهای حذفشده اشاره میکنند را پاک کنید؛ ممکن است مهاجم آن سرویس را تصاحب کند.
سوالات متداول
DNS چیست؟
سامانهای که نام دامنه را به آدرس IP سرور تبدیل میکند تا مرورگر بداند به کجا وصل شود.
چرا بعد از تغییر DNS سایت بالا نمیآید؟
Resolverها نسخه قدیمی را تا پایان TTL کش کردهاند. تغییر رکورد A معمولاً در چند دقیقه تا چند ساعت و تغییر NS ممکن است تا ۴۸ ساعت اعمال شود.
تفاوت رکورد A و CNAME چیست؟
رکورد A نام را مستقیماً به IP وصل میکند؛ CNAME نام را به یک نام دیگر ارجاع میدهد و IP از رکورد A آن نام خوانده میشود.
کدام DNS عمومی سریعتر است؟
به محل و اپراتور اینترنت شما بستگی دارد. DNS اپراتور معمولاً نزدیکترین است، اما سرویسهایی مثل ۱.۱.۱.۱ و ۸.۸.۸.۸ گزینههای رایج هستند.
میزبانی سایت با تنظیم ساده DNS
با هاستهای تراست هاست دامنه خود را متصل کنید و برای راهنمایی بیشتر به مستندات تراست هاست مراجعه کنید. راهنمای Cloudflare درباره DNS هم برای مطالعه بیشتر مفید است.