برای بررسی DNS در ویندوز، PowerShell یا Command Prompt را باز کنید و nslookup -type=A example.com را اجرا کنید. نام دامنهٔ خودتان را جای example.com بگذارید. با تغییر نوع رکورد به MX، TXT یا NS میتوانید پاسخ مربوط به ایمیل، تأیید مالکیت یا نیمسرورها را بخوانید.
این راهنما برای وقتی است که میخواهید بدانید یک DNS مشخص چه پاسخی برای دامنه میدهد. داشتن IP در خروجی، بهتنهایی سالمبودن سایت، SSL یا ارسال ایمیل را ثابت نمیکند. اگر اصطلاحات تازهاند، ابتدا توضیح سادهٔ DNS و رکوردها را بخوانید.
۱. قبل از اجرای دستور چه چیزی لازم است؟
- ویندوز دارای ابزار
nslookup، ترمینال و اتصال شبکه. - نام دقیق مورد بررسی؛ مثلاً دامنهٔ اصلی،
www.example.comیا نام رکورد تأیید. - نوع رکورد و مقدار مورد انتظار از پنل یا راهنمای سرویس؛ بدون این معیار، نمیتوان گفت پاسخ درست است.
در منوی Start، عبارت PowerShell را جستوجو و برنامه را باز کنید. برای پرسوجوهای این آموزش معمولاً اجرای ترمینال با دسترسی Administrator لازم نیست. قالب دستور مطابق مستند nslookup مایکروسافت است.
دامنهٔ نمونه:
example.comبرای توضیح دستورها آمده است. رکوردهای آن را الگوی تنظیم سایت خودتان قرار ندهید. در نام مقصد،https://، مسیر صفحه یا شمارهٔ پورت وب وارد نکنید.
۲. رکورد A را بگیرید و خروجی را درست بخوانید
nslookup -type=A example.com
این دستور از DNS پیشفرض میپرسد نام موردنظر چه پاسخ IPv4 دارد. در خروجی، دو قسمت را از هم جدا کنید:
Server: resolver.example.net
Address: 192.0.2.53
Non-authoritative answer:
Name: example.com
Address: 203.0.113.20| قسمت خروجی | چه چیزی را نشان میدهد؟ |
|---|---|
Server و Address ابتدای خروجی |
سرور DNS پاسخدهنده؛ این آدرس را با IP مقصد سایت اشتباه نگیرید. |
Name و آدرسهای بخش پاسخ |
نام و IPهای برگشتی برای پرسوجوی شما؛ آنها را با مقدار مورد انتظار مقایسه کنید. |
Non-authoritative answer |
پاسخ مستقیماً با پرچم مرجع دامنه ارائه نشده؛ این عبارت بهتنهایی خطا نیست. |
تفاوت پاسخ مرجع و پاسخ غیرمرجع در تعریف پرچم AA در استاندارد DNS آمده است. اگر ابتدای خروجی Unknown دیدید ولی پاسخ دامنه دریافت شد، فقط از نامِ نامشخص DNS نتیجه نگیرید که پرسوجو شکست خورده است.
ملاک عملی: رکورد را با مشخصات همان سرویس تطبیق دهید. اگر چند IP برمیگردد، فهرست را بررسی کنید؛ صرفِ متفاوتبودن دو آدرس نشانهٔ خرابی نیست.
۳. نوع رکورد را متناسب با مسئله انتخاب کنید
برای سؤال «سایت کجا میرود؟» و سؤال «ایمیل کجا تحویل میشود؟» یک پاسخ واحد کافی نیست. کاربرد انواع رکورد در مرجع رکوردهای DNS کلادفلر توضیح داده شده است.
| رکورد | به دنبال چه پاسخی هستیم؟ |
|---|---|
| A / AAAA | آدرس IPv4 / IPv6 برای نام مشخص. |
| MX | نام مقصد دریافت ایمیل و اولویت آن؛ مقدار اولویت کمتر، ترجیح بیشتری دارد. |
| TXT | رشتهٔ متنی، مانند تأیید مالکیت یا سیاست ایمیل. |
| NS | نیمسرورهای گزارششده برای نام دامنه؛ این پرسوجو ممیزی کامل واگذاری دامنه نیست. |
| CNAME | نام مقصدِ یک نام مستعار؛ آن را برای نام دقیق زیردامنه بررسی کنید. |
مثلاً برای دیدن IPv6:
nslookup -type=AAAA example.com
برای بررسی مقصد دریافت ایمیل، نام دامنهٔ ایمیل را وارد کنید؛ نه آدرس کامل صندوق:
nslookup -type=MX example.com
برای TXT و NS:
nslookup -type=TXT example.com
nslookup -type=NS example.com
رکوردی که سرویس برای _dmarc.example.com خواسته، با پرسیدن TXT خود example.com بررسی نمیشود. نامِ رکورد باید دقیق باشد:
nslookup -type=TXT _dmarc.example.com
برای CNAME یک زیردامنه:
nslookup -type=CNAME www.example.com
نبود پاسخ CNAME الزاماً به معنی خراببودن سایت نیست؛ آن نام ممکن است A/AAAA داشته باشد. همچنین دیدن MX، تحویل موفق ایمیل را ثابت نمیکند و دیدن TXT، تأییدشدن دامنه داخل سرویس مقصد را تضمین نمیکند.
۴. پاسخ را از یک DNS مشخص بپرسید
برای مقایسهٔ پاسخ، آدرس DNS را آرگومان آخر قرار دهید:
nslookup -type=A example.com 1.1.1.1
1.1.1.1 یکی از آدرسهای resolver عمومی کلادفلر است. این دستور فقط مقصد همان پرسوجو را مشخص میکند؛ تنظیم DNS ویندوز یا رکورد دامنه را عوض نمیکند. نام پرسیدهشده برای آن resolver ارسال میشود، بنابراین نامهای خصوصی شبکهٔ شرکت را به DNS عمومی نفرستید.
- نوع رکورد و نام را در هر دو دستور یکسان نگه دارید.
- یک بار از DNS پیشفرض و یک بار از DNS مشخص بپرسید.
- زمان بررسی، DNS پاسخدهنده و مجموعهٔ مقادیر را ثبت کنید.
- اگر تفاوت وجود دارد، پیش از تغییر تنظیمات علت را مشخص کنید.
دو پاسخ یکسان فقط دربارهٔ همان دو پرسوجو به شما اطلاعات میدهند؛ از آن نتیجه نگیرید که تمام اینترنت پاسخ یکسان دارد. در شبکههایی که دسترسی به DNS بیرونی محدود است، پرسوجوی مستقیم ممکن است timeout شود.
۵. اختلاف پاسخها را با زمان و نوع سرویس بسنجید
کش یکی از علتهای اختلاف است. TTL مشخص میکند پاسخ چه مدت قابل نگهداری در کش باشد؛ به معنی زمان تضمینیِ دیدهشدن تغییر در همهٔ شبکهها نیست. برای تفسیر این بخش، مستند TTL و راهنمای TTL رایکت مفیدند.
پروکسی را هم بررسی کنید. اگر رکورد در Cloudflare حالت Proxied داشته باشد، پاسخ عمومی میتواند IPهای کلادفلر باشد؛ انتظار نمایش IP اصلی هاست درست نیست. رفتار این حالت در مستند وضعیت پروکسی توضیح داده شده است.
قبل از نتیجهگیری، بپرسید: آیا نامها یکیاند؟ آیا A را با AAAA مقایسه کردهام؟ آیا مقدار مورد انتظار مربوط به رکورد عمومی است؟ این سه بررسی، از تغییر بیدلیل یک رکورد سالم جلوگیری میکنند.
از مشاهده به تغییر نپرید: متفاوتبودن خروجی دو DNS بهتنهایی مجوز پاککردن MX، تغییر نیمسرور یا خاموشکردن DNSSEC نیست. ابتدا نام دقیق، نوع رکورد، مقدار مورد انتظار و زمان تغییر را کنار هم بگذارید.
۶. از متن خطا، قدم بعدی را انتخاب کنید
این جدول مسیر بررسی اولیه است، نه تشخیص قطعی علت. معنای پیامها بر اساس راهنمای خطاهای nslookup مایکروسافت نوشته شده است.
| پیام یا نشانه | بررسی بعدی |
|---|---|
Nonexistent domain |
نام را دوباره بررسی کنید؛ DNS پاسخدهنده اعلام کرده آن نام وجود ندارد. این پیام بهتنهایی ثابت نمیکند خود دامنه ثبت نشده است. |
No records |
ممکن است نام معتبر باشد ولی رکوردِ نوع درخواستی موجود نباشد؛ نوع رکورد را با نیاز خود تطبیق دهید. |
DNS request timed out |
پاسخ در مهلت مقرر نرسیده؛ آدرس DNS و مسیر شبکه را بررسی کنید. از timeout، نبودن دامنه را نتیجه نگیرید. |
Server failure |
سرور DNS نتوانسته پاسخ معتبر ارائه کند؛ علت نیازمند بررسی DNS است، نه حدس و تغییر فوری رکورد. |
Refused |
DNS درخواست را نپذیرفته؛ بررسی کنید سرور انتخابی اجازهٔ پاسخ به این درخواست را دارد. |
برای پشتیبانی، نام عمومی دامنه، نوع رکورد، DNS انتخابی، زمان و متن خطا را بفرستید. نامهای داخلی، IP خصوصی و رشتههای تأیید شخصی را از خروجی مشترک حذف کنید.
۷. وقتی پاسخ DNS را گرفتید، چه کار کنید؟
- مقدار درست است ولی سایت باز نمیشود: بررسی را به سرویس وب، گواهی و مسیر دسترسی ادامه دهید؛ پاسخ DNS فقط یک مرحله است.
- مقدار اشتباه است: ابتدا مشخص کنید DNS دامنه کجا مدیریت میشود و آیا باید نیمسرور یا فقط رکورد A را تغییر دهید. ویرایش در پنل نامرتبط مشکل را حل نمیکند.
- نیاز به تغییر رکورد دارید: اگر نیمسرورهای معتبر دامنه به سیپنل همین هاست اشاره میکنند، با دانستن مقدار مورد انتظار و حفظ مقادیر فعلی از راهنمای Zone Editor سیپنل استفاده کنید. اگر DNS دامنه در سرویس دیگری مدیریت میشود، تغییر در Zone Editor این هاست اثری روی پاسخ عمومی ندارد.

