
دستور nslookup یکی از مهمترین ابزارهای خط فرمان برای بررسی و عیبیابی سیستم نام دامنه (DNS) است. با استفاده از این ابزار میتوانید بفهمید یک دامنه به چه IP ای اشاره میکند، روی چه نیمسرورهایی قرار دارد، رکوردهای ایمیل آن چیست و آیا تنظیمات Reverse DNS آن صحیح است یا نه.
در این راهنمای جامع، بهصورت عملی و دقیق یاد میگیرید که چگونه از nslookup برای بررسی دامنهها، سرورها، ایمیل و مشکلات DNS استفاده کنید.
nslookup چیست ؟
nslookup یک ابزار خط فرمان است که برای کشف آدرس IP یا رکوردهای DNS یک نام دامنه خاص استفاده میشود. این ابزار همچنین امکان جستجوی معکوس DNS را فراهم میکند تا بتوانید دامنهای که به یک IP متصل است را پیدا کنید.
این ابزار در تمام سیستمعاملها در دسترس است:
- ویندوز (Command Prompt)
- لینوکس
- macOS
با nslookup میتوانید:
- IP دامنه را پیدا کنید
- نیمسرورها را بررسی کنید
- سرور ایمیل دامنه را ببینید
- Reverse DNS را تست کنید
- مشکلات عدم لود سایت یا ایمیل را ریشهیابی کنید
انواع رکوردهای DNS در nslookup
| رکورد | کاربرد |
| A | اتصال دامنه به IPv4 |
| AAAA | اتصال دامنه به IPv6 |
| CNAME | دامنه مستعار |
| NS | نیمسرورها |
| MX | سرورهای ایمیل |
| TXT | اطلاعات متنی (SPF, DKIM و…) |
| PTR | Reverse DNS |
| SOA | سرور اصلی دامنه |
| SRV | سرویسهای شبکه (LDAP, Kerberos و…) |
کاربردهای دستور nslookup
دستور nslookup یکی از ابزارهای کلیدی برای مدیران سایت و سرور است که امکان بررسی دقیق رکوردهای DNS یک دامنه و اطمینان از صحت اتصال آن به سرور را فراهم میکند. با استفاده از این دستور میتوان مشخص کرد آیا دامنه به آدرس IP درستی اشاره میکند یا خیر، نیمسرورها بهدرستی پاسخ میدهند یا نه و آیا کاربران از نقاط مختلف اینترنت به یک مقصد واحد هدایت میشوند. این قابلیت بهویژه زمانی اهمیت پیدا میکند که وبسایت در دسترس نیست، سرعت لود کاهش یافته یا برخی کاربران قادر به باز کردن سایت نیستند. در چنین شرایطی، nslookup به شما کمک میکند ریشه مشکل را در لایه DNS شناسایی کرده و از صحت عملکرد زیرساخت دامنه و سرور اطمینان حاصل کنید.
نحوه نصب و فعالسازی دستور nslookup
ابزار nslookup بهصورت پیشفرض روی اغلب سیستمعاملها، از جمله ویندوز و بسیاری از توزیعهای لینوکس، نصب است. به همین دلیل معمولاً نیازی به نصب دستی آن ندارید.
با این حال اگر هنگام اجرای دستور nslookup با خطای
command not found یا nslookup is not recognized مواجه شدید، باید آن را بهصورت دستی نصب یا فعال کنید.
نصب nslookup در Ubuntu و Debian
sudo apt-get install dnsutilsنصب nslookup در CentOS و Red Hat
sudo yum install bind-utilsنصب nslookup در Fedora
sudo dnf install bind-utilsنصب nslookup در Arch Linux
pacman -Sy dnsutilsnslookup در ویندوز
در ویندوز، nslookup بهصورت پیشفرض همراه سیستمعامل نصب است و نیازی به دانلود یا نصب جداگانه ندارد.
برای استفاده از آن کافی است:
- کلیدهای Win + R را بزنید.
- عبارت cmd را وارد کرده و Enter بزنید.
در پنجره Command Prompt، دستور زیر را اجرا کنید:
nslookupاگر دستور اجرا شد و نام سرور DNS و یک علامت > نمایش داده شد، یعنی nslookup روی سیستم شما فعال است.
در صورتی که در ویندوز با خطای عدم شناسایی nslookup مواجه شدید (که بسیار نادر است)، معمولاً مشکل از خراب بودن فایلهای سیستمی یا تنظیمات PATH است و با اجرای دستور زیر در PowerShell (با دسترسی Administrator) قابل رفع است:
sfc /scannow
بعد از اطمینان از نصب و فعال بودن دستور nslookup، میتوانید با مثالهای عملی، بررسی رکوردهای DNS، IP دامنه و تنظیمات ایمیل را آغاز کنید.
نحوه استفاده از دستور nslookup
میتوانید nslookup را تقریباً در هر سیستمعاملی اجرا کنید، مانند Command Prompt ویندوز یا Terminal در لینوکس و macOS.
nslookup دو حالت دارد: تعاملی (Interactive) و غیرتعاملی (Non-interactive).
- حالت تعاملی به شما اجازه میدهد چندین درخواست مختلف ارسال کنید.
- حالت غیرتعاملی فقط یک نتیجه درباره دامنه یا هاست میدهد.
برای ورود به حالت تعاملی:
nslookupبرای حالت غیرتعاملی:
nslookup domain.comدر این حالت میتوانید دامنه و نوع رکورد یا DNS سرور را در همان خط مشخص کنید.
| استفاده از دستور nslookup با مرورگرمیتوانید سرورهای DNS را مستقیماً از مرورگر خود با استفاده از ابزارهای آنلاین شبکه مانند ping.eu یا nslookup.io بررسی کنید. |
لیست دستورات nslookup
انواع مختلفی از دستورات nslookup برای دریافت اطلاعات دامنه وجود دارد. پرکاربردترین آنها عبارتاند از:
- name – نمایش اطلاعات دامنه یا هاستنیم با استفاده از سرور پیشفرض
- server name – تنظیم DNS سرور جدید
- root – تنظیم سرور ریشه بهعنوان سرور پیشفرض
- set type= – پرسوجوی نوع خاصی از رکورد مانند A، MX، PTR یا SOA
- set debug – نمایش جزئیات فنی هر درخواست و پاسخ
- set recurse – درخواست از DNS برای پرسوجو از سایر سرورها
- help – نمایش راهنمای دستورات
- exit – خروج از nslookup
بررسی IP دامنه (A Record)
nslookup mashhadhost.comیا با DNS خاص:
nslookup mashhadhost.com 8.8.8.8بررسی نیمسرورها (NS Record)
nslookup -q=ns mashhadhost.comاین دستور نشان میدهد دامنه روی کدام NameServerها تنظیم شده است.
بررسی سرور ایمیل (MX Record)
nslookup -q=MX mashhadhost.comاگر ایمیل دامنه کار نمیکند، اولین چیزی که باید بررسی شود همین رکورد است.
بررسی رکوردهای TXT (SPF, DKIM, DMARC)
nslookup -q=TXT mashhadhost.comاین رکوردها برای جلوگیری از اسپم شدن ایمیل بسیار حیاتی هستند.
Reverse DNS و رکورد PTR
برای بررسی اینکه IP به چه دامنهای اشاره میکند:
nslookup 185.165.xxx.xxxیا:
nslookup -q=ptr xxx.xxx.xxx.xxx.in-addr.arpaReverse DNS برای تحویل صحیح ایمیلها الزامی است. اگر PTR تنظیم نباشد، بسیاری از سرورها ایمیل را Reject میکنند.
به همین دلیل، در سرویسهای حرفهای مثل VPS و سرور اختصاصی مشهدهاست، IP اختصاصی و PTR قابل تنظیم است.
رکوردهای SRV (ویژه Active Directory و ایمیل سازمانی)
برای Kerberos:
nslookup -q=srv _kerberos._tcp.domain.comبرای LDAP:
nslookup -q=srv _ldap._tcp.domain.comاین رکوردها برای سرویسهای شبکهای سازمانی ضروریاند.
استفاده از DNS با پورت غیر 53
اگر DNS روی پورت خاصی کار میکند:
nslookup -port=5353 mashhadhost.com 192.168.1.1نمایش اطلاعات فنی (Debug Mode)
nslookup -debug mashhadhost.comاین دستور تمام جزئیات پاسخ DNS را نمایش میدهد و برای مدیران سرور بسیار ارزشمند است.
پاسخ Non-Authoritative چیست؟
یعنی پاسخ از کش DNS آمده نه از سرور اصلی دامنه.
برای دریافت پاسخ واقعی:
nslookup -q=soa mashhadhost.comسپس نام سرور اصلی را برداشته و کوئری را روی آن اجرا کنید.
آیا دستور nslookup برای بررسی کندی بارگذاری سایت مفید است؟
بله، دستور nslookup یکی از مؤثرترین ابزارها برای شناسایی دلایل پنهان کندی بارگذاری وبسایت است؛ بهخصوص زمانی که مشکل از لایه DNS باشد، نه از خود سرور. در بسیاری از موارد، وقتی یک سایت دیر لود میشود، ریشه مشکل این است که مرورگر کاربر زمان زیادی را صرف تبدیل نام دامنه به آدرس IP از طریق DNS میکند. اگر رکوردهای DNS بهدرستی تنظیم نشده باشند یا دامنه به سرور اشتباهی اشاره کند، این تأخیر میتواند چندین ثانیه به زمان لود سایت اضافه کند.
مثال ۱ – بررسی سرعت پاسخ DNS دامنه با دستور nslookup
فرض کنید کاربران گزارش میدهند سایت example.com کند باز میشود. اولین قدم این است که بررسی کنیم دامنه به چه IPای وصل شده است:
nslookup example.comاگر اجرای این دستور چند ثانیه طول بکشد یا چند IP مختلف نمایش داده شود، معمولاً نشانه یکی از این موارد است:
- کند بودن DNS
- تنظیم نادرست Load Balancing
- ناسازگاری کش DNS در اینترنت کاربران
در چنین شرایطی، مشکل بیشتر در زیرساخت DNS است تا در هاست یا سرور.
مثال ۲ – مقایسه DNSهای مختلف با دستور nslookup
برای بررسی اینکه آیا کندی از DNS سرویسدهنده اینترنت کاربران است یا نه، میتوان دامنه را از طریق DNSهای عمومی تست کرد:
(گوگل DNS):
nslookup example.com 8.8.8.8(Cloudflare DNS):
nslookup example.com 1.1.1.1اگر پاسخ یکی از این DNSها سریع و دیگری کند باشد، مشخص میشود مشکل از DNS ISP کاربران است، نه از سرور سایت شما.
| پیشنهاد مطالعه: راهنمای جامع تنظیمات DNS کارت شبکه |
مثال ۳ – بررسی اتصال دامنه به سرور صحیح
گاهی پس از جابهجایی سرور یا تغییر هاست، دامنه هنوز برای بخشی از کاربران به IP قدیمی اشاره میکند. با دستور زیر میتوان این موضوع را بررسی کرد:
nslookup example.comاگر IP نمایشدادهشده با IP سرور فعلی شما یکسان نباشد، یعنی برخی کاربران هنوز به سرور قبلی هدایت میشوند و همین مسئله باعث کندی، خطا یا اختلاف در محتوای سایت خواهد شد.
مثال ۴ – بررسی پاسخ Non-Authoritative در nslookup
اگر خروجی دستور nslookup شامل عبارت زیر باشد:
Non-authoritative answerیعنی پاسخ از کش DNS دریافت شده و ممکن است قدیمی باشد. این موضوع باعث میشود بعضی کاربران به مسیرهای اشتباه یا کند هدایت شوند.
برای دریافت پاسخ واقعی از سرور اصلی دامنه، از این دستور استفاده کنید:
nslookup -q=soa example.comسپس نام سرور اصلی (Primary Nameserver) را برداشته و کوئری را مستقیماً روی آن اجرا کنید تا پاسخ authoritative دریافت شود.
جمعبندی: نقش دستور nslookup در افزایش سرعت سایت
اگر وبسایت شما:
- دیر باز میشود
- برای بعضی کاربران سریع و برای بعضی کند است
- CDN بهدرستی عمل نمیکند
- یا بعد از تغییر سرور دچار رفتارهای غیرعادی شده
اولین و مهمترین اقدامی که باید انجام دهید، بررسی DNS با دستور nslookup است. در بسیاری از مواقع، مشکل نه از منابع سرور است و نه از هاست، بلکه از تنظیمات یا عملکرد DNS ناشی میشود؛ و nslookup دقیقترین ابزار برای شناسایی این وضعیت است.
جمعبندی
nslookup یک ابزار خط فرمان برای دریافت اطلاعات یک دامنه، از جمله آدرس IP و رکورد DNS آن است. با استفاده از دستورات مختلف nslookup، اطلاعات متفاوتی درباره دامنه خود دریافت خواهید کرد. این امر میتواند در عیبیابی مشکلات مرتبط با DNS به شما کمک کند.
اگر مدیر سایت، سرور، ایمیل سازمانی یا هاست هستید، nslookup ابزار اصلی شما برای فهمیدن این است که:
- دامنه دقیقاً به کجا وصل است
- ایمیل چرا کار نمیکند
- DNS چرا به IP اشتباه اشاره دارد
- Reverse DNS تنظیم است یا نه
سوالات متداول درباره nslookup
تفاوت nslookup و ping چیست؟
ping بررسی میکند آیا یک IP قابل دسترسی است یا نه.
nslookup اطلاعات DNS دامنه را ارائه میدهد.
اگر دستور nslookup چند IP نشان دهد یعنی چه؟
دامنه پشت CDN است یا Load Balancing دارد.
آیا nslookup روی ویندوز نصب است؟
بله، بهصورت پیشفرض در ویندوز موجود است و نیازی به نصب ندارد.
کاربردهای دستور nslookup چیست؟
بررسی IP، نیمسرورها، رکوردهای ایمیل، عیبیابی DNS و کندی سایت.
این پست چقدر مفید بود؟
برای رتبه بندی روی یک ستاره کلیک کنید!
میانگین رتبه 0 / 5. تعداد آرا: 0
تاکنون هیچ رایی به دست نیامده است! اولین نفری باشید که این پست را رتبه بندی می کند.



