CLASH 公式サイト · clashoffice.com
    使い方解説 2026-04-18 · 6分で読める

    DNS 設定ガイド:解決できない名前解決や DNS 汚染の対処法

    ページが開かない、画像が読み込めない、一部のサイトへのアクセスが遅い——長時間調査した結果、根本原因がノードではなく DNS 解決の汚染や誤ったルーティングであることがよくあります。この記事では Clash の DNS モジュールの設定方法を明確に解説します。

    なぜ DNS も設定が必要なのか

    プロキシ接続自体が完全に正常であっても、ドメイン解決に汚染またはハイジャックされた DNS サーバーを使用していると、ブラウザが取得する目標 IP は誤ったものになり、以降プロキシを経由するかどうかにかかわらず正常にアクセスできません。そのためプロキシクライアントには通常、システムのドメイン解決リクエストを引き継ぎ、信頼できる DNS サーバーで解決してから接続先の IP を決定する DNS モジュールが内蔵されています。

    基本的な DNS 設定

    # config.yaml の一部 dns: enable: true listen: 0.0.0.0:53 default-nameserver: - 223.5.5.5 nameserver: - https://dns.google/dns-query - tls://1.1.1.1
    • default-nameserver:下記の nameserver にある DNS-over-HTTPS / DNS-over-TLS サーバー自体のドメインを解決するために使用し、通常は自国内で直接接続できる通常の DNS を指定します。
    • nameserver:実際にアクセスするサイトの解決に使用する DNS サーバーで、中間ネットワーク機器による改ざんや遮断を避けるため、暗号化に対応した DoH(https://)または DoT(tls://)の使用を推奨します。

    fake-ip:振り分けをより賢くする

    TUN モードを有効にすると、通常は fake-ip モードも同時に有効になります。コアは各ドメインに仮想 IP を割り当ててシステムに返し、実際の接続時にはドメイン(実際の IP ではなく)に基づいてルールをマッチングし接続を開始します。利点は、振り分けの判定がドメインレベルで正確に行え、DNS の返す結果に影響されないことです。

    # dns フィールドの続き enhanced-mode: fake-ip fake-ip-range: 198.18.0.1/16 fake-ip-filter: - "*.lan" - "localhost.ptlogin2.qq.com"

    fake-ip-filter は仮想 IP に適さないドメイン(LAN デバイスや、正常に動作するために実際の IP が必要なサービスなど)を除外するために使用し、フィルタルールに一致したドメインは通常の DNS 解決フローに従います。

    よくある落とし穴:一部の LAN デバイス管理ページやゲームのマッチメイキングなどは実際の IP に依存しています。アクセスに異常がある場合は、まず fake-ip の影響を受けているか確認し、該当ドメインを fake-ip-filter に追加すれば通常は解決します。

    DNS が正常に動作しているか確認する方法

    システムのターミナル/コマンドプロンプトで nslookup または dig を使ってドメインを照会し、プロキシを有効にする前後で返される IP が異なるかを比較できます。プロキシを有効にした後、明らかに対象サイトに属さない IP(例:内部アドレス、無効なアドレス)が返された場合、DNS 設定に問題がある可能性が高く、nameserver リストや fake-ip-filter の設定を確認する必要があります。

    ドメインごとに異なる DNS 解決戦略を指定する

    国内サイトの解決を高速に保ちつつ、海外サイトが汚染されないようにしたい場合、異なるルールセットに異なる DNS 戦略を設定できます。国内ドメインは国内 DNS で直接解決し、海外ドメインは暗号化 DNS で解決するようにすれば、両者は互いに干渉しません。

    # config.yaml の一部:ルールセットごとに DNS 戦略を分割 dns: nameserver-policy: "geosite:cn": ["223.5.5.5", "119.29.29.29"] nameserver: - https://dns.google/dns-query - tls://1.1.1.1

    nameserver-policy は特定のドメイングループ(ここでは組み込みの geosite:cn 国内ドメイン分類を使用)に専用の DNS サーバーを指定できます。ポリシーの範囲外のドメインは引き続きデフォルトの nameserver リストで解決され、両者のロジックは競合しません。

    IPv6 環境で特に注意すべきこと

    端末またはプロバイダーのネットワークで既に IPv6 が有効になっている場合、DNS が返す AAAA レコードによってシステムが IPv6 接続を優先的に試みることがあり、一部のプロキシノードやルールセットが IPv6 に十分対応していないと、「時々つながるが、時々つながらない」という診断が難しい問題が起こりやすくなります。IPv6 経路が安定しているかまだ確信がない場合は、まず DNS 設定で IPv6 解決を無効にすることができます。

    # dns フィールドの続き ipv6: false

    IPv6 環境下でのノードの接続性に問題がないことを確認できたら、再度有効化すれば構いません。このステップは「DNS の問題なのか IPv6 経路の問題なのか」というよくある調査の盲点を素早く排除するのに役立ちます。

    まとめ

    DNS の問題は「ネットワークにつながらない」こととよく似ており、ノードの故障と誤判定されがちです。アクセスに異常が発生したら、まず DNS の層を排除してみましょう。信頼できる暗号化 DNS サーバーに切り替え、fake-ip フィルタルールを確認し、IPv6 環境での互換性に注意することが、ノードを何度も変更するよりも問題の特定に効果的なことが多いです。

    読み終わったら試してみませんか?

    5大プラットフォームのインストーラーはダウンロードページに掲載されています。チュートリアルページの手順に沿って進めればすぐに使えます。

    ダウンロードページへ
    ブログ一覧に戻る
    まだ Clash をダウンロードしていませんか?タップして公式ダウンロードページへ