2019年05月27日更新
WindowsでDNSのキャッシュクリアする方法!キャッシュの確認方法も解説!
Windowsをお使いの皆さんは「DNSのキャッシュ」という言葉を聞いたことはありますか?DNSキャッシュは定期的に削除することをおすすめします。この記事では、WindowsでDNSのキャッシュクリアする方法、キャッシュの確認方法をご紹介していきます。
目次
WindowsでDNSキャッシュを削除しよう!
普段の仕事やプライベートでWindowsをお使いの皆さんは「DNSのキャッシュ」という言葉を聞いたことはありますか?この「DNSキャッシュ」は、定期的にWindowsのPCから削除することをおすすめします。この記事では、WindowsでDNSのキャッシュクリアする方法、キャッシュの確認方法をご紹介していきます。
まずはじめに「DNSキャッシュ」とはどんなものなのか、DNSキャッシュを削除する必要があるのはどんな場合なのかを確認していきましょう。
DNSキャッシュとは?
「DNSキャッシュ」とは、DNSサーバに問い合わせた結果を、今後も同じように問い合わせるときに備え、情報を保管しておくデータベースのことです。この「DNSキャッシュ」の仕組みにより、検索するたびに問い合わせをする必要がなく、省エネでより早く検索が可能になります。
DNSキャッシュを削除する必要がある時とは?
WindowsのPCを使ってインターネットを閲覧しる場合、以下のような不具合が感じられるようになった場合、DNSキャッシュを削除する必要があります。
- 検索結果の表示や、ページの表示が遅い
- 繋がらないサイトがある場合
このような不具合が生じている場合、DNSキャッシュが蓄積してしまい、PCの動作に悪影響を与えている可能性があります。そのような時は、DNSキャッシュを削除することで問題を解決できる場合があります。
DNSキャッシュをサーバから確認する方法
ここからは、DNSキャッシュをサーバから確認する方法をご紹介していきます。現在使っているWindowsPCにどれだけDNSキャッシュが溜まっているかを確認することで、DNSキャッシュを削除したときの効果や、DNSキャッシュがどれくらい溜まると不具合が生じるのかを理解できます。
コマンドプロンプトを使って確認する
DNSキャッシュをサーバから確認するには「コマンドプロンプト」を使って確認するようにしましょう。
コマンドプロンプトは、WindowsのPCであればどんなPCでも使える機能ですが、普段は利用することがほとんどないため、「コマンドプロンプト」と言われてもピンと来ないユーザーの方がたくさんいます。
「コマンドプロンプト」とは、「コマンド」と呼ばれるPCに命令を出すコードを用い、WindowsのPCへの操作や設定を施すためのツールのことです。コマンドプロンプト上では、キーボードとを使って「コマンド」というPCに命令を出す命令コードを入力することによって使用します。
なお、この「コマンドプロンプト」はPCのスタートメニューから開けます。スタートメニュー検索で「cmd.exe」と入力し検索してみましょう。
コマンドプロンプトを使ってDNSキャッシュを確認する場合は「ipconfig /displaydns」コマンドを使用します。「ipconfig /flushdns」と入力すると、現在溜まっているDNSキャッシュの一覧が表示されます。
DNSキャッシュをサーバから消去する方法
次に、DNSキャッシュをサーバから消去する方法をご紹介していきます。
まずは再起動してみる
DNSキャッシュをサーバから消去する方法として、まずはWindowsのPCを再起動してみましょう。PCを再起動することで、DNSキャッシュをサーバから消去ができます。一番簡単方法なので、他の方法が難しい場合に試してみてください。
コマンドプロンプトを使って消去する方法
コマンドプロンプトを使ってサーバからDNSキャッシュを消去してみましょう。まずはコマンドプロンプトを起動しましょう。コマンドプロンプトを起動するには、先にご紹介したように、PCのスタートメニューから開けます。スタートメニュー検索で「cmd.exe」と入力し検索してみましょう。
また、Windows 8/Windows Server 2012以降のPCを使っている場合は、スタートアイコンを右クリックし、「コマンドプロンプト」を選択することで起動も可能になっています。
「ipconfig /flushdns」と入力し、正常にDNSキャッシュが削除された場合、「DNS リゾルバーキャッシュは正常にフラッシュされました」という内容は画面に表示されます。
なお、しっかりとDNSキャッシュが削除されたかどうかをコマンドプロンプトで確認したいという場合は「ipconfig /displaydns」と入力し、実行しましょう。
CCleanerを使用して消去する方法
「CCleaner」を使ってサーバからDNSキャッシュを消去してみましょう。「CCleaner」とは、無料のPCクリーナーソフトで、全世界で10臆ダウンロードを誇っている人気のソフトです。
「CCleaner」をPCにダウンロードし、デフォルト画面の設定で「DNSキャッシュ」にチェックを入れ「解析」を選択します。最後に「クリーンアップ開始」をクリックし、DNSキャッシュを削除しましょう。
【ネットワークの問題の識別と修復】を使用して消去する方法
「ネットワークの問題の識別と修復」を使用し、DNSキャッシュを消去する方法もあります。
Windowsのスタートボタンの「プログラムとファイルの検索」を使って「ネットワークの」と検索欄に入力すると、該当する機能が検索結果として表示されます。これを実行する事だけで、DNSキャッシュを消去できます。
DNSキャッシュをつくらせないようにする方法
最後に、WindowsのPCのパフォーマンスを落とす原因の一つであるDNSキャッシュをつくらせないようにする方法をご紹介していきます。この記事でご紹介するDNSキャッシュをつくらせないようにする方法は以下の2種類です。
- DNS Client(Dnscache)サービスを利用する方法
- レジストリの設定を使用する方法
それぞれの方法について、各方法ごとに分けて詳細をご紹介していきます。
キャッシュをつくらせない方法
DNSキャッシュをつくらせないようにする方法として、「DNS Client(Dnscache)サービスを利用する方法」と「レジストリの設定を使用する方法」の2種類があります。
DNS Client(Dnscache)サービスを利用する方法
DNS Client(Dnscache)サービスを利用してDNSキャッシュをつくらせないようにする方法があります。DNS Client(Dnscache)サービスを停止し、スタートアップの種類を無効化することで、名前解決の結果をキャッシュさせない設定にできます。
DNS Client(Dnscache)サービスを選択し、右クリックします。表示されたメニューの中から「プロパティ」をクリックし、次に「停止」をクリックします。また、同じ画面で「スタートアップの種類」を「無効」に変更してから「OK」をクリックしましょう。
または管理者権限の元で「PowerShell」を起動させ、以下の画像のコマンドを実行します。
なお、この環境では「スタートアップの種類」を無効に変更することはできないため、次にご紹介する「レジストリの設定」で、DNSキャッシュをつくらさせないようにする方法を使いましょう。
レジストリの設定を使用する方法
レジストリの設定を利用してDNSキャッシュをつくらせないようにする方法があります。
「レジストリエディター(レジストリ)」を起動し、以下に記載の設定を行うことで、DNSキャッシュをつくらせないようにできます。なお、これは厳密に言うと、DNSキャッシュは作成されるものの、1秒で削除される設定にできるということです。
- キー名:「HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNSCache\Parameters」
- 値の種類:REG_DWORD / DWORD(32ビット)
- 値の名前:MaxCacheTtl
- 値のデータ:1
あるいは、管理者権限のもとで起動したコマンドプロンプトで、以下のコマンドを実行することでもDNSキャッシュを作成できないように設定可能です。
これも「レジストリエディター(レジストリ)」と同様に、厳密に言うと、DNSキャッシュは作成されるものの、1秒で削除される設定にできるということです。
コマンドプロンプトで、上記のコマンドを実行することで、DNSキャッシュの最大値が1秒に設定され、WindowsのPCのDNSキャッシュが無効になっているように見えるようになります。
DNSキャッシュをクリアして快適なサーバ運用をしよう!
この記事では、DNSキャッシュとは何か、WindowsのPCでDNSのキャッシュクリアする方法、キャッシュの確認方法をご紹介してきました。DNSキャッシュを削除する方法はどれも簡単なため、定期的にDNSキャッシュをクリアし、快適なサーバ運用を心がけるようにしましょう。