بررسی DNSSEC

بررسی میکند زون دامنه امضا شده است یا نه، و زنجیره اعتماد تا ریشه معتبر است یا نه. DNSSEC نیمه کاره از نبودِ DNSSEC بدتر است، چون resolverهای سختگیر دامنه را یکسره رد میکنند.

ابزار فعال

بررسی DNSSEC

آماده

ابزار دیگری میخواهید؟

از میان ۲۵ ابزار زیر انتخاب کنید

زون امضا شده است یا نه

بررسی DNSSEC سه پرسش را با پرچم DNSSEC و مستقیم به resolver عمومی 1.1.1.1 میفرستد: رکورد DS که در زون والد قرار دارد و اثر انگشت کلید شما را نگه میدارد، رکورد DNSKEY که کلیدهای عمومی زون را دارد، و یک پرسش A برای دیدن پرچم AD. زون وقتی «امضا شده» شمرده میشود که هر دو، DS و DNSKEY، وجود داشته باشند؛ یکی بدون دیگری یعنی زنجیره اعتماد کامل نیست.

این ابزار امضاها را خودش راستیآزمایی نمیکند و صریحاً همین را میگوید. «تأییدشده توسط resolver» یعنی 1.1.1.1 زنجیره را از ریشه تا این زون اعتبارسنجی کرده و پرچم AD را روشن گذاشته. اگر پرسش DS یا DNSKEY بیجواب بماند، نتیجه «بررسی نشد» است، نه «ندارد»؛ ادعای «این دامنه DNSSEC ندارد» فقط وقتی مطرح میشود که هر دو پرسش پاسخ گرفته باشند. سقف ۲۰ درخواست در دقیقه است.

نتیجه را چطور بخوانیم

چهار حالت دارد: «این دامنه با DNSSEC امضا شده است»، «این دامنه DNSSEC ندارد»، «زنجیره DNSSEC شکسته است» (DS در والد هست ولی DNSKEY در زون نیست، یا زنجیره اعتبارسنجی نمیشود؛ این حالت با پرسش دوباره بدون اعتبارسنجی دیده میشود، چون resolver اعتبارسنج به هر پرسش درباره چنین زونی SERVFAIL میدهد)، یا «معلوم نشد». زیر آن جدول DS با key tag، الگوریتم، نوع digest و خودِ digest میآید، و جدول کلیدها با flags (257 برای کلید امضای کلید یا KSK، 256 برای کلید امضای زون یا ZSK)، الگوریتم و اندازه. برای زیردامنه، DS و DNSKEY در رأس زونی که زیردامنه در آن است خوانده میشود و وضعیت همان زون گزارش میشود، چون DNSSEC مال زون است، نه تک تک نامهای آن.

نکته اصلی: DNSSEC نیمه کاره از نبودِ DNSSEC بدتر است. اگر DS در والد ثبت شده ولی با DNSKEY فعلی زون نمیخواند، مثلاً چون DNS را به سرویس دیگری منتقل کرده اید و DS قدیمی در رجیستری مانده، هر resolver اعتبارسنج (و 1.1.1.1، 8.8.8.8 و 9.9.9.9 همه اعتبارسنج اند) دامنه را با SERVFAIL رد میکند و سایت برای بخش بزرگی از اینترنت ناپدید میشود، در حالی که از resolverهای غیراعتبارسنج همچنان باز است. digest در جدول DS همان مقداری است که باید نویسه به نویسه با چیزی که در پنل رجیستری ثبت کرده اید یکی باشد. اگر DS دارید و DNSKEY نه، یا «تأیید resolver» خیر است در حالی که امضا شده، همین حالت است.

چه وقت به کار میآید

بعد از انتقال DNS به سرویس جدید، اگر سایت از بعضی شبکه ها باز نمیشود و بررسی DNS برایش SERVFAIL میدهد: اینجا ببینید DS کهنه ای در والد مانده است یا نه. راه حل یا حذف DS قدیمی از پنل رجیستری است یا ثبت DS تازه که سرویس جدید میدهد.