دربارهٔ اعتبار مثالها: نحو دستورهای این مقاله با مستند رسمی مایکروسافت تطبیق داده شده است. نمونهٔ خروجی بالا ساختگی و صرفاً برای آموزش خواندن پاسخ است، نه نتیجهٔ آزمون روی دامنهٔ واقعی. برای تشخیص مشکل سرویس خودتان باید فرمان را روی شبکه و دامنهٔ موردنظر اجرا کنید.
۸. پرسشهای رایج
برای استفاده از nslookup باید وارد سیپنل شوم؟
خیر؛ پرسوجوی رکورد عمومی از ترمینال انجام میشود. برای دانستن مقدار مورد انتظار یا ویرایش رکورد، ممکن است به پنل مدیریت DNS نیاز داشته باشید.
آیا گزینهٔ type رکورد دامنه را عوض میکند؟
خیر؛ نوع سؤال را مشخص میکند. حتی set type=MX در حالت تعاملی فقط نوع پرسوجوی ابزار را عوض میکند؛ مطابق مستند set type، این فرمان ویرایش Zone نیست.
چرا nslookup پاسخ میدهد ولی مرورگر خطا دارد؟
موفقیت یک پرسوجو، موفقیت اتصال مرورگر را ثابت نمیکند. نام دقیق، DNS مورد استفاده و مسیر اتصال را تطبیق دهید؛ سپس مرحلهای را بررسی کنید که واقعاً خطا میدهد.