Clashのサブスクリプション追加
と基本設定
既存のサブスクリプションを使い、「追加 → モード選択 → 接続 → 確認」の順に基本設定を行います。まずブラウザーで接続できることを確認してから、TUN、DNS、カスタムルールを設定しましょう。
始める前に:サブスクリプションを用意
Clashクライアントをインストールしても、プロキシノードが自動的に利用可能になるわけではありません。開始前に、有効なClash形式のサブスクリプションURL、または利用可能なYAML設定ファイルを用意してください。URLとサービスの提供状況は、サブスクリプションの提供元にお問い合わせください。当サイトではクライアントの入手先と操作ガイドを案内しており、サブスクリプションは配布していません。単独のプロトコルURLや長いエンコード文字列しかない場合は、クライアントがその形式に対応しているか確認してください。完全な設定としてそのまま追加しないでください。
初回設定では、まずデフォルト設定のまま進めることをおすすめします。他のプロキシ、VPN、ブラウザー拡張機能が有効になっているか確認し、テスト中は通信を取り込む方法を一つに絞って、通信経路が分かりやすい状態にしてください。会社や学校の管理下にある端末では、プロキシ設定、ネットワーク拡張機能、サービスのインストールが制限される場合があります。端末の管理ルールに従い、権限昇格を繰り返して制限を回避しようとしないでください。
サブスクリプションURLにはアカウントのアクセストークンが含まれる場合があるため、パスワードと同様に扱ってください。スクリーンショットを共有する際はURL全体を隠し、ログを調べる際はURLのパラメーターやノードの認証情報を削除してください。見覚えのないオンライン変換サイトにURLを入力しないでください。「コア」「設定」「ノード」といった用語に慣れていない場合は、先に用語集を確認してから、以下の手順に進んでください。
ステップ1:サブスクリプションを追加して設定を有効化
Clashクライアントを開き、「設定」「サブスクリプション」または「Profiles」画面に移動します。「新規作成」「追加」などの項目、またはサブスクリプションURLの入力欄を探してください。提供元からURL全体をコピーして貼り付け、先頭や末尾に空白、改行、チャットアプリが付けた句読点が混ざっていないか確認します。URL内のクエリパラメーターもすべて必要です。ドメイン名やパスだけをコピーしないでください。
「追加」または「ダウンロード」をクリックし、クライアントが取得と解析を終えるまで待ちます。成功すると通常は設定名が表示されたカードが追加され、クライアントによっては更新日時も表示されます。設定カードが表示されただけでは、その設定が有効になったとは限りません。カードをクリックするか、「有効化」「使用」メニューを選び、選択済みの表示を確認してください。その後「プロキシ」画面に移動し、プロキシグループが表示されることを確認します。
ローカルファイルを使う場合は、「ファイルから追加」またはクライアント対応のドラッグ&ドロップ機能で、実際のYAMLファイルを選択します。他の形式のファイルの拡張子だけを.yamlに変更しないでください。拡張子を変えても、ファイルの内部構造は変わりません。完全な設定には通常、プロキシノード、プロキシグループ、ルールなどが含まれます。数行のルールだけのサンプルでは、提供元の設定の代わりにはなりません。
失敗した箇所に応じて追加エラーを確認
追加後も処理が終わらない、またはtimeoutやcontext deadline exceededが表示される場合は、取得処理が制限時間内に完了していない可能性があります。まず端末自体がインターネットに接続できるか確認し、次にサブスクリプションURLへアクセスできるか確認してください。初回追加時はまだ利用可能なプロキシがないため、今回のダウンロードを新たに追加する設定経由で行うことはできません。現在利用できるネットワークを使うか、提供元に利用可能な取得方法を確認してください。
401または403が返る場合は、URLの有効期限、パラメーターの不足、アカウントのアクセス権を確認してください。提供元のアクセス制限による応答の場合もあるため、案内に照らして判断します。yaml: unmarshal errorsや行番号付きの解析エラーが表示される場合は、取得した内容が想定された形式ではありません。ウェブページのエラー、ログイン画面、別のクライアント専用のサブスクリプションをYAMLとして読み込もうとしている可能性があります。
エラーが出ても、同じサブスクリプションを何度も追加しないでください。まず一つだけ残し、URLを確認して更新を試します。置き換えが必要な場合は、新旧の設定に別々の名前を付け、新しい設定が使えることを確認してから古い項目を削除してください。サブスクリプションの更新では通常、リモートの内容が再取得されます。サブスクリプション本文を直接編集しても上書きされることがあるため、初回はルールを変更しないでください。ローカルの変更を長期間保持したい場合は、ローカルオーバーライドと設定管理を確認してください。
この手順の完了条件は、設定一覧で一つの設定が明確に選択され、「プロキシ」画面にそのプロキシグループが表示され、クライアントで読み込みエラーが続いていないことです。この状態になってからプロキシモードを選びます。ネットワーク関連のスイッチをすべて同時に有効にする必要はありません。
ステップ2:ルールモードとプロキシポリシーを選択
「プロキシ」またはホーム画面の「モード」設定を開き、「ルール」またはRuleを選択します。このモードでは、現在の設定に含まれるルールにリクエストを順に照合し、対応するポリシーで処理します。日常利用に適したモードですが、どのサイトがプロキシ経由になり、どのサイトが直接接続になるかはサブスクリプションの設定内容によって異なります。地域名だけでクライアントが自動的に決めるわけではありません。
次にプロキシグループを確認します。「プロキシ」「ノード選択」「自動選択」などがよく使われますが、提供元独自の名前が付いている場合もあります。プロキシの出口を決めるグループを開き、利用可能と分かっているノード、または設定に含まれる自動選択グループを選んでください。グループが階層化されている場合は、最終的な選択先まで確認します。外側のグループ名だけを見て、内側の選択先がDIRECTや利用できない古いノードのままになっていないか注意してください。
クライアントの接続テストや遅延テストは、ノード選びの参考になります。ただし、テストに成功しても、その時点でテスト対象へ到達できたことを示すだけで、すべてのサイトやアプリが利用できるとは限りません。初回はノードを一つ選んで、そのまま動作確認を進めてください。ページの読み込み中に何度も切り替えないでください。ノード変更後もアプリが以前の接続を使い続けることがあります。その場合はテストページを開き直すか、対象アプリの接続をいったん終了してから再試行してください。
| モード | 処理方法 | 初回利用時のおすすめ |
|---|---|---|
| ルール / Rule | 設定内のルールに従って、直接接続、プロキシ、その他のポリシーに振り分けます。 | まずこのモードを使い、リクエストごとのルール適用結果を確認します。 |
| グローバル / Global | コアに渡された通常のリクエストを、グローバルポリシーで処理します。 | 一時的な比較テストに使い、テスト後はルールモードに戻します。 |
| ダイレクト / Direct | コアに渡されたリクエストを、直接接続で処理します。 | プロキシ経由で接続する必要がある場合は、このモードのままにしないでください。 |
「グローバル」にしても、端末内のすべてのアプリの通信が取り込まれるわけではありません。変更されるのはコアに渡された後の処理方法です。アプリのリクエストがClashクライアントに届くかどうかは、システムプロキシ、TUN、アプリ独自のプロキシ設定によって異なります。同様に、ルールモードを選んでもシステムプロキシは自動的に有効になりません。これらは別々の設定です。次の手順で接続を個別に有効にします。
「プロキシ」画面が空の場合は、ステップ1に戻って設定が有効になっているか確認してください。ノードは表示されているものの、ガイドにあるグループ名が見つからない場合は、同じ名前のグループを手動で作らず、現在の設定にあるグループを使ってください。プロキシグループの種類、ルールの優先順位、MATCHの意味などの応用情報は、基本接続が完了してから応用設定ガイドを確認してください。この手順では、ルールモードが選択され、プロキシポリシーで利用可能な出口が選ばれていることを確認すれば十分です。
ステップ3:接続を開始し、通信の取り込み方法を確認
デスクトップでは、まずホーム画面または設定から「システムプロキシ」を探して有効にします。このスイッチを有効にすると、通常はOSのプロキシ設定がクライアントのローカル待ち受けアドレスに切り替わり、ブラウザーなどシステムプロキシに従うアプリのリクエストがコアに渡されます。有効にした後はクライアントを起動したままにし、すぐに終了しないでください。ウィンドウを閉じても通知領域に格納されるだけのクライアントもありますが、「終了」するとローカルプロキシサービスが停止します。
まずローカルポートは変更しないでください。インターネット上の例ではmixed-port: 7890がよく使われますが、クライアントによって実際のポートは異なります。現在の設定を確認してください。ログにaddress already in useや待ち受けポートのバインド失敗が表示された場合は、別のClashクライアントや他のプログラムがポートを使用していないか確認します。重複して起動しているアプリを終了してから再試行してください。ブラウザーで適当なポート番号を入力するだけでは解決しません。
AndroidやiOSでは通常、「接続」または起動ボタンから通信の取り込みを開始します。初回接続時に、VPN構成の追加やVPN接続の許可を求められる場合があります。インストールしたクライアントを自分で起動した際に表示された確認であることを確かめてから許可してください。ここでのVPNは、OSが提供する通信の取り込み機能です。ステータスバーにVPNマークが表示されただけでは、サブスクリプションのノードが利用可能とは限りません。ステップ4で実際に接続できるか確認してください。
システムプロキシで接続できてからTUNを検討
ブラウザーでは接続できるものの、システムプロキシを使わないアプリがある場合は、TUNモードを検討できます。TUNは仮想ネットワークインターフェースとルーティングを使ってリクエストを取り込みます。管理者権限、サービスモード、ネットワーク拡張機能、OSのVPN許可が必要な場合があり、必要な手順はプラットフォームやクライアントによって異なります。現在のクライアントの案内に従ってインストールや許可を行い、サービスの起動に失敗した場合はまずそのエラーを解決してください。エラーが出ている状態でDNS設定まで変更しないでください。
初回テストでは、通信経路を一つに絞ってください。TUNに切り替える場合は、いったんシステムプロキシを無効にしてからTUNを有効にし、動作を確認します。クライアントが併用を明示的に求める場合は、その案内に従ってください。他のVPN、仮想ネットワークアダプター、セキュリティソフトがルーティングに影響することがあります。テスト中は複数の通信制御ツールを同時に起動しないでください。会社のネットワークに接続している場合は、必要な業務に支障がないよう、変更前のネットワーク状態を記録しておきましょう。
この手順が完了したら、デスクトップではシステムプロキシが有効になっているか、TUNが想定どおり起動していることを確認します。モバイルでは接続状態が表示され、OSの許可が得られていることを確認してください。スイッチを有効にしてもすぐにオフに戻る場合は、「ログ」を開いて起動時のエラーを確認し、最初に表示された関連メッセージを記録してからヘルプセンターで対処方法を調べてください。起動ボタンを何度も押しても、権限やポートの競合は解決しません。
ステップ4:接続とルールの適用状況を確認
ブラウザーを開き、普段から直接接続できるサイトにアクセスして、通常のネットワーク接続に問題がないことを確認します。次に、ルールでプロキシ経由と指定されているサイトなど、プロキシを使うはずのサイトにアクセスしてください。クライアントの接続アイコンだけで判断しないでください。ページが最後まで読み込めるか、リクエストがコアに届いているか、最終的にどの出口が選択されたかをあわせて確認します。
次にClashクライアントの「接続」画面を開き、テストページを再読み込みして該当するドメインやアプリのリクエストを探します。接続時間が短いリクエストは、ページの読み込み後すぐに一覧から消えることがあります。その場合は「ログ」を確認し、もう一度ページを再読み込みしてください。適用されたルール、プロキシグループ、最終的に選ばれたノードまたはDIRECTを確認します。ルールモードでは直接接続とプロキシ接続のリクエストが混在しても正常です。すべての記録を同じノードにするためにグローバルモードへ切り替える必要はありません。
ページは開くのに関連する記録が見つからない場合は、再読み込みによって新しいリクエストが発生しているか確認してください。ブラウザーのキャッシュ、他のプロキシ拡張機能、アプリ独自のプロキシ設定、別のVPNによって、予想と異なる結果になることがあります。ブラウザーのプロキシ拡張機能を一時的に無効にして、テストページを開き直してください。同じブラウザーのシークレットウィンドウを使うとキャッシュの影響を減らせますが、シークレットウィンドウにしてもシステムプロキシを回避したり、通信の出口が変わったりするわけではありません。
症状から確認範囲を絞る
新しいリクエストがまったく記録されない場合は、システムプロキシ、またはモバイルの接続スイッチが実際に有効か確認し、テストするアプリがその取り込み方法に対応しているか確かめます。ログにconnection refusedが表示された場合は、接続先を確認し、ローカルの待ち受けが起動していないのか、リモート側が接続を拒否したのか判断してください。この文字列だけを見て、サブスクリプションが無効だと決めつけないでください。
リクエストが表示され、プロキシノードも選択されているのにページがタイムアウトする場合は、同じプロキシグループ内で利用可能な別のノードに切り替えて再試行してください。グローバルモードなら接続できるのにルールモードでは失敗する場合は、クライアントを何度も再インストールするのではなく、そのドメインに適用されたルールとポリシーを確認します。比較テスト後はルールモードに戻し、問題が起きたドメインと適用結果を記録しておくと、原因を詳しく調べる際に役立ちます。
ログにドメインの名前解決失敗やDNSクエリのタイムアウトが続けて表示される場合は、まず端末のネットワーク接続と現在の設定が正常か確認し、次にDNS設定の項目を確認してください。DNSアドレスの総入れ替え、TUNの有効化、ルールの変更、ノードの切り替えを一度に行わないでください。接続が回復しても、何が効いたのか分からなくなります。関連する設定を一つずつ変更して結果を記録し、効果のなかった変更は元に戻してください。
証明書の警告が表示された場合は、ブラウザーの警告をそのまま無視しないでください。まずOSの日付と時刻を確認し、通信にパケットキャプチャツールの証明書がインストールされていないか、他のネットワークフィルターが介在していないか確認します。プロキシに接続できることは、証明書の問題を無視してよい理由にはなりません。スリープ復帰後に接続できない、サブスクリプションを更新できない、アプリが直接接続を続けるなどの問題は、ヘルプセンターのトラブル対処もご覧ください。
使用終了時と次回の起動
接続でき、ルールの適用結果も想定どおりなら、基本設定は完了です。この状態で使える設定を維持し、オーバーライドスクリプトの追加や複数のサブスクリプションの統合は急がないでください。次回起動時は、設定が選択されたままか、プロキシグループの選択が変わっていないか確認してから、システムプロキシまたはモバイルの接続を有効にします。OS起動時の自動起動はクライアントを起動する機能です。自動接続やシステムプロキシの自動設定は別の項目になっている場合があるため、それぞれ確認してください。
使用を終えるときは、デスクトップでは先にシステムプロキシを無効にし、モバイルでは先に接続を切ります。TUNを使っている端末では、先にTUNを停止してからクライアントを終了してください。クライアントが予期せずクラッシュしてブラウザーが接続できなくなった場合は、OSにローカルポートを指定する手動プロキシ設定が残っていないか確認し、残っていれば無効にします。ルールセット、Fake-IP、外部制御を引き続き調整する場合は、応用設定ガイドをご覧ください。動作確認済みの基本設定に対して、複数の変更を同時に試さないでください。