DNS
MacでDNSが遅い
新しいサイトを読み込むには、その前にDNSの検索が必要です。リゾルバが遅いと、回線が速くても、ページごとに読み込み開始までの遅れが加わります。
症状
- ページが数秒待たされてから、すばやく読み込まれます。
- サイトへの最初のアクセスは遅く、2回目は速くなります。
- 速度テストの結果は良いのに、Webの閲覧が遅く感じます。
考えられる原因
- 遅い、または混雑したDNSサーバ。ルーターやプロバイダのDNSサーバの応答が遅くなっています。
- 応答しないDNSサーバ。最初のサーバがタイムアウトすると、リゾルバは次のサーバを試します。タイムアウトのたびに遅れが加わります。
- 検索ドメインが多すぎる。短い名前の場合、リゾルバは検索ドメインを1つずつ順に試します。サーバが遠いと、これに時間がかかります。
- 経路上のVPNやフィルタ。VPNが、すべてのDNSクエリをトンネル経由で遠くのサーバに送っていることがあります。
確認方法
macOSが使っているDNSサーバと検索ドメインを表示します。
scutil --dnsmacOSのリゾルバで名前検索を1回測定します。これを2回行います。2回目の結果はキャッシュから返ることがあります。
time dscacheutil -q host -a name example.org不要な検索ドメインがないか確認します。
networksetup -getsearchdomains Wi-Fi
解決方法
応答しないDNSサーバを削除します。アップルメニュー>「システム設定」>「ネットワーク」と選択します。
ネットワークサービスをクリックし、「詳細」をクリックしてから、「DNS」をクリックします。応答しないサーバを削除します。
別のDNSサーバを使うには、「DNSサーバ」リストの下にある追加ボタン(+)をクリックし、IPアドレスを入力します。
不要な検索ドメインを削除します。「検索ドメイン」リストの下にある削除ボタン(−)を使います。
すべてのデバイスでルーターのDNSが遅い場合は、ルーターを再起動します。
改善しない場合は、変更を元に戻します。「DNSサーバ」リストを空にすると、再びネットワークから割り当てられるサーバが使われます。
Kilobatを使う場合
システムのリゾルバをCloudflare、Google、Quad9と比べます。決める前に2回実行してください。
kilobat dns-benchmark出力リゾルバごとに1項目。
resolver、milliseconds、3回中のreplies。1つの遅いサイトについて、DNS、接続、TLS、最初の1バイトに分けて時間を測ります。
kilobat http-check https://example.org --jsonCLIからDNSを変更します。macOSが管理者パスワードを求めます。元に戻すには
automaticを使います。kilobat dns cloudflareCLIは無料です。アプリでは、DNSの切り替えはProの機能で、「自動」は無料のままです。より速いDNSを選ぶを参照してください。
よくある質問
パブリックDNSサーバのほうが必ず速いのですか?
いいえ。近くにあるリゾルバのほうが速いこともあります。変更する前に、システムのリゾルバとパブリックなリゾルバを測定してください。
DNSキャッシュを消去するとDNSは速くなりますか?
いいえ。消去で削除されるのは古い応答です。その後の名前検索は、もう一度サーバに問い合わせる必要があります。
出典
- Appleサポート:MacでDNS設定を変更する
- resolver(5)、macOS 27.2に付属のmanページ
- scutil(8)、macOS 27.2に付属のmanページ
- networksetup(8)、macOS 27.2に付属のmanページ
出典は2026年10月29日に確認しました。manページはmacOSに付属のものです。「ターミナル」でman <name>を実行すると開けます。