あらゆるデバイスでDNSキャッシュをクリアする方法
Windows、macOS、Linux、iOS、Android、ChromeでDNSキャッシュをフラッシュするための完全ガイドです。さらに、より賢いDNSを使えば、なぜこの作業自体がほとんど不要になるのかも解説します。
ついさっきまで開けていたサイトに、急につながらなくなった。古いサーバーへリダイレクトされてしまう。こうしたときの解決策は、たいていDNSキャッシュをクリアすることです。ですが、二度とこの作業に悩まされずに済む、もっと良い方法があります。
DNSキャッシュとは?
ウェブサイトを訪れるたびに、あなたのデバイスはドメイン名(たとえば google.com)を調べ、それをIPアドレス(たとえば 142.250.80.46)に変換します。この問い合わせは、インターネットの電話帳のような役割を果たすDomain Name System、すなわちDNSを通じて行われます。
処理を速くするために、あなたのデバイスはこれらの問い合わせの結果を キャッシュとして保存しておきます。次に同じサイトを訪れたとき、デバイスは問い合わせを省略し、キャッシュされた答えを使います。これがDNSキャッシュです。
ところが問題があります。ほとんどのISPのリゾルバーは、レコードを 12〜24時間もの間キャッシュしてしまうのです。ウェブサイトがサーバーを変えたり、あなたがDNS設定を切り替えたりしても、何時間も古いデータに縛られたままになります。
ClearDNSは20〜60秒のキャッシュTTLを使います。古いレコードは、ひとりでに直ります。今すぐ設定しましょう。無料です。 →DNSキャッシュをクリアすべきなのはどんなとき?
次のような場合は、DNSキャッシュをフラッシュするとよいでしょう。
- あるサイトが読み込めない のに、ほかのデバイスやネットワークでは問題なく開けるとき
- ブラウザに「DNS_PROBE_FINISHED_NXDOMAIN」 などのDNSエラーが表示されるとき
- DNSプロバイダーを変えたばかりで すぐに反映させたいとき
- あるサイトが最近、新しいサーバーに移転した のに、まだ古いバージョンが表示されてしまうとき
- DNSフィルタリングのルールをオン・オフ して、変更を即座に反映させたいとき
あるいは、こうした作業をまるごと省くこともできます。ClearDNSなら、キャッシュ時間は最大でも 60秒。あなたが気づくよりも先に、古いレコードはひとりでに期限切れになります。
WindowsでDNSキャッシュをクリアする
手間を省く。WindowsでClearDNSを使う
DNSキャッシュが古くなるたびにコマンドを打ち込む代わりに、ClearDNSを一度だけ設定すれば、あとはもう気にする必要がありません。ClearDNSはDNSレコードを20〜60秒ごとに自動で更新します。さらに、広告ブロック、トラッカー対策、マルウェアフィルタリングまで手に入ります。所要時間は2分、アカウントも不要です。
今すぐWindowsでClearDNSを設定する(無料) →手動の方法:WindowsでDNSキャッシュをフラッシュする
コマンド プロンプト または PowerShell を管理者として開きます(スタートボタンを右クリックし、「ターミナル (管理者)」を選びます)。
次を実行します:
ipconfig /flushdns
次のように表示されるはずです。 Successfully flushed the DNS Resolver Cache.
キャッシュが空になったことを確認するには、次のようにします。
ipconfig /displaydns
注意:キャッシュが古くなるたびに、毎回この作業を繰り返す必要があります。ClearDNSなら、レコードは20〜60秒ごとに自動で更新されます。
macOSでDNSキャッシュをクリアする
ターミナルは不要。MacでClearDNSを使う
sudo コマンドも、ターミナルも、パスワードの入力もいりません。MacでClearDNSを一度設定すれば、DNSキャッシュの悩みは二度と起きなくなります。自動のキャッシュ更新、広告ブロック、プライバシー保護まで、所要時間はわずか2分です。
手動の方法:macOSでDNSキャッシュをフラッシュする
ターミナル を開きます(Cmd + Space を押し、「ターミナル」と入力して Enter キーを押します)。
次のコマンドを実行します(macOS Ventura、Sonoma、Sequoia以降で動作します)。
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
入力を求められたらパスワードを入力します。確認メッセージは表示されず、キャッシュは静かにクリアされます。
この作業は毎回繰り返す必要があります。ClearDNSなら、20〜60秒のキャッシュTTLでこれを自動的に処理します。
LinuxでDNSキャッシュをクリアする
もっと良い方法。LinuxでClearDNSを使う
Ubuntu、Fedora、Arch、Debianのいずれを使っていても、ClearDNSの動作は同じです。一度設定すれば、DNSキャッシュの問題はすべてのディストリビューションで永久に解決します。20〜60秒ごとの自動DNS更新に加え、本格的なDNSフィルタリングも利用できます。
今すぐLinuxでClearDNSを設定する(無料) →手動の方法:LinuxでDNSキャッシュをフラッシュする
systemd-resolved の場合(Ubuntu 18.04以降、Fedora):
sudo systemd-resolve --flush-caches
確認するには、次のようにします。
sudo systemd-resolve --statistics
dnsmasq または nscd の場合:
sudo systemctl restart dnsmasq
# or
sudo systemctl restart nscd
ディストリビューションによって使われるDNSリゾルバーは異なります。ClearDNSは、そのすべてでまったく同じように動作します。
iPhone/iPadでDNSキャッシュをクリアする
設定したら、あとはおまかせ。iOSのClearDNS
機内モードを切り替えたり、メニューの奥深くにある設定を探したりする必要はありません。iOSのClearDNSは、60秒未満のキャッシュTTLでDNSを自動的に新鮮に保ちます。DNSプロファイルをワンタップでインストールするだけ。システム全体での広告ブロックとトラッカー対策も付いてきます。
今すぐiPhoneでClearDNSを設定する(無料) →手動の方法:iOSでDNSキャッシュをフラッシュする
設定を開き、 機内モードをオンにして10秒待ち、それからオフにします。これでネットワーク接続がリセットされ、あわせてDNSキャッシュもクリアされます。
あるいは、 設定 > Wi-Fiの順に開き、ご利用中のネットワークの隣にある (i) をタップして、 リースを更新をタップします。
この方法では、すべてのネットワーク接続が一時的に途切れます。ClearDNSなら、レコードはバックグラウンドで静かに更新されます。
AndroidでDNSキャッシュをクリアする
スマートな方法。AndroidのClearDNS
Androidでは、DNSキャッシュを手動でクリアするのが意外なほど大変です。ClearDNSなら、この問題をまるごと解決できます。プライベートDNS経由で一度設定すれば、二度とキャッシュをフラッシュする必要はありません。所要時間は30秒。システム全体での自動キャッシュ更新、広告ブロック、マルウェア対策が手に入ります。
今すぐAndroidでClearDNSを設定する(無料) →手動の方法:AndroidでDNSキャッシュをフラッシュする
方法1: 機内モード をオン・オフします(iOSと同じです)。
方法2: Chromeで、次のアドレスを開きます。
chrome://net-internals/#dns
次をタップします: Clear host cache。
Androidには、システムレベルでDNSをフラッシュする手段が用意されていません。ClearDNSは短いTTLによって、この制約をまるごと回避します。
ChromeでDNSキャッシュをクリアする
ClearDNSがあれば、Chromeのキャッシュは問題になりません
Chromeは、OSとは別に独自のDNSキャッシュを持っています。システムのキャッシュをフラッシュした後でも、Chromeは古いレコードを使い続けることがあります。ClearDNSは、その両方を解決します。レコードはリゾルバーのレベルで20〜60秒ごとに更新されるので、Chromeは常に新鮮なデータを受け取れます。
ClearDNSを設定して、chrome://flagsと格闘するのはもうやめにしましょう →手動の方法:Chrome内部のDNSキャッシュをフラッシュする
新しいタブを開き、次のアドレスにアクセスします。
chrome://net-internals/#dns
次をクリックします: Clear host cache。続いて、次のアドレスにアクセスします。
chrome://net-internals/#sockets
続いて Flush socket pools をクリックし、古いIPアドレスを使っている接続をすべてクリアします。
この2つの手順は、どちらも欠かせません。ClearDNSなら、そのどちらも必要ありません。
なぜDNSキャッシュが問題を引き起こすのか
従来のDNSリゾルバーは、 TTL(Time to Live、生存時間)と呼ばれる長いキャッシュ時間を設定します。多くのISPは、DNSレコードを24時間以上もキャッシュします。つまり、ウェブサイトがIPアドレスを変えても、まる一日のあいだ古いサーバーに接続しようとし続けるはめになりかねないのです。
これは、現実に次のような問題を引き起こします。
- ウェブサイトの移転: サイトが新しいホストに移転したのに、デバイスがいまだに古いホストに接続してしまう
- CDNのフェイルオーバー: コンテンツ配信ネットワークが別のエッジサーバーに切り替わったのに、キャッシュが古いサーバーを指し続けている
- DNSフィルタリングの変更: ブロックのルールを更新したのに、古いキャッシュのせいで以前のルールがそのまま適用されてしまう
- セキュリティの更新: セキュリティ事故のあとにドメインのIPが変わったのに、侵害されたアドレスがキャッシュに残ったままになっている
「DNSキャッシュのTTLが長いほど、古く、誤った、ときには危険ですらあるDNSレコードに縛られ続ける時間も長くなるのです。」
ClearDNSはどのようにキャッシュ問題を解消するのか
ClearDNSは、根本から異なるアプローチを取ります。DNSレコードを何時間も、あるいは何日もキャッシュする代わりに、ClearDNSが使うのは きわめて短いキャッシュ時間です:
ClearDNSのキャッシュTTL vs. あなたのISP
- 判定キャッシュ: 20秒(ISP:12〜24時間)
- プロファイルの更新: 60秒(ISP:手動でのフラッシュが必要)
- ブロックしたドメイン: 60秒(ISP:該当なし。フィルタリングなし)
- 許可したドメイン: 1〜60秒(ISP:数時間)
古いままでいる時間は、最大でも60秒。たいていは20秒未満です。
これが意味するのは、次のことです。
- 手動でのキャッシュのフラッシュは、もう不要です。古いレコードは1分以内にひとりでに期限切れになります
- ルールの変更が即座に反映されます。ドメインをブロックしたり解除したりすると、ほぼ即座に反映されます
- フェイルオーバーがより速くなります。ウェブサイトがサーバーを変えても、数秒のうちに新しいサーバーへつながります
- セキュリティがより高まります。脅威リストが更新されると、侵害されたドメインがより速くブロックされます
さらに、ClearDNSが提供するのは、速いキャッシュ更新だけではありません。
- 広告とトラッカーのブロック をDNSレベルで実現。ブラウザの拡張機能は不要です
- マルウェアとフィッシングからの保護。危険なドメインは、読み込まれる前にブロックされます
- アカウントは不要です。設定は2分以内、しかも完全に匿名です
- あらゆるデバイスで動作。スマートフォン、ノートパソコン、タブレット、スマートテレビ、ルーターまで
DNSキャッシュ vs. ブラウザキャッシュ
DNSキャッシュとブラウザキャッシュを混同しないでください。この2つは別物です。
- DNSキャッシュ はドメインとIPの対応を保存します。これをフラッシュすると、新たなDNS問い合わせが強制的に行われます。
- ブラウザキャッシュ はウェブページの内容(画像、CSS、JavaScript)を保存します。これをクリアすると、ページの素材が改めてダウンロードされます。
ウェブサイトの表示が崩れていたり古く見えたりする場合は、 その両方をクリアしてみてください。ですが、そもそもサイトにまったくつながらない場合は、たいていDNSキャッシュが原因です。そしてClearDNSは、それをそもそも問題にならなくします。
DNSキャッシュを手動でクリアするのは、もうやめにしませんか
ClearDNSは20〜60秒のキャッシュTTLを使います。古いレコードは、ひとりでに直ります。アカウントは不要です。
ClearDNSを設定する