دامنه

آموزش nslookup در ویندوز؛ بررسی رکوردهای DNS و خواندن خطاها

بررسی رکوردهای DNS با nslookup در ویندوز؛ انتخاب نوع رکورد و DNS پاسخ‌دهنده، خواندن خروجی و تشخیص تفاوت خطا با اختلاف پاسخ.

رایکت رایکت ۷ دقیقه مطالعه ۰ دیدگاه
آموزش nslookup در ویندوز؛ بررسی رکوردهای DNS و خواندن خطاها

برای بررسی 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
نمونهٔ صرفاً آموزشی از شکل خروجی nslookup؛ نام‌ها و IPهای بالا نمونه‌اند و نتیجهٔ یک آزمایش زنده نیستند. سطرهای اول DNS پاسخ‌دهنده و بخش آخر پاسخ رکورد دامنه را نشان می‌دهند.
قسمت خروجی چه چیزی را نشان می‌دهد؟
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 عمومی نفرستید.

  1. نوع رکورد و نام را در هر دو دستور یکسان نگه دارید.
  2. یک بار از DNS پیش‌فرض و یک بار از DNS مشخص بپرسید.
  3. زمان بررسی، DNS پاسخ‌دهنده و مجموعهٔ مقادیر را ثبت کنید.
  4. اگر تفاوت وجود دارد، پیش از تغییر تنظیمات علت را مشخص کنید.

دو پاسخ یکسان فقط دربارهٔ همان دو پرس‌وجو به شما اطلاعات می‌دهند؛ از آن نتیجه نگیرید که تمام اینترنت پاسخ یکسان دارد. در شبکه‌هایی که دسترسی به 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 این هاست اثری روی پاسخ عمومی ندارد.
نمونه محیط Zone Editor سی‌پنل برای مشاهده و مدیریت رکوردهای DNS دامنه
نمونه‌ای از بخش Zone Editor در سی‌پنل؛ فقط در صورتی رکورد را اینجا تغییر دهید که DNS معتبر دامنه واقعاً در این سرویس مدیریت شود.

دربارهٔ اعتبار مثال‌ها: نحو دستورهای این مقاله با مستند رسمی مایکروسافت تطبیق داده شده است. نمونهٔ خروجی بالا ساختگی و صرفاً برای آموزش خواندن پاسخ است، نه نتیجهٔ آزمون روی دامنهٔ واقعی. برای تشخیص مشکل سرویس خودتان باید فرمان را روی شبکه و دامنهٔ موردنظر اجرا کنید.

۸. پرسش‌های رایج

برای استفاده از nslookup باید وارد سی‌پنل شوم؟

خیر؛ پرس‌وجوی رکورد عمومی از ترمینال انجام می‌شود. برای دانستن مقدار مورد انتظار یا ویرایش رکورد، ممکن است به پنل مدیریت DNS نیاز داشته باشید.

آیا گزینهٔ type رکورد دامنه را عوض می‌کند؟

خیر؛ نوع سؤال را مشخص می‌کند. حتی set type=MX در حالت تعاملی فقط نوع پرس‌وجوی ابزار را عوض می‌کند؛ مطابق مستند set type، این فرمان ویرایش Zone نیست.

چرا nslookup پاسخ می‌دهد ولی مرورگر خطا دارد؟

موفقیت یک پرس‌وجو، موفقیت اتصال مرورگر را ثابت نمی‌کند. نام دقیق، DNS مورد استفاده و مسیر اتصال را تطبیق دهید؛ سپس مرحله‌ای را بررسی کنید که واقعاً خطا می‌دهد.

این مطلب برایتان مفید بود؟
رایکت
نوشته شده توسط رایکت

تیم محتوای رایکت؛ آموزش‌ها و راهنماهای کاربردی هاست، دامنه و مدیریت سایت.

مطالب مرتبط

دیدگاه‌ها

نظر یا سوال خود را درباره این مطلب با ما در میان بگذارید

دیدگاه خود را بنویسید

aapanel
cloudlinux
cpanel
directadmin
jetbackup
laravel
mysql
virtualizor
vmware
wordpress