はじめに
DNSキャッシュは、ネットワーク攻撃やウイルスなど、さまざまな理由で破損する可能性があります。その場合、特定の人気のあるWebサイトのIPアドレスマッピングが破損します。
たとえば、www.facebook.comにアクセスする代わりに、ブラウザが、攻撃者がコンピュータのDNSレコードに挿入した悪意のあるWebサイトのIPアドレスにリダイレクトする場合があります。または、404エラーが多数発生する可能性があります。
DNSキャッシュをクリアすると、保存されているすべてのDNSルックアップ情報が削除されます。 コンピュータは、次にルックアップ要求を送信するときに、DNSサーバーから更新されたデータを取得します。 DNSをフラッシュする方法を学ぶ 以下のmacOS、Windows、およびLinuxでオンになります。
DNSキャッシュとは何ですか?
Linux、Windows、およびmacOSは、名前解決情報をDNSキャッシュの形式で保存します。キャッシュにはクエリされたドメインのIPアドレスが含まれているため、プロジェクトの読み込み時間が短縮されます。 DNSサーバーに再ルーティングする代わりに、システムはキャッシュからのクエリに応答します。
DNSキャッシュには、次の情報が含まれています。
- リソースデータ
- レコードタイプ
- レコード名
- TTL(存続時間)
- クラス
- リソースデータの長さ
MacでDNSキャッシュをフラッシュする方法
実行しているバージョンに応じて、OSXおよびmacOSでDNSキャッシュをフラッシュするために使用するいくつかの異なるコマンドがあります。
手順はすべてのバージョンで同じであるため、この記事では、macOS Mojave(10.14)でDNSをクリアしてから、他のバージョンのコマンドを表にリストする方法について詳しく説明します。
macOS Mojave(バージョン10.14)でDNSをフラッシュする
macOS MojaveのDNSキャッシュをクリアするには 、ターミナルを使用します アプリケーション:
- terminal.appを実行します 好みの方法を使用します。 アプリケーション->ユーティリティからアプリを起動できます またはコマンド+スペースを押します Spotlightを起動し、ターミナルを検索します。
-
sudo killall -HUP mDNSResponder
と入力します キーボードのReturnキーを押します。 - 問題のアカウントの管理者パスワードを入力し、戻るをクリックします 。
プロセスが終了しても通知はありません。ただし、別のコマンドを追加して変更することはできます。
古いmacOSおよびMacOSXバージョンでDNSコマンドをフラッシュする
次の表に、ほとんどのmacOSおよびMacOSXバージョンでDNSキャッシュをクリアするためのコマンドを示します。それらをテーブルから直接端末にコピーして貼り付けることができます。
MacOSXまたはmacOSバージョン | ターミナルコマンド |
Mojave(バージョン10.14) High Sierra(バージョン10.13) シエラ(バージョン10.12) マウンテンライオン(バージョン10.8) ライオン(バージョン10.7) | sudo killall -HUP mDNSResponder |
El Capitan(バージョン10.11) マーベリックス(バージョン10.9) | sudo dscacheutil -flushcache sudo killall -HUP mDNSResponder |
ヨセミテ(バージョン10.10) | sudo discoveryutil mdnsflushcache sudo discoveryutil udnsflushcaches |
ユキヒョウ(バージョン10.6) Leopard(バージョン10.5) | sudo dscacheutil -flushcache |
Tiger(バージョン10.4) | lookupd -flushcache |
WindowsでDNSをフラッシュする方法
DNSキャッシュのクリアは、簡単で迅速なプロセスです。手順は、ほとんどすべてのWindowsシステムで同じです。以下の例では、Windows10を使用します。
WindowsマシンでDNSをフラッシュするには:
1.コマンドプロンプトを読み込みます 管理者として。 スタートメニューを開きます コマンドプロンプトの入力を開始します 結果に表示されるまで。
2. ipconfig /flushdns
と入力します プロンプトが読み込まれ、 Enterを押したとき キーボード上。
3.プロセスには数秒しかかかりません。 DNSリゾルバーキャッシュが表示されます。 完了時の確認メッセージ:
これで、コンピューターのDNSキャッシュデータベースがクリアされました。次回マシンがDNSクエリを送信するときに、DNSサーバーから正しく更新されたIPマッピングを取得する必要があります。
LinuxでDNSキャッシュをフラッシュする方法
Linuxディストリビューションは、WindowsやMacのマシンとは少し異なります。 Linuxディストリビューションごとに異なるDNSサービスを使用する場合があります 。 Ubuntuなどの一部のディストリビューションには、デフォルトのDNSサービスがまったくありません。
これは、ディストリビューションで使用しているサービスと、デフォルトで有効になっているかどうかによって異なります。それらのいくつかはNCSD (ネームサービスキャッシングデーモン)、 dnsmasq 、およびバインド (バークレーインターネット名ドメイン)。
ディストリビューションごとに、ターミナルウィンドウを起動する必要があります。 Ctrl + Alt + Tを押します キーボードで、対応するコマンドを使用して、Linuxシステムが実行しているサービスのDNSキャッシュをクリアします。
ローカルNCSDDNSキャッシュをフラッシュする
次のコマンドを使用して、LinuxマシンのNCSDDNSキャッシュをクリアします。
sudo /etc/init.d/nscd restart
必要に応じてパスワードを入力してください。プロセスは停止し、数秒以内にNCSDサービスを開始します。
ローカルdnsmasqDNSキャッシュをフラッシュする
次のコマンドを使用して、LinuxマシンのdnsmasqDNSキャッシュをクリアします。
sudo /etc/init.d/dnsmasq restart
端末から要求された場合は、パスワードをもう一度入力します。サービスが停止して再開すると、応答が表示されます。
ローカルBINDDNSキャッシュをフラッシュする
DNSサービスにBINDを使用する場合、DNSキャッシュをフラッシュするために使用できるコマンドがいくつかあります。プロセスを完了するには、パスワードの入力が必要になる場合があります。
sudo /etc/init.d/named restart
sudo rndc restart
sudo rndc exec