اگر وارد صفحه ای در اینترنت شدید و پیامی مبنی بر عدم وجود دامنه مشاهده نمودید، نشان دهنده NXDOMAIN می باشد. در ادامه بیشتر به این موضوع پرداخته می شود و هر آنچه که باید در مورد این خطا بدانید شرح داده شده است. NXDOMAIN مخفف non-existent domain به معنی "دامنه ناموجود" می باشد و نشان دهنده یک پیام خطای DNS است که وقتی دامنه درخواستی نمی تواند به یک آدرس IP ترجمه شود توسط سرور Recursive DNS (کلاینت) دریافت می گردد. به عبارت دیگر، پیام خطای NXDOMAIN به سادگی نشان می دهد که دامنه وجود ندارد.
اگر با تصاویری که نشان دهنده عدم وجود دامنه هستند در اینترنت مواجه شدید، می توانید نتیجه بگیرید که مرورگر شما با خطای NXDOMAIN روبرو شده است. این روش مستقیما به کاربر اطلاع می دهد که «هیچ پاسخی برای سوالتان وجود ندارد». در اصطلاح فنی، این نوع خطا نشان می دهد که نام دامنه مشخص شده در کوئری سیستم نام دامنه (DNS) وجود ندارد. بنابراین، فقط یک سرور نام معتبر (Authoritative nameserver) می تواند پاسخ NXDOMAIN را برگرداند.
در غیر این صورت، اگر نام دامنه وجود داشته باشد، nameserver ها و سرورهای Recursive DNS با یکدیگر هماهنگ می شوند تا پاسخ مثبت NOERROR را برگردانند. علاوه بر این، آدرس IP دقیق نیز در پاسخ به کوئری DNS بازگردانده می شود. همچنین امکان دریافت پاسخ NOERROR به تنهایی وجود دارد. این موضوع زمانی اتفاق می افتد که نام دامنه واقعا وجود داشته باشد اما نوع رکورد DNS درخواستی موجود نیست.
تصویر(1)
تاثیر خطاهای NXDOMAIN
در ادامه بررسی خواهد شد که چرا این خط می تواند برای همه افراد درگیر از جمله کاربران و مدیران وب سایت، دردسرساز باشند. تصور کنید که در حال رانندگی هستید اما ناگهان یک تابلوی تغییر مسیر مشاهده می کنید. خطاهای NXDOMAIN مانند آن تابلوهای تغییر مسیر غیرمنتظره در دنیای دیجیتال هستند که برنامه ریزی ها را به هم می ریزند و باعث می شوند افراد به دردسر بیفتند. این خطاها می توانند در موارد زیر تأثیرگذار باشند:
- برای کاربران: تصور کنید که در اینترنت به گشت و گذار می پردازید و به دنبال مطلب جالبی هستید که ناگهان خطای NXDOMAIN رخ می دهد. این موضوع مانند برخورد با یک مانع در سفر آنلاین شما خواهد بود و وقتی جاده مورد علاقهتان بسته میشود ناامید کننده خواهد بود. برخی کاربران ممکن است تسلیم شوند و از وب سایت خارج گردند. همچنین اگر این اتفاق ادامه پیدا کند، کاربران تصور می کنند که وب سایت وضعیت بدی را سپری می نماید که این موضوع برای هیچ کس جالب نیست.
- برای وبسایتها: اکنون تصور کنید که یک وبسایت یا کسبوکار آنلاین را اداره میکنید. خطای NXDOMAIN به این معنی است که افراد نمی توانند با شما ارتباط برقرار کنند و منجر به از دست رفتن مشتریان احتمالی، درآمد و اعتبار وب سایت می شود. همچنین موتورهای جستجو متوجه می شوند که سایت شما به خوبی عمل نمی کند که بر نمایش آن در دنیای آنلاین تاثیر منفی خواهد داشت. اگر مشتریان نتوانند به وب سایت تان اعتماد کنند، ممکن است دبه وب سایت دیگری رجوع کنند.
NXDOMAIN در مرورگرهای مختلف
هر روز کاربران از طریق مرورگرهای مختلف در اینترنت جستجو می کنند. DNS (سیستم نام دامنه) مسئول اتصال نام دامنه های درخواستی به آدرس های IP مربوطه (IPv4 یا IPv6) است. این فرآیند به عنوان "ترجمه DNS" یا DNS resolution نیز شناخته می شود. در صورت موفقیت آمیز بودن فرآیند، کاربران به وب سایت های موردنظر هدایت خواهند شد. با این حال، اگر DNS نتواند یک کاربر خاص را متصل کند، پیام خطای NXDOMAIN را برمی گرداند.
هر مرورگر روش اختصاصی خود را برای نشان دادن این خطا دارد. در ادامه نحوه نمایش آن در چهار مرورگر محبوب ذکر شده است:
- گوگل کروم: در این مرورگر، خطا به راحتی قابل مشاهده است. یک پیام خطای «DNS_PROBE_FINISHED_NXDOMAIN» و اعلان The site cannot be reached در صفحه نشان داده میشود. البته از طریق یک دکمه آبی، می توانید وب سایت را مجددا بارگذاری کنید.
تصویر(2)
- موزیلا فایرفاکس: در فایرفاکس، توضیحی مشاهده خواهید کرد که وجود مشکل در یافتن وب سایت و عدم برقراری ارتباط با سرور را نشان می دهد. علاوه بر این، سه پیشنهاد ساده برای حل مشکل و یک دکمه بارگذاری مجدد در صفحه نمایش داده می شود.
تصویر(3)
- مایکروسافت اج: مرورگر اج، پیغام «Hmmm… can't reach this page» را به اطلاع می رساند. در اینجا نیز چندین پیشنهاد برای حل مشکل مشاهده خواهید کرد.
تصویر(4)
- مرورگر سافاری: در این مرورگر، فقط عبارت "Safari can’t find the page example.com because Safari can’t find the server of example.com" نمایش داده می شود.
تصویر(5)
کاربران چگونه موجب ایجاد خطای NXDOMAIN می شوند؟
مطمئنا مشاهده پیام خطای NXDOMAIN، عالی و مطلوب نیست. با این حال، می تواند برای افشای مجرمانی که قصد سرقت مالکیت معنوی سازمان شما را دارند، مفید باشد. پاسخهای داخلی NXDOMAIN زمانی ظاهر میشوند که یک DNS (سیستم نام دامنه) هیچ پاسخی برای دامنه درخواستی نداشته باشد. یک کاربر در شبکه، به دلایل زیر می تواند موجب ایجاد NXDOMAIN شود:
- کاربر هنگام تلاش برای بازدید از یک وب سایت خاص، اشتباه تایپی داشته باشد.
- اپلیکیشن کلاینت، پیکربندی نادرستی دارد.
- مرورگر هنگام شروع کار، به دامنههای محلی تصادفی دسترسی پیدا میکند تا رفتار hijacking یا "سرقت" را تشخیص دهد.
- دستگاه با استفاده از یک الگوریتم تولید دامنه (domain-generating algorithm یا DGA) برای مشارکت در بات نت، به یک ربات آلوده می شود.
دریافت خطای NXDOMAIN نشان چیست؟
دریافت مداوم پیام های NXDOMAIN، می تواند نشانه اولیه مشکلات شبکه یا نقص های امنیتی باشد. بنابراین، جهت بررسی خطاهای DNS برای یافتن مشکلات امنیتی و عملکرد شبکه، به اطلاعات کاملی از لاگهای DNS نیاز دارید. با تجزیه و تحلیل داده ها، می توانید جزئیات بیشتری در مورد دلیل اصلی درخواست های ناموفق DNS پیدا کنید.
در ادامه آنچه که می توان از این اطلاعات به دست آورد ذکر شده اند:
- Beaconing
بدافزار Beaconing، به مجرمان سایبری این امکان را می دهد تا متوجه شوند که با موفقیت یک سیستم را آلوده کرده اند. پس از آن، می توانند دستورات را ارسال کرده و یک حمله مخرب را آغاز کنند. معمولاً این اولین نشانه حملات انکار سرویس توزیع شده (DDoS) است.
میزبان آلوده به بدافزار، از درخواستهای DNS معمولی برای پنهان کردن خود استفاده میکند. در نتیجه، سیگنالهای بین بدافزار و سرور command-and-control (دستور و کنترل) مشابه ارتباطات شبکه معمولی هستند. بنابراین، خطاهای مکرر NXDOMAIN می توانند نشان دهنده آلوده بودن یک میزبان باشند.
- شناسایی و بررسی
بسیاری از تهدیدات پیشرفته و پایدار، اغلب در بخش پنهان یک شبکه عمل می کنند. آنها در جستجوی اطلاعات حساس و روش هایی برای استخراج و انتقال داده ها به خارج از شبکه هستند. با این حال، فرآیند مسیریابی آن معمولاً شامل تعداد زیادی آزمون و خطا است.
پاسخهای مداوم NXDOMAIN از سمت سرویس DNS محلی شما که تمامی آنها مرتبط با یک کلاینت است، میتواند نشانه ای مشخص باشد.
- مشکلات مربوط به همگام سازی DNS zone
DNS zone ها معمولاً در چندین سرور تکرار می شوند تا تاخیر را به حداقل برسانند و قابلیت اطمینان را بهبود بخشند. در نتیجه، برخی از کاربران با وجود عدم هماهنگی این zone ها، همچنان پاسخ صحیح را دریافت خواهند کرد اما سایرین یک پیام خطای NXDOMAIN را دقیقاً برای همان مقصد، دریافت می کنند. این موضوع به مسیر DNS resolution بستگی دارد.
غالباً اشکال زدایی چنین مواردی بدون مشاهده ترافیک شبکه داخلی بسیار دشوار است. مدیران شبکه باید مسیرهای دقیق بین کلاینت ها، شبکه ها و سرورها را ردیابی کنند.
تفاوت NXDOMAIN و SERVFAIL چیست؟
NXDOMAIN و SERVFAIL (Server Failure) کدهای پاسخ دهی در سیستم نام دامنه (DNS) هستند. با این حال، آنها انواع مختلفی از خطاها را نشان می دهند.
- NXDOMAIN (دامنه غیر موجود): به این معنی است که نام دامنه مورد نظر وجود ندارد. سرور Recursive DNS نام دامنه درخواستی را جستجو نموده اما رکوردهای DNS مرتبط با آن را پیدا نکرده است. این موضوع نشان می دهد که نام دامنه موردنظر در اینترنت وجود ندارد.
- SERVFAIL یا Server Failure (خرابی سرور): این کد پاسخ، نشان دهنده مشکل یا خطایی در سرور DNS برای انجام صحیح درخواست DNS می باشد. ممکن است مشکلی در خود سرور DNS یا توانایی آن برای برقراری ارتباط و پردازش موثر درخواست وجود داشته باشد. SERVFAIL ممکن است به دلایل مختلفی مانند پیکربندی نادرست، مشکلات شبکه یا از کار افتادن سرور DNS رخ دهد.
به طور خلاصه، NXDOMAIN نشان می دهد که دامنه درخواستی وجود ندارد، در حالی که SERVFAIL نشان دهنده نقص یا مشکل در خود سرور DNS هنگام تلاش برای پردازش درخواست است.
تصویر(6)
حمله NXDOMAIN چیست؟
حمله NXDOMAIN یک حمله DNS Flood است که شامل تعداد بالایی از درخواستهای DNS lookup می شود. این درخواست ها به نامهای دامنهای که وجود ندارند و معمولاً زیر دامنهها، ارسال میگردند. این درخواستها به یک سرور DNS معتبر که مسئول دامنه موردنظر است، ارسال میشوند تا منابع آن را درگیر کنند. در نتیجه سرور از پاسخگویی به درخواست های واقعی ناتوان می شود و وب سایت قربانی را برای کاربران، غیر قابل دسترس می کند.
اکثر این حملات توسط باتنتها انجام میشوند که شناسایی و انسداد حمله NXDOMAIN را بسیار دشوار خواهند کرد.
تشخیص و پیشگیری از حمله NXDOMAIN
برخی از حملات NXDOMAIN سادهتر هستند و میتوان آنها را راحتتر شناسایی کرد. برای مثال، می توان به دریافت ارجاعات غیرعادی زیاد از یک منبع تحت نامهای دامنهای که وجود ندارند، اشاره نمود.
متاسفانه این حملات معمولاً با استفاده از چندین دستگاه آلوده (بات نت) آغاز می شوند که تشخیص آنها را پیچیده تر می کند. این نوع حملات پیچیده تر هستند و پتانسیل ترکیب شدن با درخواست های واقعی را دارند. کلید شناسایی این حملات، جمع آوری و تجزیه و تحلیل مقادیر زیادی از داده ها برای یافتن الگوهای مشکوک است.
جلوگیری از حملات NXDOMAIN یک وظیفه بسیار دشوار خواهد بود. با این حال، همه چیز به داشتن ظرفیت زیاد و حتی بیش از حد نیاز، برای مدیریت یک جهش ناگهانی در ترافیک و انسداد درخواستهای DNS مرتبط با منابع غیر قانونی برمیگردد.
Anycast DNS در متعادل سازی لود سرور بسیار مفید است و وب سایت شما را پایدار می کند. علاوه بر این، نظارت بر DNS و برخی از ابزارهای فایروال برای بررسی و محافظت از یک شبکه خاص، مفید هستند.
نتیجه گیری
اکنون که با پیام خطای NXDOMAIN و نحوه نمایش آن در مرورگر آشنا شده اید، به راحتی می توانید آن را شناسایی کنید. گاهی اوقات ممکن است مشکلی ساده باشد که به راحتی رفع شود اما در مواردی دیگر، یک تهدید مخرب را نشان دهد. با تجزیه و تحلیل و درک علت اصلی خطا، می توانید حملات احتمالی را از بین ببرید.