DNSキャッシュは、Macがウェブサイトの読み込み方法を把握しようとする際に参照するメモリのような役割を果たします。

DNSのキャッシュ削除はそれほど難しい作業ではありませんが、OSが新しくなるたびにやり方が変わります。 ここでは、最新のmacOSバージョンでDNSを手動でリセットするために必要な手順を説明します。

DNSキャッシュとは

DNSキャッシュとはなんでしょうか? それは最後に訪問したWebサイトに帰属するドメイン名のリストのとこです。 最近のブラウザ履歴とは異なります。 ドメイン名の情報は、例えば174.142.192.113のように数字でコード化されています。

例えば、Webサイトが新しいドメインに移行すると、そのDNSアドレスが変わります。 当然のことながら、古いDNSキャッシュに依存しているMacはそのページにアクセスできなくなります。

つまり、DNSキャッシュとは、この数値情報を人間が読めるウェブサイト名に変換するための記録帳のような役割をはたしています。 DNSキャッシュを削除した後、一部でウェブサイトの読み込みが遅くなったと感じるかもしれませんが、これは完全に正常な状態です。 お使いのMacがそれらの記憶を無くしてしまい、最初からアクセスを試みているためです。

DNSキャッシュを綺麗にする必要がある理由

DNSキャッシュを消去する理由はいくつかあります。 最も良い効果は、使用しているブラウザを高速化することで、ブラウジング体験を向上させることができることです。 また、保存されているキャッシュファイルを空にすることで、ブラウザのパフォーマンスを向上させることもできます。

ワンクリックでDNSキャッシュを綺麗にする方法

上記で説明したように、これらの古いキャッシュファイルを手作業で削除することもできます。 しかし、とあるアプリを使用すれば、もっと簡単にできます. このアプリはMacPaw社が開発したCleanMyMac Xというものです。 Appleにも公認されているMacのメンテナンスアプリとしてよく知られているアプリです。

DNSキャッシュを消去することは、CleanMyMacの機能の中に含まれています。 DNSキャッシュをCleanMyMacを使って消去するために、まずこちらから無料でアプリをダウンロードしましょう。

この機能は、「メンテナンス」項目から選択できます。上のスクリーンショットを参照しましょう。 「実行」をクリックすると、キャッシュが自動的にクリアされ、インターネットの設定が最適化されます。

ブラウザのキャッシュ自体をクリアすることも、試す価値のあることです。(DNSリストの削除とは違います) CleanMyMac Xを開くと、すべてのブラウザに対して自動的にこの作業を行うことができます。

これにより、アクセスに関する小さな問題が修正され、スペース容量が空く可能性があります。

  1. まずはCleanMyMac Xを開きます。
  2. サイドバーから「システムジャンク」タブをクリックします。
  3. 見つかったアイテムのリストに目を通し、「削除」をクリックします。

たったこれだけです - これですべてが元通りになるはずです。 または以下の方法をお試しください。

アプリのキャッシュを手作業で削除する方法

DNSキャッシュをリセットすると、現在行っているWebブラウジングが中断されるため、まずは実行する前にブラウザを閉じておくことをおすすめします。

MacOSでDNSキャッシュを削除する方法

ターミナル操作には慣れていますか? 慣れていなくても問題ありません。 必要なのは、ターミナルアプリを起動して、いくつかのコマンドを貼り付け、実行するだけです。

  1. DockにあるLaunchPadを開き、検索バーに「Terminal」と入力します。
  2. コマンドラインに以下を貼り付けます:
    sudodscacheutil -flushcache; sudo killall -HUP mDNSResponder
  3. 「Return / Enter」を押し、パスワードを入力して、もう一度「Return/Enter」を押します。
  4. ターミナルを終了します。

古いバージョンのmacOSでDNSをクリアする方法

基本的にやることは同じですが、ターミナルでのコピー&ペーストのコマンドがOSごとに異なります。

macOSまたはMac OS Xバージョンターミナルコマンド
macOS Ventura
macOS Monterey
macOS Big Sur 
macOS Catalina 
sudo dscacheutil -flushcache;
sudo killall -HUP mDNSResponder
macOS Mojave
macOS High Sierra
macOS Sierra
OS X Mountain Lion
Mac OS X Lion
sudo killall -HUP mDNSResponder
Mac OS X El Capitan
OS X Mavericks
sudo dscacheutil -flushcache;
sudo killall -HUP mDNSResponder
OS X Yosemitesudo discoveryutil mdnsflushcache;
sudo discoveryutil udnsflushcaches
Mac OS X Snow Leopard
Mac OS X Leopard
sudo dscacheutil -flushcache
Mac OS X Tigerlookupd -flushcache

Linux上でDNSキャッシュを削除する方法

LinuxでDNSキャッシュをクリアする前に、systemd-resolvedがアクティブになっていることを確認しましょう。 ターミナルウィンドウを開いて、次のコマンドを入力します:

sudo systemctl is-active systemd-resolved

Activeと表示されていたら、DNSキャッシュを削除するコマンドを入力します:

sudo systemd-resolve --flush-caches

実行後にメッセージなどは表示されませんが、次のコマンドを実行することで正常に動作したかどうかを確認できます。

sudo systemd-resolve --statistics

「Current Cache Size」が「0」になっていれば、DNSキャッシュの削除に成功していることになります。


MacでのDNSキャッシュの削除は頻繁に行うものではありませんが、ネームサーバーエラーのトラブルシューティングには有効な方法です。 お使いのOSに適したコマンドを使用すれば、数秒で問題を解決することができます。 何らかの理由でコマンドが動作しない場合や、ターミナルの使用に自信がない場合は、先ほど紹介した, CleanMyMac X が作業を代わりにやってくれます。

よくある質問

DNSキャッシュの削除またはリセットはいつ行うべきですか?

特定のウェブサイトのみを開くことができない場合、DNSを削除するのは理にかなった選択です。 特に、つい最近まで正常に接続できていた場合はなおさらです。 ネットワーク接続が突然遅くなったり、その他ネットワーク関連の問題が発生した場合にも、この方法を試してみてください。

MacのDNSキャッシュを消去した場合、何が起こりますか?

キャッシュを削除すると、サーバーアドレスに対応するMacのエントリが更新されます。 次回、このサーバー(Webサイト)にアクセスする際、キャッシュを再生成するため、読み込みが少し遅くなります。

MacでDNSキャッシュを消去する以外に有効な方法はありますか?

今回あげた手法が専門的すぎると感じた場合は、ブラウザのリセットや再インストールを行ってみてください。 また、ブラウザのキャッシュを削除することでも、古いDNSエントリを更新することができます。