آموزش پاک کردن کش DNS در ویندوز، لینوکس و مک
در صورتی که برای اتصال مشکلی دارید، پاک کردن حافظه کش domain name system (DNS) یکی از راه حل هایی است که می توانید امتحان کنید. هرچند که کش DNS می تواند سرعت شما را افزایش دهد، از طرفی هم می تواند علت مشکلات امنیتی باشد.
پاک کردن حافظه کش domain name system (DNS) یکی از بهترین و ساده ترین روش ها برای رفع مشکلات اتصال است. شما می توانید از این روش چه در ویندوز، چه در لینوکس و چه در مک استفاده کنید.
فرایند پاکسازی کردن DNS در هر سیستم عاملی فرق دارد و برای آن که شما بتوانید از پس این کار برآیید، ما این مقاله را تدوین کرده ایم تا شما بدانید که چگونه فرایند پاکسازی DNS را در سیستم عامل های ویندوز، مک و لینوکس انجام دهید (البته ما نحوه پاکسازی این روش را در گوگل کروم هم به شما آموزش می دهیم). البته اگر شما خرید سرور مجازی انجام داده اید و می خواهید تا در آن حافظه کش DNS را انجام دهید، این مقاله بازهم برایتان مفید خواهد بود. پس در ادامه همراه ما باشید.
کش DNS چیست؟
کش DNS یک ذخیره سازی موقت از جستجوهای قبلی DNS در سیستم عامل شما است. هنگام جستجوی یک آدرس خاص به صورت آنلاین، مرورگر وب و سیستم عامل شما آدرس IP و سوابق DNS را کش می کند.
این روش فرآیند جستجوی DNS را با حل دامنه ها به آدرس IP آنها ساده می کند و باعث می شود صفحات وب برای بازدید بعدی سریعتر بارگذاری شوند. حافظه کش DNS شامل واحدهای اطلاعاتی فشرده شده به نام رکوردهای منبع (RR) در مورد تمام وب سایت های بازدید شده است که در کد ASCII نمایش داده می شود.
موارد زیر اجزای کش DNS هستند که اغلب در ویرایشگر DNS Zone یافت می شوند:
- داده های منبع (Resource data) ‒ حاوی توضیحات یک رکورد، مانند آدرس و نام میزبان است.
- نوع رکورد (Record type) ‒ نوع رکورد (رکورد A یا AAAA) را توصیف می کند.
- نام رکورد (Record name) ‒ نام دامنه ورودی DNS را نشان می دهد.
- Time-to-live (TTL) – زمان اعتبار رکورد منبع که بر حسب ثانیه اندازه گیری می شود.
- Class_ گروه پروتکل مناسب رکورد منبع کلاس
- طول داده منبع (Resource data length) ‒ به مقدار داده منبع اشاره دارد.
نحوه پاکسازی کش DNS در ویندوز ۷، ۸ و ۱۰
در ویندوز، فرآیند پاکسازی کش DNS برای اکثر نسخه ها یکسان خواهد بود. به خاطر داشته باشید که برای دسترسی به تمام مجوزهای امنیتی سیستم باید از گزینه Run as administrator هنگام اجرای خط فرمان استفاده کنید:
از میانبر Windows + R برای باز کردن پنجره Run استفاده کنید.
برای باز کردن Command Prompt ویندوز، cmd را تایپ کنید.
دستور زیر را تایپ کرده و اینتر را بزنید:
ipconfig /flushdns
ویندوز به طور خودکار فایل های کش DNS شما را پاک می کند و کش DNS Resolver را بازنشانی می کند. در صورت موفقیت آمیز بودن فرآیند، پیام تأیید زیر را در کنسول Command Prompt خود مشاهده خواهید کرد:
نکته: دستور cmd را با فشار دادن Ctrl + Shift + Enter اجرا کنید تا از گزینه Run as administrator سریع تر استفاده کنید. لطفا توجه داشته باشید که برای انجام این کار به دسترسی مدیر نیاز دارید.
پاکسازی کش DNS در macOS 11 Big Sur، 12 Monterey و نسخه های قدیمی تر
با macOS، مطمئن شوید که دستور flush DNS را بر اساس نسخه فعلی سیستم عامل خود اجرا می کنید. بنابراین، اولین قدم این است که نسخه macOS خود را با کلیک بر روی نماد Apple -> About This Mac بررسی کنید.
سپس با فشردن کلید F4 و وارد کردن ترمینال در قسمت جستجوی Spotlight، پنجره ترمینال فرمان را باز کنید. سپس دستور مخصوص نسخه macOS خود را وارد کرده و Enter را فشار دهید. اگر از شما خواسته شد، رمز عبور مدیریت خود را وارد کنید و دوباره کلید Enter را کلیک کنید تا کش DNS خود را پاک کنید.
در اینجا دستورات خاص برای هر نسخه آورده شده است:
macOS 11 Big Sur یا 12 Monterey:
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
macOS 10.11 El Capitan, 10.12 Sierra, 10.13 High Sierra, 10.14 Mojave, or 10.15 Catalina:
sudo killall -HUP mDNSResponder
macOS 10.10 Yosemite:
sudo discoveryutil udnsflushcaches
macOS 10.7 Lion, 10.8 Mountain Lion, or 10.9 Mavericks:
sudo killall -HUP mDNSResponder
macOS 10.6 Snow Leopard:
sudo dscacheutil -flushcache
macOS 10.5 Leopard:
sudo lookupd -flushcache
نحوه پاکسازی کش DNS در لینوکس
برخلاف ویندوز و macOS، اوبونتو بهطور پیشفرض رکوردهای DNS را کش نمیکند. اگر یک سرویس DNS را به صورت دستی نصب کنید، باید کش DNS را در رایانه خود پاک کنید.
برای پاک کردن کش DNS با استفاده از لینوکس، کلیدهای Ctrl + Alt + T را با هم فشار دهید تا برنامه ترمینال باز شود.
در پنجره ترمینال، دستور مورد نیاز را بر اساس سرویسی که سیستم لینوکس شما اجرا می کند، وارد کنید. در اینجا دستورات مربوط به Name Service Cache Daemon (nscd) و systemd آمده است.
پاک کردن کش DNS با nscd
خط فرمان زیر را برای پاک کردن فایلهای کش DNS در زیر شاخه init.d وارد کنید:
sudo /etc/init.d/nscd restart
پاک کردن کش DNS با systemd
از خط فرمان زیر استفاده کنید:
systemd-resolve --flush-caches
سپس دستور زیر را وارد کنید تا بررسی کنید که آیا دستور قبلی با موفقیت کش DNS را پاکسازی داده است یا خیر.
systemd-resolve --statistics
نحوه پاکسازی کش DNS در گوگل کروم
Google Chrome یک حافظه پنهان DNS جداگانه از سیستم عامل ذخیره می کند. همچنین اگر مرورگر وب پیشفرض شما است، برای جلوگیری از خطاهای اتصال، کش DNS خود را در Google Chrome پاکسازی دهید.
نکته! به خاطر داشته باشید که این نوع کش با کش مرورگر متفاوت است.
در زیر مراحل پاکسازی کش DNS در Google Chrome آورده ایم:
Google Chrome را باز کنید و خط زیر را در نوار آدرس وارد کنید:
chrome://net-internals/#dns
در نزدیکی گزینه Host solver cache روی Clear host cache کلیک کنید.
نکته مهم: اگر از Microsoft Edge استفاده می کنید از edge://net-internals/#dns استفاده کنید.
سخن آخر
مواجه شدن با مشکلات اتصال، یا مشاهده کردن صفحات وب نادرست، نشان از حافظه کش DNS مشکل دار یا قدیمی است که باید آن را سریع پاکسازی کنید. اولین گامی که به شما توصیه می کنیم، استفاده از دستور Flush DNS است که امکان رفع مشکل را می دهد. در صورتی که از این دستور نتیجه ای نگرفتید، اقدام به پاکسازی حافظه پنهان مرورگرتان کنید.
سوالات متداول:
هر چند وقت یکبار باید کش DNS خود را پاکسازی دهم؟
15 دقیقه طول می کشد تا کش DNS به طور کامل پاک شود. در حالی که هیچ فرکانس تنظیمی برای فلاشینگ کش DNS وجود ندارد، توصیه می کنیم برای بهترین تجربه مرور، این کار را مرتب انجام دهید.
آیا پاک کردن کش DNS سرعت اینترنت را افزایش می دهد؟
پاکسازی کش DNS تأثیر زیادی روی سرعت اینترنت شما ندارد. از شر دادههای کش قدیمی خلاص میشوید، اما ممکن است مستقیماً پس از پاکسازی حافظه پنهان DNS برای بارگیری صفحات وب مختلف کمی بیشتر طول بکشد، زیرا مرورگر باید دادهها را دوباره واکشی و ذخیره کند.
آیا کش DNS را دوباره راه اندازی می کند؟
آره. اگر سرور DNS را راه اندازی مجدد کنید، تمام کش پاک می شود.