پیش از فعال کردن DNSSEC از رجیسترار بپرسید پشتیبانی میکند؛ بعد از فعال کردن، ردیف DNSSEC در استعلام WHOIS نشان میدهد DS نزد رجیستری ثبت شده یا نه (برای دامنه های ir این ردیف خالی میماند)، و با همین ابزار هم تأیید کنید که زنجیره کامل است و در گزارش کامل وضعیت DNSSEC را کنار بقیه بخشها ببینید. اگر رکوردهای CAA یا TXT شما «پرسوجو ناموفق بود» میخورند، DNSSEC شکسته یکی از مظنونان اصلی است.

پرسشهای رایج

DNSSEC چیست و چه کار میکند؟

امضای رمزنگاری شده پاسخهای DNS، به طوری که resolver بتواند مطمئن شود پاسخ از زون واقعی آمده و در مسیر تغییر نکرده. زنجیره اعتماد از ریشه، به زون والد (DS) و به کلید زون شما (DNSKEY) میرسد. DNSSEC محتوا را رمز نمیکند و پنهان کاری نمیکند؛ فقط جلوی پاسخ جعلی را میگیرد.

چرا DNSSEC نیمه کاره بدتر از نداشتن آن است؟

چون زون بدون DNSSEC را همه قبول میکنند، ولی زونی که DS دارد و امضایش با آن نمیخواند، از نظر resolverهای اعتبارسنج جعلی است و با SERVFAIL رد میشود. Cloudflare، Google و Quad9 و بسیاری از resolverهای اپراتورها اعتبارسنج اند، پس سایت برای بخش بزرگی از کاربران ناپدید میشود در حالی که از resolverهای دیگر باز است و عیبیابی را گمراه میکند.

رکورد DS و DNSKEY چه فرقی دارند؟

DNSKEY کلید عمومی زون شماست و در زون خودتان قرار دارد. DS اثر انگشت (digest) آن کلید است و در زون والد، یعنی نزد رجیستری، ثبت میشود؛ همین است که زنجیره را از والد به شما وصل میکند. وقتی کلید را تغییر میدهید یا DNS را منتقل میکنید، DS در رجیستری هم باید عوض شود.

«تأیید توسط resolver» یعنی چه؟

یعنی resolver عمومی 1.1.1.1 که پرسش به آن فرستاده شد، خودش زنجیره اعتماد را از ریشه تا این زون بررسی کرده و پرچم AD را در پاسخ روشن گذاشته. این ابزار امضاها را خودش راستیآزمایی نمیکند و این خانه همان نتیجه resolver است. اگر زون امضا شده و این خانه «خیر» است، احتمالاً زنجیره جایی شکسته.

محدودیتها. ابزارهای DNS، WHOIS و SSL تا سقف ۲۰ درخواست در دقیقه به ازای هر نشانی آی پی در دسترس هستند. ابزارهای Ping، Traceroute و MTR به دلیل ارسال بسته واقعی به مقصد، سقف ۶ درخواست در دقیقه دارند.

بررسی پورت تنها روی نشانی آی پی خود کاربر اجرا میشود. این محدودیت به صورت عمدی اعمال شده است؛ پرسش متداول کاربران «آیا پورت موردنظر از بیرون قابل دسترسی است؟» با همین امکان پاسخ داده میشود و در عین حال، امکان استفاده از این سرور برای پویش شبکه دیگران وجود نخواهد داشت.

نشانیهای خصوصی و رزروشده. این نشانیها برای ابزارهایی که واقعاً به مقصد متصل میشوند، گواهی SSL، Ping، Traceroute، MTR و بررسی پورت، پذیرفته نمیشوند. ابزارهای DNS این محدودیت را ندارند، زیرا تنها از یک سرور نام پرسوجو میکنند و هیچگاه به خودِ آن نشانی وصل نمیشوند.