はじめに
サブスクリプションの読み込み、モード選択、接続確認
ガイドに沿って設定する よくある質問を見る →デバイスに合ったクライアントを選び、サブスクリプションの読み込み、ルールによる振り分け、接続のトラブル対処を進めましょう。
サブスクリプションの読み込み、モード選択、接続確認
ガイドに沿って設定する よくある質問を見る →プロキシグループ、TUNとFake-IP、複数サブスクリプションの統合
応用ガイドを読む 技術ノートを見る →接続に失敗したときは、ノードやモード、DNSを一度に切り替えるより、段階ごとに確認したほうが原因を追いやすくなります。
ノード選びより先に、設定を使える状態にしましょう。クライアントをインストールしたら、既存のサブスクリプションまたはローカル設定を読み込み、設定一覧に表示され、現在の設定として選択されていることを確認します。サブスクリプションURLは設定の取得元であり、ソフトウェアのインストーラーでも、公開共有リンクでもありません。読み込みに失敗した場合は、ダウンロード失敗、データ形式の誤り、コアが対応していない項目を切り分けます。エラーメッセージを控え、条件を変えずにURLを何度も貼り直すのは避けてください。スクリーンショットやログを共有する前に、サブスクリプションURLに含まれる認証情報を隠しましょう。
画面に「実行中」と表示されても、アプリの通信がプロキシ経由とは限りません。設定の読み込みが完了したらシステムプロキシを有効にし、ブラウザーから新しいリクエストを送って、クライアントの接続ログを確認します。一部のターミナル、ゲーム、独自の通信処理を行うアプリはシステムプロキシを参照しません。ウェブページを開けるだけで、すべての通信が取り込まれているとは判断できません。同じアプリから同じ接続先へアクセスして再現性を確認しましょう。より多くのアプリの通信を取り込む必要がある場合は、TUNに必要な権限やルーティングを調べます。初回起動時にすべての機能を有効にする必要はありません。
接続確認では経路と結果の両方を見ましょう。プロキシグループでノードを選び、テスト先へアクセスして、接続の詳細に表示される対象ドメイン、適用ルール、実際の出口を確認します。遅延テストで分かるのは、その時点でテスト先が応答した状況です。すべてのサイトやUDP通信が正常とは限りません。ノードを切り替えると復旧する場合はノード自体を比較し、ログにリクエストが記録されない場合は、まず通信の取り込み設定を確認します。問題のあるレイヤーを特定してから、設定の変更やルールの調整を検討してください。
ルールが通信先を決め、プロキシグループが出口を選びます。Ruleモードでは、コアが設定の順にルールを確認し、通常は最初に一致したルールのアクションを適用します。ドメインのサフィックス、完全一致するドメイン、接続先IPでは、それぞれ一致条件が異なります。ドメインを任意の位置に書けば適用されるわけではありません。Clashのカスタムルールを追加するときは、まず対象を明確にし、具体的な条件を広い条件より前に置きます。参照先のプロキシグループ名が実在することも確認してください。保存後に設定を再読み込みし、新しい接続でルールの適用結果を確認します。
自動選択グループは、種類によって経路選択の仕組みが異なります。select は出口を手動で指定し、url-test はテスト結果に基づいてノードを選びます。fallback は設定順と接続可能性を重視し、load-balance は指定した方式で接続を振り分けます。初めて設定する場合は、まず手動選択グループを残し、単一のノードが使えることを確認してから自動選択グループを追加しましょう。出口が頻繁に変わる場合は、テスト先、間隔、グループ内のノードを確認してください。グループ名に「自動」とあっても、接続が安定するとは限りません。
サブスクリプションの更新とローカル編集は分けて管理しましょう。ダウンロードした設定を直接編集すると、次回の更新で変更が上書きされることがあります。変更を維持するには、クライアントが対応するオーバーライド、マージ、独立したルールセット機能を使う方法が適しています。マージの順序はクライアントの実装によって異なるため、どの画面でも同じとは限りません。編集前に復元可能な設定をエクスポートし、一度に追加する条件は一組に絞ります。サブスクリプションの更新後は、最終的に適用された内容を確認してください。複数のサブスクリプションを統合する場合は、同名のプロキシグループや重複ノードも確認し、参照先の取り違えを防ぎましょう。
ドメインにアクセスできなくても、ノードが原因とは限りません。アプリからリクエストを送って接続が確立するまでには、名前解決、ルールの照合、出口の選択が関わります。まずエラーが名前解決のタイムアウト、接続拒否、ハンドシェイク失敗のどれかを確認し、ログに記録されたドメインと接続先アドレスを照らし合わせます。ブラウザーでセキュアDNSが有効になっていると、システムとは異なる経路で名前解決される場合があります。コアのDNS設定を変更する前に、リクエストがどこで処理されているか確認してください。システムの名前解決ツールの結果だけでは、ブラウザーの実際の通信経路をすべて把握できません。
Fake-IPはドメインを仮想アドレスに対応付ける仕組みで、実際の出口ではありません。有効にすると、コアはアプリに予約済みアドレス範囲の仮想アドレスを返し、後から対応するドメインを特定して通信を振り分けます。ツールにこの種のアドレスが表示されても、名前解決の失敗とは限りません。実アドレスが必要なLAN内サービスでは、すべてのドメインを除外するのではなく、実際の互換性に応じてフィルター条件を設定してください。名前解決モードを切り替えた後も、アプリやシステムに古いキャッシュが残ることがあります。既存の接続を閉じて関連するキャッシュを削除し、新しいリクエストの挙動を比較しましょう。
TUNのトラブル対処では、ルーティングと権限を併せて確認します。仮想ネットワークインターフェースを使うと、通信を取り込める範囲が広がる一方、権限、DNSの横取り、ルートの競合なども問題になることがあります。有効化後にLAN内の機器へ接続できなくなった場合は、まず除外ルートと他のVPNソフトを確認し、次にデフォルトルートが想定どおりかを調べます。比較用に、正常に動作しているシステムプロキシの設定を残しておきましょう。ネットワークスタックとルールセットを同時に変更するのは避けてください。調査が終わったらログレベルを通常の設定に戻し、ログ共有時は必要な箇所だけを残して、サブスクリプション、コントロール用インターフェースの認証情報、個人のアクセス履歴を隠します。
ここではローカルの混合ポート、手動選択グループ、ルールの順序のみを示します。サンプルのグループには組み込みの直接接続アクションしか含まれておらず、プロキシノードもありません。インターネットに接続できる完全なプロキシ設定ではありません。実際に使うには、既存のノードまたはサブスクリプションプロバイダーをプロキシグループに追加し、各ルールの参照先とグループ名が一致するようにしてください。
mixed-port: 7890
allow-lan: false
mode: rule
log-level: info
proxy-groups:
- name: 手動選択
type: select
proxies:
- DIRECT
rules:
- DOMAIN-SUFFIX,example.com,手動選択
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
- MATCH,手動選択
先に一致したルール
先に適用される
まずデバイスの種類を確認してから、クライアントを比較しましょう。すでに使える設定がある場合は、移行時にサブスクリプションとネットワーク設定を同時に変えないよう、元のファイルを残しておくのがおすすめです。
まずはClash PlusやClash Verge RevなどのGUIクライアントを検討できます。インストール前にシステム設定でCPUアーキテクチャを確認し、起動後はコアの実行状態とシステムプロキシをそれぞれ確認してください。Clash for Windowsの代替ソフトを探す場合は、設定の読み込み、オーバーライドの方法、バックグラウンドサービスの権限を比較しましょう。旧クライアントの設定フォルダーを新しいクライアントにそのまま上書きするのは避けてください。
ダウンロード Windows クライアントClash for macOSをダウンロードするときは、Apple Silicon用とIntel用のインストーラーを区別します。「このMacについて」でチップ情報を確認できます。初回起動時はシステムの案内に従って権限を設定し、既存のネットワーク拡張機能との競合がないか確認してください。TUNを使う場合は、クライアントごとのサービスインストール手順を確認します。通常のブラウザー通信なら、まずシステムプロキシで動作を確認できます。
ダウンロード macOS クライアントClash Androidクライアントを選ぶときは、まずデバイスのアーキテクチャとアプリの対応範囲を確認し、既存のサブスクリプションを読み込みます。初回接続時には通常、VPN接続の作成を許可する必要があります。同じシステム通信経路を使う別のアプリがある場合は、先に停止してください。バックグラウンドで切断される場合は、バッテリー最適化やバックグラウンド実行の制限を確認してから、ノードに問題があるか判断しましょう。アプリを前面に表示したまま速度テストを繰り返すだけでは、原因を特定できません。
ダウンロード Android クライアントダウンロードページにはClash PlusのApp Storeへのリンクと、公式サイト clashplus.io が掲載されています。インストール後はアプリの案内に従って設定を読み込み、VPN接続を許可してください。クライアントによって対応する設定項目は異なります。デスクトップの設定をスマートフォンへ移行する場合は、読み込み時の案内と実行ログを確認しましょう。スクリプト、オーバーライド、特殊なルールが含まれる場合は、そのまま使えると決めつけず、項目ごとに確認してください。
ダウンロード iOS クライアントデスクトップではClash Verge RevとFlClashを比較し、ディストリビューションに合ったパッケージを選べます。コマンドラインアプリはデスクトップ環境のシステムプロキシを参照するとは限らないため、環境変数やアプリの引数を別途確認してください。サーバーやルーターで使う場合は、ダウンロードページのコア欄を確認し、サービス管理、ファイル権限、待ち受け範囲を個別に設定します。デスクトップ向けの手順をリモートホストにそのまま適用しないでください。
ダウンロード Linux クライアントLinuxのペンギン画像:Font Awesome Tux、CC BY 4.0。インラインのベクター画像のみ使用。
このサイトではダウンロード先とトラブル対処の情報をまとめています。すべてのクライアントの開発元ではありません。ソフトウェアの機能は、利用するプロジェクトのドキュメントと実際の動作を確認してください。
Clashはルールベースのプロキシエコシステムで広く使われている名称です。既存のガイドでは、オリジナルのClash、Clash Meta、mihomoを扱うことがあります。mihomoはClash Metaの技術路線を引き継ぎ、プロキシプロトコル、プロキシグループ、ルール照合、DNSなどのコア機能を提供します。クライアントはその上にGUI、サブスクリプション管理、システムプロキシの切り替え、サービス管理などを追加します。似た名前のソフトを見かけたら、アプリの見た目だけで設定の互換性を判断せず、実際に使われているコアを確認してください。
過去のガイドに記載された設定項目や画面名は、現在のクライアントでは使えない場合があります。未知の項目、非対応プロトコル、設定の読み込みエラーが発生したら、クライアント名、コアの情報、元のエラーメッセージを記録してプロジェクトのドキュメントと照らし合わせましょう。古い設定をコピーして保存できても、すべての項目がコアに適用されたとは限りません。読み込み結果と接続時の挙動の両方で判断してください。
オープンソースのリポジトリでは、ライセンス、設定の実装、問題の議論、リリースノートを確認できます。下記のコマンドはmihomoの公開リポジトリを参照するもので、ソースコードを読みたい方や特定の動作を追跡したい方に役立ちます。GUIクライアントを日常的に使うだけなら、コアを自分でビルドする必要はありません。動作の変更を調べるときは、設定を丸ごと入れ替えるより、リリースノートや関連する問題の記録を読むほうが影響範囲を特定しやすくなります。
コアがオープンソースでも、周辺サービスまですべて同じプロジェクトが提供しているとは限りません。ノードの接続品質、サブスクリプションの内容、アカウントの状態は、それぞれのサービス提供元に依存します。クライアントで利用できなくなったノードを復旧することはできません。問題を報告する前に、最小限の設定で再現し、OS環境と具体的な操作を記載しましょう。個人の認証情報や無関係なルールは削除してください。コアの不具合、クライアント統合の違い、サブスクリプション自体の問題を切り分けやすくなります。
クライアント、コア、サブスクリプションは個別に更新でき、常に同時に変わるわけではありません。アップグレード前に設定とローカルのオーバーライドをエクスポートし、正常に動作しているプロキシモードとDNS設定を記録しておきましょう。更新後は同じ接続先でテストし、システムプロキシ、TUNの権限、ルールセットの読み込み、サブスクリプションの更新が想定どおりか確認してから、自動更新や複雑なポリシーを元に戻します。更新後に問題が起きた場合は、何度も再インストールするより、更新前後の差分を残すほうが原因を特定しやすくなります。
接続ログに記録されるのはリクエストの過程であり、障害原因のすべてを示すものではありません。タイムアウトは名前解決、出口への接続、接続先からの応答のどの段階でも発生する可能性があります。同じエラー表示でも、前後の状況を踏まえて判断してください。このサイトでは、操作、現象、確認の順に説明し、設定変更の結果を観察できるようにしています。解決方法が見つからない場合は、まずよくある質問を確認し、はじめにを参考に、必要最小限の接続経路から再確認してください。
問題に合わせて記事を選び、まず通信がコアに届いているか、その後の経路がどう選ばれるかを確認しましょう。
ネットワークスタックの層をもとに、システムプロキシとTUN仮想インターフェースが通信を取り込む仕組みを解説。UDP、ゲーム、コマンドラインアプリへの対応範囲や有効化時の注意点も比較します。
通信の取り込み方を比較する →3種類の自動選択プロキシグループについて、経路選択の仕組み、速度テストの設定、適した用途を比較します。そのまま応用できるYAML例と、selectグループを組み合わせる方法も紹介。
プロキシグループの設定ノートを読む →システムプロキシを有効にしてもウェブやコマンドラインの通信が直接接続される場合に、ブラウザーの拡張機能とプロキシ設定、ターミナルの環境変数、PACルールを順に確認して原因を特定します。
システムプロキシの確認リストを読む →