Clashクライアントの全て:使い方から設定、ダウンロードまで 詳細解説
はじめに
インターネットの世界は日々進化し、オンラインでのプライバシー、セキュリティ、そして地理的な制限の回避といったニーズはますます高まっています。こうした状況の中で、先進的なプロキシツールとして注目を集めているのが「Clash」です。Clashは、単なるプロキシクライアントではなく、YAML形式の設定ファイルに基づいた強力なルールベースルーティング機能を持ち、ユーザーがインターネットトラフィックを細かく制御できる自由度の高いツールです。
しかし、Clashの真価を引き出すためには、そのコアとなるエンジンを操作するための「Clashクライアント」が必要です。様々なOSやデバイス向けに開発されているこれらのクライアントは、Clashコアの設定、管理、そして利用を直感的かつ効率的に行えるようにするGUI(グラフィカルユーザーインターフェース)やCLI(コマンドラインインターフェース)を提供します。
この記事では、「Clashクライアントの全て」と題して、Clashとは何かという基本的な概念から始まり、なぜClashが選ばれるのか、様々なデバイスで利用できる主要なクライアントの種類、それぞれのダウンロード・インストール方法、そして最も重要な使い方、基本的な設定からYAMLを使った詳細な設定、さらに応用的な活用方法やトラブルシューティングまで、Clashクライアントに関するあらゆる情報を網羅的に解説します。この記事を読むことで、あなたはClashを最大限に活用し、自身のネットワーク環境をより快適、安全、そして自由にするための知識とスキルを習得できるでしょう。
約5000語の詳細な解説を通じて、Clash初心者の方から、さらに深く使いこなしたいと考えている方まで、すべての方にとって有益な情報を提供することを目指します。さあ、Clashの世界へ深く潜り込んでいきましょう。
1. Clashとは何か? その基本的な概念
Clashは、Go言語で書かれたクロスプラットフォーム対応のルールベースプロキシコアです。その最大の特徴は、YAML形式の設定ファイルを用いて、ネットワークトラフィックを様々な条件(ドメイン名、IPアドレス、地域、プロセス名など)に基づいて、異なるプロキシサーバーに振り分けたり、直接接続したり、あるいはブロックしたりする、非常に柔軟なルーティング制御が可能である点にあります。
Clashコア(エンジン)の役割
Clashそのものは、ネットワークトラフィックを処理するためのバックエンドエンジンです。設定ファイル(config.yaml)を読み込み、そのルールに従ってトラフィックをどのように扱うかを決定します。Clashコア単体では、GUIを持たないため、設定の変更や状態の確認はコマンドラインやRESTful APIを通じて行う必要があります。
Clashクライアントの役割
ここでClashクライアントが登場します。Clashクライアントは、このClashコアを操作するためのフロントエンドとして機能します。
- GUIによる直感的な操作: YAMLファイルを直接編集することなく、ボタンやメニュー操作でプロファイルの切り替え、モード設定、プロキシグループの選択などができます。
- 視覚的な情報表示: ネットワーク接続の状態、現在のモード、有効なプロファイル、各プロキシの遅延などを視覚的に確認できます。
- システム連携: OSのシステムプロキシ設定を自動的に変更したり、透明プロキシ機能を利用するための設定を行ったりします。
- ログ表示: トラフィックのルーティング状況やエラーメッセージなどをリアルタイムで確認できます。
つまり、Clashクライアントは、高性能なClashコアを、一般のユーザーでも簡単に扱えるようにするための「インターフェース」なのです。
なぜClashが人気なのか?
Clashが多くのユーザーに選ばれる理由はいくつかあります。
- 圧倒的な柔軟性: YAMLベースの高度なルール設定により、非常に複雑なルーティング要件にも対応できます。例えば、「特定の動画サイトは高速なサーバー経由、銀行サイトは直接接続、仕事関連は別の特定のサーバー経由」といった設定が可能です。
- 広範なプロトコル対応: Shadowsocks(SS), ShadowsocksR(SSR), VMess, VLESS, Trojan, Snell, HTTP, SOCKS5など、主要なプロキシプロトコルを多数サポートしています。
- プロキシグループ機能: 複数のサーバーをグループ化し、速度テストに基づいて最適なサーバーを自動選択したり(url-test)、障害発生時に別のサーバーに切り替えたり(fallback)、ラウンドロビンで負荷分散したり(load-balance)といった高度な利用が可能です。ユーザーは手動でサーバーを選択することもできます(select)。
- パフォーマンス: Go言語で実装されており、比較的軽量で高速な処理が可能です。
- クロスプラットフォーム: Windows, macOS, Linux, Android, iOSなど、主要なOSすべてに対応したクライアントやコアが存在します。
- 活発なコミュニティ: 多くの開発者とユーザーがおり、常に改良が進んでいます。
これらの特徴により、Clashはネットワークトラフィックを高度に制御したいと考えるユーザーにとって、非常に魅力的なツールとなっています。
2. Clashの主な機能とメリット
Clashとそのクライアントが提供する具体的な機能と、それがユーザーにもたらすメリットをさらに詳しく掘り下げます。
2.1. ルールベースルーティング
これはClashの最も核となる機能です。設定ファイルに記述されたルールに従って、個々のネットワーク接続をどのように処理するかを決定します。
- 機能: トラフィックの宛先(ドメイン名、IPアドレス)、送信元(プロセス名)、その他様々な条件に基づいて、利用するプロキシサーバー、または「DIRECT(直接接続)」、「REJECT(接続拒否)」といったアクションを定義します。
- メリット:
- きめ細やかな制御: アプリケーションごと、アクセス先のサイトごとに最適な接続方法を選択できます。
- 効率的なリソース利用: 全てのトラフィックをプロキシ経由にする必要がなく、必要なものだけをプロキシに通すことで、帯域幅やサーバーリソースを節約できます。
- 特定のサイトへのアクセス制御: 地域制限のあるサービスや、特定の国からのアクセスを制限しているサービスへのアクセスを柔軟に制御できます。
- 広告・マルウェアサイトブロック: 悪意のあるドメインへのアクセスをREJECTすることで、セキュリティと快適性を向上させます。
2.2. 多様なプロキシプロトコル対応
Clashは、現在主流となっている多くのプロキシプロトコルをサポートしています。
- 機能: Shadowsocks(SS), ShadowsocksR(SSR), VMess, VLESS, Trojan, Snell, HTTP, SOCKS5といったプロトコルで接続するプロキシサーバーを利用できます。
- メリット:
- 選択肢の豊富さ: 様々なプロバイダーや自己構築したサーバーを利用できます。
- 互換性: 既存の多くのプロキシサービスとの互換性があります。
2.3. プロキシグループ
複数のプロキシサーバーを論理的なグループとして扱えます。
- 機能:
select
: ユーザーが手動でグループ内のサーバーを選択します。fallback
: グループ内のサーバーを順番にテストし、最初に正常に接続できたサーバーを利用します。障害発生時に自動的に切り替わります。url-test
: 定期的に各サーバーの遅延(応答速度)をテストし、最も遅延の少ないサーバーを自動的に選択します。load-balance
: グループ内のサーバーにトラフィックを分散させます(通常はハッシュベース)。
- メリット:
- 可用性の向上: サーバー障害時も自動的に代替サーバーに切り替わります(fallback)。
- パフォーマンスの最適化: 常に最も高速なサーバーを自動的に利用できます(url-test)。
- 運用の効率化: 複数のサーバーを手動で切り替える手間が省けます。
2.4. 透明プロキシ(TProxy)
一部のOSや環境(特にLinuxやルーター)では、Clashを透明プロキシとして動作させることができます。
- 機能: アプリケーション側でプロキシ設定を意識することなく、すべてのネットワークトラフィックをClash経由で透過的に処理します。
- メリット: アプリケーションごとにプロキシ設定を行う必要がなくなります。システム全体のトラフィック制御が容易になります。
2.5. HTTP/SおよびSOCKS5プロキシサーバー機能
Clashは、自身がクライアントとしてだけでなく、他のデバイスからの接続を受け付けるプロキシサーバーとしても動作できます。
- 機能: 指定したポートでHTTP/SおよびSOCKS5プロキシサーバーとして待ち受けます。
- メリット: 同じローカルネットワーク内の他のデバイス(スマートフォン、タブレット、別のPCなど)から、Clashが動作しているPCをプロキシサーバーとして利用できます。これにより、Clashのルールベースルーティング機能を複数のデバイスで共有できます。
2.6. RESTful API
ClashコアはRESTful APIを提供しています。
- 機能: 外部からClashの設定変更、状態確認、統計情報の取得などが可能です。
- メリット: クライアントアプリケーションはこのAPIを利用してGUIを提供します。開発者は独自のClash管理ツールを作成できます。
2.7. 遅延テスト
各プロキシサーバーへの接続遅延(レイテンシ)を測定できます。
- 機能: 各プロキシサーバーに対して特定のアドレス(例:http://cp.cloudflare.com/)に接続し、応答までの時間を測定します。
- メリット: どのサーバーが現在最も高速か、あるいは利用可能かを確認できます。プロキシグループのurl-test機能はこの情報に基づいて最適なサーバーを選択します。
2.8. 設定の柔軟性 (YAML)
全ての設定がYAMLファイルで管理されます。
- 機能: テキストエディタで設定ファイルを直接編集することで、GUIでは提供されていない高度な設定や、一括での設定変更が可能です。
- メリット: 設定のバージョン管理が容易になり、複雑な設定も効率的に行えます。他のユーザーと設定を共有するのも簡単です。
これらの機能が組み合わさることで、Clashは非常に強力で柔軟なネットワークツールとなっています。
3. 様々なClashクライアント
Clashコアはエンジンであり、ユーザーは通常、デスクトップアプリケーションやモバイルアプリといった「クライアント」を通じてClashを利用します。主要なOSやデバイス向けに、様々なクライアントが存在します。ここでは、代表的なクライアントを紹介します。
3.1. Windows向けクライアント
- Clash for Windows (CFW):
- 最も広く使われているWindows向けGUIクライアントです。
- Clash Premiumコアを使用しており、多くの高度な機能(透明プロキシ、TUNモードなど)をサポートします。
- 直感的で使いやすいインターフェースを提供します。
- macOS版やLinux版も存在しますが、Windows版が最も有名です。
- 開発が活発で、頻繁にアップデートされています。
- GitHubで開発・配布されています。
- Clash Verge:
- 新しいWindows向けGUIクライアントで、ElectronとVue.jsを使用しています。
- モダンなUIデザインと、CFWに似た機能を提供します。
- Windowsだけでなく、macOSやLinuxにも対応しています。
- こちらもGitHubで開発・配布されています。
- Clash.NET:
- .NET Frameworkで書かれたWindows向けGUIクライアント。
- CFWやClash Vergeと比較するとユーザーは少ないかもしれません。
3.2. macOS向けクライアント
- ClashX:
- macOSネイティブのGUIクライアントです。
- メニューバーアプリとして動作し、Macユーザーにとって自然な使用感を提供します。
- Clash Premiumコアを内蔵しています。
- GitHubで開発・配布されています。
- Clash for Windows (CFW):
- Windows版と同様のUIを持つmacOS版もあります。
- CFWに慣れているユーザーはmacOSでもこちらを選ぶことがあります。
- Clash Verge:
- Mac版も提供されています。
3.3. Linux向けクライアント
- Clash (CLI):
- Clashコアそのものです。GUIはありませんが、コマンドラインで直接操作できます。
- サーバーやルーターなど、GUIがない環境でよく利用されます。
- Clash for Windows (CFW):
- Electronベースのため、Linuxでも動作するバージョンが提供されています。
- GUIが必要な場合に便利です。
- Clash Verge:
- Linux版も提供されています。
- 其他GUI客户端:
- QtClashなど、Qtフレームワークを使ったGUIクライアントも存在します。
3.4. Android向けクライアント
- Clash for Android (CFA):
- Androidデバイス向けの公式(のような位置付けの)GUIクライアントです。
- VpnServiceを利用して、システム全体のトラフィックを捕捉・処理します。
- Google Playストアでは配布されていませんが、GitHubやF-Droidから入手可能です。
- 豊富な設定オプションを提供します。
- Clash Lite:
- CFAよりもシンプルなUIを目指したクライアント。
3.5. iOS向けクライアント
iOSのApp Storeのポリシーにより、Clashコアをそのまま内蔵した無料のクライアントは提供が難しい場合があります。代わりに、Clash互換の設定ファイルを利用できるクライアントが主流です。
- Stash:
- 有料のiOS向けプロキシクライアントで、Clash互換の設定ファイル(YAML)をサポートしています。
- Clashの強力なルールベースルーティング機能をiOSで利用できます。
- App Storeで入手可能です。
- Shadowrocket:
- 有料のiOS向けプロキシクライアントで、非常に多くのプロトコルと機能をサポートしています。
- Clashの設定形式(YAML)をインポートして利用することも可能です。
- App Storeで入手可能です。
- Quantumult X:
- 高度なカスタマイズが可能な有料のiOS向けプロキシクライアントです。
- Clashの設定形式を含む様々な設定形式をサポートしています。
- App Storeで入手可能です。
3.6. ルーター/組み込みデバイス向け
- OpenClash:
- OpenWrtファームウェアを搭載したルーター向けのClashクライアントパッケージです。
- ルーターレベルでClashの機能を有効にできます。
- Clash Premium (コア):
- OpenWrtなどのカスタムファームウェアや、ARMベースのミニPC(Raspberry Piなど)に直接Clash Premiumコアをインストールして利用する方法もあります。GUIは通常、WebインターフェースやCLIを利用します。
どのクライアントを選ぶかは、利用するOS、UIの好み、必要な機能によって異なります。WindowsユーザーにはCFWまたはClash Verge、macOSユーザーにはClashXまたはClash Verge、AndroidユーザーにはCFA、iOSユーザーにはStashやShadowrocketが一般的です。以降の説明では、特にユーザー数の多いClash for Windows (CFW) を中心に解説しますが、基本的な概念や操作は他のクライアントでも共通しています。
4. 各クライアントのダウンロード方法とインストール
Clashクライアントは、公式ウェブサイトではなく、主にGitHubのリリースページや、各OSのアプリストア(iOSのStash/Shadowrocketなど)、代替アプリストア(AndroidのF-Droidなど)から配布されています。ここでは、主要なクライアントの入手方法とインストール手順を説明します。
セキュリティ上の注意:
ClashクライアントやClashコアの実行ファイルは、ネットワークトラフィックを傍受・処理する性質上、システムに対して高い権限を要求することがあります。必ず信頼できる提供元(通常は各プロジェクトの公式GitHubリポジトリ)からダウンロードしてください。非公式のサイトやフォーラムからダウンロードした実行ファイルは、マルウェアが含まれている可能性があるため非常に危険です。
4.1. Clash for Windows (CFW) のダウンロードとインストール (Windows/macOS/Linux)
CFWはElectronベースのため、Windows、macOS、Linuxでほぼ同じアプリケーションが提供されています。
- GitHubリリースページにアクセス: ウェブブラウザで https://github.com/Fndroid/clash_for_windows_pkg/releases にアクセスします。
- 最新リリースを探す: ページ上部にある最新のリリース(Latest release)を見つけます。
- 適切なファイルをダウンロード: お使いのOSとアーキテクチャ(32bitまたは64bit)に合ったファイルをダウンロードします。
- Windows:
Clash.for.Windows-*-win.7z
(ポータブル版) またはClash.for.Windows-*-win-x64.exe
(64bitインストーラー) /Clash.for.Windows-*-win-ia32.exe
(32bitインストーラー) など。通常はインストーラー版が推奨されます。 - macOS:
Clash.for.Windows-*-mac.dmg
- Linux:
Clash.for.Windows-*-linux-x64.tar.gz
など (実行ファイルを含むアーカイブ) または.AppImage
ファイル。
- Windows:
- インストール/展開:
- Windowsインストーラー (
.exe
): ダウンロードした.exe
ファイルを実行し、画面の指示に従ってインストールします。インストール完了後、アプリケーションを起動します。 - Windowsポータブル版 (
.7z
): 7-Zipなどの解凍ツールを使ってファイルを展開します。展開されたフォルダ内のClash for Windows.exe
を実行します。 - macOS (
.dmg
): ダウンロードした.dmg
ファイルをダブルクリックしてマウントします。開いたウィンドウで「Clash for Windows.app」をApplicationsフォルダにドラッグ&ドロップします。ApplicationsフォルダからClash for Windowsを起動します。初めて起動する際は、セキュリティ警告が表示されることがあります。「開く」をクリックして許可してください。 - Linux (
.tar.gz
): ターミナルを開き、ダウンロードしたファイルがあるディレクトリに移動します。tar -xzf Clash.for.Windows-*-linux-x64.tar.gz
コマンドで展開します。展開されたフォルダ内の実行ファイルを./Clash\ for\ Windows
のように実行します。.AppImage
ファイルの場合は、実行権限を付与(chmod +x your_clash_file.AppImage
)してから実行します。
- Windowsインストーラー (
4.2. ClashX のダウンロードとインストール (macOS)
macOSネイティブクライアントです。
- GitHubリリースページにアクセス: https://github.com/ClashX/ClashX/releases にアクセスします。
- 最新リリースを探す: 最新リリースを見つけます。
.dmg
ファイルをダウンロード: アセットの中からClashX.dmg
またはClashX-Pro.dmg
をダウンロードします(Pro版は追加機能がありますが、無料版でも基本的な利用には十分です)。- インストール: ダウンロードした
.dmg
ファイルをダブルクリックしてマウントします。開いたウィンドウで「ClashX.app」または「ClashX Pro.app」をApplicationsフォルダにドラッグ&ドロップします。ApplicationsフォルダからClashXを起動します。初めて起動する際は、セキュリティ警告が表示されることがあります。「開く」をクリックして許可してください。メニューバーにアイコンが表示されます。
4.3. Clash Verge のダウンロードとインストール (Windows/macOS/Linux)
新しいUIを持つクライアントです。
- GitHubリリースページにアクセス: https://github.com/MetaCubeX/Clash-Verge/releases にアクセスします。
- 最新リリースを探す: 最新リリースを見つけます。
- 適切なファイルをダウンロード: お使いのOSとアーキテクチャに合ったファイルをダウンロードします。CFWと同様、Windowsインストーラー版やポータブル版、macOS
.dmg
、Linux.AppImage
などが提供されています。 - インストール/展開: ダウンロードしたファイル形式に応じて、CFWと同様の手順でインストールまたは展開し、アプリケーションを起動します。
4.4. Clash for Android (CFA) のダウンロードとインストール (Android)
Google Playストアでは配布されていないため、GitHubまたはF-Droidから入手します。
- GitHubリリースページにアクセス: https://github.com/Kr328/ClashForAndroid/releases にアクセスします。
- 最新リリースを探す: 最新リリースを見つけます。
.apk
ファイルをダウンロード: アセットの中からclash.for.android-*-with-premium-unified.apk
またはclash.for.android-*-full.apk
をダウンロードします。通常はwith-premium-unified
またはfull
を含むバージョンが良いでしょう。- インストール: ダウンロードした
.apk
ファイルをタップして実行します。Androidのセキュリティ設定で「提供元不明のアプリのインストール」を許可する必要がある場合があります。画面の指示に従ってインストールを完了します。インストール後、アプリ一覧からClash for Androidを起動します。- F-Droidから: F-Droidアプリストアをインストールしている場合、F-Droidアプリ内で「Clash for Android」を検索してインストールすることもできます。こちらの方がアップデート管理が容易です。
4.5. Stash のダウンロードとインストール (iOS)
App Storeからダウンロードします。有料アプリです。
- App Storeを起動: iPhoneまたはiPadからApp Storeアプリを起動します。
- 「Stash」を検索: 検索バーに「Stash」と入力して検索します。
- ダウンロード・購入: 検索結果に表示されたStashアプリをタップし、購入してダウンロード・インストールします。
- 起動: インストール完了後、ホーム画面のアイコンをタップしてStashを起動します。
4.6. Shadowrocket / Quantumult X のダウンロードとインストール (iOS)
これらのアプリもApp Storeからダウンロード・購入します。基本的な手順はStashと同様です。
5. 基本的な使い方:プロファイルの管理
Clashクライアントの最も基本的な使い方は、「プロファイル」の管理です。プロファイルとは、Clashコアが使用する設定ファイル(config.yaml)のことです。このファイルには、利用可能なプロキシサーバーの情報、プロキシグループの設定、そして最も重要なルーティングルールなどが記述されています。
プロファイルは、通常、VPNサービスプロバイダーから提供されるURL、あるいは自身で作成したローカルファイルとして入手します。
5.1. プロファイルの取得方法
- プロバイダーからのURL: 多くのVPN/プロキシサービスプロバイダーは、Clash用のサブスクリプションURLを提供しています。このURLから、最新のサーバー情報や基本的なルールを含むプロファイルをダウンロードできます。これが最も一般的な方法です。
- ローカルファイル: 自分で
.yaml
形式のプロファイルファイルを作成または編集し、それをクライアントにインポートします。 - 手動作成: クライアントのUIから、個々のサーバー設定やルールを手動で入力してプロファイルを作成します(これは手間がかかるため一般的ではありません)。
5.2. Clash for Windows (CFW) でのプロファイル管理
CFWは、プロファイル管理機能が充実しています。
- プロファイルのインポート:
- CFWの左側のメニューから「Profiles」を選択します。
- URLからインポート: 上部の入力欄にプロファイルURLを貼り付け、「Download」ボタンをクリックします。CFWがURLからプロファイルファイルをダウンロードし、リストに追加します。
- ローカルファイルからインポート: 入力欄の下にある「Import from file」ボタンをクリックします。ファイル選択ダイアログが開くので、ローカルに保存されている
.yaml
プロファイルファイルを選択します。ファイルがリストに追加されます。
- プロファイルの選択/有効化:
- 「Profiles」画面にインポートされたプロファイルのリストが表示されます。
- 利用したいプロファイルの項目をクリックします。クリックされたプロファイルがハイライトされ、自動的にClashコアにロードされて有効化されます。有効なプロファイルには、通常、右側にチェックマークなどが表示されます。
- プロファイル情報の確認:
- 有効なプロファイルの名前をクリックすると、そのプロファイルに含まれるプロキシサーバーやプロキシグループの情報などが表示されることがあります(クライアントのバージョンによります)。
- プロファイル編集:
- 「Profiles」画面で、プロファイルのリストの上にある「Edit」ボタンをクリックします。すると、有効なプロファイルのYAMLコードがテキストエディタで開かれます。ここで直接YAMLを編集し、保存することができます。YAML編集については後述します。
- プロファイルのリフレッシュ/削除:
- プロファイルURLからダウンロードした場合、プロバイダーがサーバー情報を更新することがあります。リスト内のプロファイルにマウスカーソルを合わせると表示される更新アイコン(通常は円形の矢印)をクリックすると、URLから最新のプロファイルを再ダウンロードできます。
- プロファイルにマウスカーソルを合わせると表示されるゴミ箱アイコンをクリックすると、そのプロファイルをリストから削除できます。
5.3. ClashX でのプロファイル管理 (macOS)
ClashXはメニューバーアプリとして動作するため、操作はメニューから行います。
- プロファイルのインポート:
- メニューバーのClashXアイコンをクリックします。
- 「Configuration」メニューを選択します。
- URLからインポート: 「Managed Configurations」 -> 「New Managed Configuration from URL…」を選択します。ダイアログが表示されるので、プロファイルURLを入力してOKをクリックします。
- ローカルファイルからインポート: 「Managed Configurations」 -> 「Install from File…」を選択します。ファイル選択ダイアログが開くので、ローカルの
.yaml
ファイルを選択します。
- プロファイルの選択/有効化:
- 「Configuration」メニューの下部に、インポートされたプロファイルのリストが表示されます。
- 利用したいプロファイルの名前をクリックします。選択されたプロファイルが有効化されます。
- プロファイルのリフレッシュ/削除:
- 「Configuration」->「Managed Configurations」サブメニューに、管理されているプロファイルのリストが表示されます。各プロファイルの横に更新や削除のオプションがあります。
5.4. Clash for Android (CFA) でのプロファイル管理
CFAはモバイルアプリとして、直感的なUIを提供します。
- プロファイルのインポート:
- アプリを起動し、左下の「Profiles」アイコンをタップします。
- 右下の「+」ボタンをタップします。
- URLからインポート: 「From URL」を選択します。プロファイルURLを入力する画面が表示されるので、URLを貼り付けてOKをタップします。
- ローカルファイルからインポート: 「From File」を選択します。ファイル選択画面が表示されるので、ローカルの
.yaml
ファイルを選択します。
- プロファイルの選択/有効化:
- 「Profiles」画面にインポートされたプロファイルのリストが表示されます。
- 利用したいプロファイルの項目をタップします。タップしたプロファイルが選択され、有効化されます。
- プロファイルのリフレッシュ/削除:
- プロファイルのリストで、各プロファイルの右側にある三点リーダーメニューアイコンをタップすると、更新や削除のオプションが表示されます。
5.5. Stash でのプロファイル管理 (iOS)
Stashもモバイルアプリとして、直感的なUIを提供します。
- プロファイルのインポート:
- アプリを起動し、下部のメニューから「Configs」を選択します。
- 右上の「+」ボタンをタップします。
- URLからインポート: 「Download from URL」を選択します。プロファイルURLを入力する画面が表示されるので、URLを貼り付けてダウンロードします。
- ローカルファイルからインポート: ファイル共有機能などを利用してStashにファイルを渡します。
- プロファイルの選択/有効化:
- 「Configs」画面にインポートされたプロファイルのリストが表示されます。
- 利用したいプロファイルの項目をタップします。タップしたプロファイルが選択され、有効化されます。
- プロファイルのリフレッシュ/削除:
- 「Configs」画面で、各プロファイルの項目を左にスワイプすると、編集や削除のオプションが表示されます。URLからダウンロードしたプロファイルの場合、更新オプションも表示されます。
プロファイルをクライアントに読み込ませることは、Clashを使い始めるための第一歩です。次に、このプロファイルを使ってClashを起動し、ネットワークトラフィックを処理する方法を見ていきましょう。
6. 基本的な使い方:Clashの起動と停止、モード設定
プロファイルをインポートしたら、いよいよClashを有効にして、ネットワークトラフィックをClash経由で処理するように設定します。このプロセスには、Clashコアの起動、システムプロキシの設定、そしてClashの動作モードの選択が含まれます。
6.1. Clashの有効化/無効化 (Clashコアの起動/停止)
各クライアントには、Clashコアを起動または停止するためのスイッチやボタンがあります。これをオンにすると、Clashコアがバックグラウンドで起動し、設定されたポートで待ち受けを開始します。
- Clash for Windows (CFW): 左側メニューの「General」を選択します。画面上部に大きな「Started」というスイッチがあります。これをクリックしてオンにします。クリックするとClashコアが起動し、スイッチが緑色に変わります。クリックしてオフにすると、Clashコアが停止します。
- ClashX (macOS): メニューバーのClashXアイコンをクリックします。メニューの一番上にある「Launch at Login」(ログイン時に起動)と「Set as System Proxy」(システムプロキシとして設定)のチェックボックスがあります。「Set as System Proxy」にチェックを入れると、ClashXがシステムプロキシとして設定され、Clashコアが起動します。チェックを外すと停止します。
- Clash for Android (CFA): アプリのメイン画面に大きな接続ボタン(通常は紙飛行機のアイコンなど)があります。これをタップするとClashコア(VpnService)が起動します。もう一度タップすると停止します。
- Stash (iOS): アプリのメイン画面に接続ボタンがあります。これをタップするとVPN接続(StashがClashコアとして動作)が開始します。もう一度タップすると停止します。
Clashコアが起動しても、必ずしも全てのトラフィックがClashを経由するわけではありません。次に、システムプロキシの設定が必要です。
6.2. システムプロキシの設定
多くのClashクライアントは、OSのシステムプロキシ設定を自動的に変更する機能を持っています。この設定を有効にすると、ウェブブラウザや多くのアプリケーションからのHTTP/HTTPS/SOCKSトラフィックが、Clashが待ち受けているローカルポート(通常はHTTPプロキシが7890、SOCKS5プロキシが7891)に送られるようになります。
- Clash for Windows (CFW): 「General」画面に「System Proxy」というスイッチがあります。これをオンにすることで、OSのシステムプロキシ設定が変更され、ブラウザなどのトラフィックがClashを経由するようになります。
- ClashX (macOS): メニューバーのClashXアイコンをクリックし、「Set as System Proxy」にチェックを入れます。
- Clash for Android (CFA): アプリ起動時にVPN接続の許可を求められます。許可すると、システム全体のトラフィックがCFAのVPNサービスを経由するようになります。AndroidのVPN機能を利用するため、別途システムプロキシ設定は不要です。
- Stash (iOS): アプリ起動時にVPN接続の許可を求められます。許可すると、システム全体のトラフィックがStashのVPN構成を経由するようになります。iOSのVPN機能を利用するため、別途システムプロキシ設定は不要です。
システムプロキシ設定を有効にすると、ほとんどのアプリケーションのトラフィックがClashを通るようになりますが、全てのアプリケーションがシステムプロキシ設定を利用するわけではありません。システムプロキシを無視するアプリケーションや、UDPトラフィックなどをClash経由にするには、後述する透明プロキシ(TUNモード)などの機能が必要になります(これは一部のクライアントやOSで利用可能です)。
6.3. モード設定
Clashは、大きく分けて3つの動作モードを持っています。これらのモードは、Clashがトラフィックをどのように処理するかの基本的な方針を決定します。
- Rule (ルールモード):
- 説明: これがClashのデフォルトかつ最も強力なモードです。Clashはプロファイルに記述された「Rules」リストを上から順に評価し、最初にマッチしたルールの指示(どのプロキシグループを使うか、DIRECTかREJECTか)に従ってトラフィックを処理します。
- 利用シーン: ほとんどの場合でこのモードを使用します。柔軟なルーティング制御が可能です。
- Global (グローバルモード):
- 説明: 全てのネットワークトラフィックを、特定の単一のプロキシサーバーまたはプロキシグループ経由で処理します。ルールは無視されます。
- 利用シーン: 全てのトラフィックを特定の場所経由にしたい場合(例:すべてのトラフィックをVPNのように単一サーバー経由にする)。ただし、通常はRuleモードで最後のルールを
MATCH, ProxyGroup
のように設定する方が柔軟です。
- Direct (ダイレクトモード):
- 説明: 全てのネットワークトラフィックを、プロキシを使わずに直接インターネットに接続します。Clashは有効になっていますが、トラフィックは素通りします。
- 利用シーン: 一時的にプロキシを無効にしたいが、Clashクライアントは起動しておきたい場合。
各クライアントでのモード設定方法:
- Clash for Windows (CFW): 「General」画面の「Mode」項目で、ドロップダウンリストから「Rule」「Global」「Direct」を選択します。
- ClashX (macOS): メニューバーのClashXアイコンをクリックし、「Mode」サブメニューから「Rule」「Global」「Direct」を選択します。
- Clash for Android (CFA): アプリのメイン画面の上部などにモード選択のオプションがあります。
- Stash (iOS): アプリのメイン画面のモード表示部分をタップすると、モード選択肢が表示されます。
通常は「Rule」モードを選択し、プロファイル内のルールによってトラフィックを制御します。これで、Clashの基本的な準備が整い、インターネットトラフィックがClashを経由して処理されるようになります。
7. 詳細な設定方法:YAMLプロファイル編集
Clashの真の力は、そのYAML形式の設定ファイル、すなわちプロファイルにあります。GUIクライアントはプロファイルの基本的な操作を提供しますが、より高度な設定やカスタマイズを行うには、YAMLファイルを直接編集することが不可欠です。
YAMLは、人間が読み書きしやすいデータ記述形式です。インデント(字下げ)によってデータの階層構造を表します。Clashのプロファイルファイル(通常config.yaml
という名前ですが、インポートされるファイル名はクライアントによって異なります)は、いくつかの主要なセクションで構成されます。
YAMLの基本構造 (Clashプロファイル)
Clashのプロファイルファイルは、通常、以下の主要なセクションを含みます。
“`yaml
一般設定 (ポート、モードなど)
port: 7890
socks-port: 7891
redir-port: 7892 # 透明プロキシ用
tproxy-port: 7893 # 透明プロキシ用 (新しい方式)
allow-lan: false # LANからの接続を許可するか
mode: rule # モード (rule, global, direct)
log-level: info # ログレベル (silent, error, warning, info, debug)
external-controller: ‘127.0.0.1:9090’ # RESTful API/外部コントローラーのアドレスとポート
secret: ” # 外部コントローラーへのアクセス秘密鍵 (空欄可)
dns: # DNS設定
enable: true
listen: 0.0.0.0:53 # DNSサーバーの待ち受けアドレスとポート
enhanced-mode: fake-ip # 拡張DNSモード (redir-host, fake-ip)
fake-ip-range: 198.18.0.1/16 # fake-ip使用時のIP範囲
default-nameserver: # フォールバックDNSサーバー
– 114.114.114.114
– 223.5.5.5
nameserver: # 優先DNSサーバー (暗号化DNSなど)
– https://doh.pub/dns-query
– tls://dns.alidns.com:853
プロキシサーバーリスト
proxies:
# Shadowsocks (SS) 例
– name: “SS Server 1”
type: ss
server: server1.example.com
port: 443
cipher: aes-265-gcm
password: “your_password”
udp: true # UDP転送を有効にするか
# VMess 例
– name: “VMess Server 1”
type: vmess
server: vmess1.example.com
port: 10000
uuid: “your_uuid”
alterId: 0
cipher: auto
network: tcp # または ws (WebSocket), http, quic, grpc
ws-opts: # WebSocketの場合の追加設定
path: /ws
headers:
Host: vmess1.example.com
# VLESS 例
– name: “VLESS Server 1”
type: vless
server: vless1.example.com
port: 20000
uuid: “your_uuid”
network: tcp # または ws, http, quic, grpc
ws-opts: # WebSocketの場合の追加設定
path: /vless
headers:
Host: vless1.example.com
tls: true # TLSを有効にするか
servername: vless1.example.com
skip-cert-verify: false # 証明書の検証をスキップするか (非推奨)
# Trojan 例
– name: “Trojan Server 1”
type: trojan
server: trojan1.example.com
port: 443
password: “your_password”
sni: trojan1.example.com # SNIを設定
skip-cert-verify: false
プロキシグループの定義
proxy-groups:
# 選択型グループ
– name: “Proxy”
type: select
proxies:
– “SS Server 1” # 上記で定義したプロキシの名前を指定
– “VMess Server 1”
– “DIRECT” # 直接接続
– “REJECT” # 接続拒否
– “Another Group” # 別のプロキシグループを参照することも可能
# URLテスト型グループ (最も遅延の少ないサーバーを自動選択)
– name: “Auto”
type: url-test
url: http://cp.cloudflare.com/generate_204 # テスト対象URL
interval: 300 # テスト間隔 (秒)
tolerance: 50 # 遅延許容範囲 (ms)
proxies:
– “SS Server 1”
– “VMess Server 1”
# フォールバック型グループ (順番にテストし、最初に成功したサーバーを利用)
– name: “Fallback”
type: fallback
url: http://cp.cloudflare.com/generate_204
interval: 300
proxies:
– “SS Server 1”
– “VMess Server 1”
# ロードバランス型グループ (トラフィックを分散)
– name: “LoadBalance”
type: load-balance
url: http://cp.cloudflare.com/generate_204
interval: 300
proxies:
– “SS Server 1”
– “VMess Server 1”
ルールリスト
rules:
# ルールは上から順に評価される
# 特定のドメインへのアクセスを直接接続にする
– DOMAIN-SUFFIX,baidu.com,DIRECT
– DOMAIN-KEYWORD,google,Proxy # googleを含むドメインへのアクセスを”Proxy”グループ経由にする
– DOMAIN,github.com,DIRECT # github.comへのアクセスを直接接続
# IPアドレス範囲に基づくルーティング
– IP-CIDR,192.168.1.0/24,DIRECT,no-resolve # プライベートIPは直接接続
# 地域 (GEOIP) に基づくルーティング (Clash Premiumコアが必要)
– GEOIP,CN,DIRECT # 中国国内のIPは直接接続
# プロセス名に基づくルーティング (Windows/macOSで利用可能)
– PROCESS-NAME,firefox.exe,Proxy # Firefoxからのアクセスを”Proxy”グループ経由にする
# 外部ルールセットの参照 (Clash Premiumコアが必要)
# – RULE-SET,geosite-cn,DIRECT # 中国国内のドメインリストは直接接続
# – RULE-SET,geoip-cn,DIRECT # 中国国内のIPリストは直接接続
# – RULE-SET,gfw,Proxy # GFWリストにあるドメインは”Proxy”グループ経由
# 最終ルール (どのルールにもマッチしなかった場合のデフォルトアクション)
– MATCH,Proxy # 残りの全てのトラフィックを”Proxy”グループ経由にする
# または – MATCH,DIRECT # 残りの全てのトラフィックを直接接続にする
“`
各セクションの詳細
- General Settings:
port
,socks-port
: Clashが待ち受けるHTTP/SOCKS5プロキシのポート番号です。通常、クライアントはシステムプロキシをこれらのポートに設定します。allow-lan
:true
に設定すると、同じローカルネットワーク内の他のデバイスから、このPCのIPアドレスとポートを使ってClashをプロキシとして利用できるようになります。セキュリティに注意が必要です。mode
: デフォルトの動作モード(rule, global, direct)を指定します。log-level
: 表示されるログの詳細レベルです。トラブルシューティング時にはdebug
が役立ちます。external-controller
,secret
: ClashのRESTful APIにアクセスするための設定です。GUIクライアントはこのAPIを使ってClashコアを制御します。dns
: DNS設定は非常に重要です。enhanced-mode: fake-ip
は、ドメイン名を解決する際に偽のローカルIPアドレスを返し、そのIPへの接続をClashが傍受して実際のドメインにルーティングする高度なモードです。これにより、DNSリークを防ぎつつ、ドメインベースのルールをIPアドレスベースの接続にも適用できます。nameserver
には、通常、暗号化されたDNSサーバー(DNS over HTTPS/TLS)を指定してプライバシーを高めます。default-nameserver
は、nameserver
が利用できない場合や、特定のルール(no-resolve
フラグ付きのIP-CIDRルールなど)に使用されるフォールバックDNSサーバーです。
- proxies:
- 利用可能な全てのプロキシサーバーをリスト形式で定義します。
- 各サーバーは
-
で始まるリスト項目として記述し、name
,type
,server
,port
は必須です。 type
に応じて、cipher
,password
(SS/SSR),uuid
,alterId
,network
,ws-opts
(VMess/VLESS),password
,sni
(Trojan) といったプロトコル固有の設定項目が必要になります。udp: true
を設定すると、そのサーバーでUDPトラフィックの転送が有効になります(ゲームやVoIPなどに必要ですが、サーバー側も対応している必要があります)。
- proxy-groups:
- 上で定義したプロキシサーバーを論理的なグループにまとめます。これがClashの柔軟性の鍵となります。
- 各グループは
-
で始まるリスト項目として定義し、name
とtype
(select, url-test, fallback, load-balance)は必須です。 proxies
リストには、そのグループに含めたいプロキシサーバーの名前(proxies
セクションで定義したname
)または他のプロキシグループの名前を指定します。DIRECT
やREJECT
といった特別なキーワードも指定できます。url-test
およびfallback
タイプでは、url
とinterval
(テスト間隔)を指定します。
- rules:
- ネットワークトラフィックをどのようにルーティングするかを定義するルールのリストです。リストの上から順に評価されます。 最初にマッチしたルールが適用され、それ以降のルールは評価されません。
- 各ルールは
-
で始まるリスト項目として記述し、通常ルールタイプ, 条件, アクション[, パラメータ]
の形式をとります。 - ルールタイプ:
DOMAIN-SUFFIX
: 指定した文字列で終わるドメイン名にマッチします(例:google.com
やmail.google.com
にDOMAIN-SUFFIX,google.com,...
がマッチ)。DOMAIN-KEYWORD
: 指定した文字列をドメイン名に含む場合にマッチします(例:google
はwww.google.com
やimages.google.co.jp
にマッチ)。DOMAIN
: 指定した正確なドメイン名にのみマッチします(例:DOMAIN,www.google.com,...
はwww.google.com
にのみマッチし、mail.google.com
にはマッチしません)。IP-CIDR
: 指定したIPアドレス範囲(CIDR形式)にマッチします(例:IP-CIDR,192.168.1.0/24,...
)。no-resolve
パラメータを付けると、ホスト名を解決せずにIPアドレスだけで評価します。GEOIP
: IPアドレスの地理的位置(国コード)にマッチします(例:GEOIP,CN,...
)。Clash Premiumコアが必要で、IPデータベース(MaxMind GeoLite2など)を利用します。PROCESS-NAME
: 接続を開始したアプリケーションのプロセス名にマッチします(例:PROCESS-NAME,firefox.exe,...
)。Windows/macOSで利用可能です。RULE-SET
: 外部定義されたルールの集合を参照します。Clash Premiumコアが必要で、特定のURLからルールリストをダウンロードして利用します。これにより、非常に長いルールリストをプロファイル本体から分離できます。MATCH
: 全ての条件にマッチします。このルールは常にリストの最後に配置し、他のどのルールにもマッチしなかったトラフィックのデフォルトアクションを指定します。
- 条件: ルールタイプに応じたドメイン名、IP範囲、国コード、プロセス名などを指定します。
- アクション: マッチした場合に実行するアクションを指定します。
- プロキシグループ名: そのプロキシグループ経由で接続します(例:
Proxy
,Auto
)。 DIRECT
: プロキシを使わずに直接接続します。REJECT
: 接続を拒否します(タイムアウトまたはエラーを返します)。広告やマルウェアサイトのブロックに利用されます。REJECT-DROP
: 接続を拒否し、パケットをドロップします(クライアント側には無応答に見えます)。一部のトラフィックに対してREJECT
よりも効果的な場合があります。
- プロキシグループ名: そのプロキシグループ経由で接続します(例:
- パラメータ:
no-resolve
などの追加パラメータを指定できます。
外部プロファイル/ルールセットの利用 (Clash Premiumコア)
大規模なルールリスト(例えばGFWリストや広告ブロックリスト)をプロファイルファイルに直接記述するのは非効率です。Clash Premiumコアは、これらのリストを外部からダウンロードして利用する機能を提供します。
rule-providers
: 外部のルールリストを定義します。
yaml
rule-providers:
gfw:
type: http
behavior: domain # domain または ipcidr
url: "http://example.com/gfw_domains.txt" # 外部ルールリストのURL
interval: 86400 # 更新間隔 (秒)
path: ./rules/gfw_domains.txt # ダウンロードしたファイルを保存するパス
定義したルールプロバイダーは、rules
セクションでRULE-SET,gfw,Proxy
のように参照できます。proxy-providers
: 外部のプロキシサーバーリストを定義します。プロバイダーから提供されるサブスクリプションURLをここで定義できます。
yaml
proxy-providers:
my-servers:
type: http
url: "http://example.com/my_servers_clash.yaml" # 外部プロキシリストのURL
interval: 3600 # 更新間隔 (秒)
path: ./proxies/my_servers.yaml
healthcheck: # ヘルスチェック設定
enable: true
url: http://cp.cloudflare.com/generate_204
interval: 600
定義したプロキシプロバイダーは、proxy-groups
セクションでproxies: [{ name: my-servers, type: provider }]
のように参照できます。
YAML編集の注意点:
- インデント: YAMLではインデントが非常に重要です。必ずスペースを使用し、タブは使用しないでください。同じ階層の項目は同じ量のインデントである必要があります。通常はスペース2個または4個を使います。
- 構文:
key: value
、リスト項目 (- item
)、コメント (#
) といった基本的な構文規則を守ってください。 - 名前の参照:
proxy-groups
のproxies
リストやrules
のアクションでプロキシグループ名/プロキシサーバー名を参照する場合、proxies
およびproxy-groups
セクションで定義したname
と完全に一致させる必要があります(大文字小文字も含む)。
ClashクライアントでのYAML編集
ほとんどのGUIクライアントは、ロードされているプロファイルファイルを直接編集する機能を提供しています。
- Clash for Windows (CFW): 「Profiles」画面で有効なプロファイルの「Edit」ボタンをクリックします。組み込みのテキストエディタが開くか、外部のテキストエディタ(設定で変更可能)でファイルが開きます。編集後、保存してClashを再起動またはプロファイルを再読み込みすると変更が適用されます。
- ClashX (macOS): メニューバーのClashXアイコンをクリックし、「Configuration」->「Open Config Folder」を選択します。ClashXの設定ファイルが保存されているフォルダが開くので、有効なプロファイルファイル(通常
config.yaml
などの名前)をテキストエディタで編集します。編集後、ClashXメニューの「Configuration」->「Reload」またはClashX自体を再起動して変更を適用します。 - Clash for Android (CFA): 「Profiles」画面で、編集したいプロファイルの右にある鉛筆アイコンをタップします。内蔵のエディタでYAMLコードが表示され、編集・保存できます。
- Stash (iOS): 「Configs」画面で、編集したいプロファイルをタップし、「Edit」を選択します。内蔵のエディタでYAMLコードが表示され、編集・保存できます。
YAML編集はClashを深く理解し、最大限に活用するための強力な手段です。最初は難しく感じるかもしれませんが、基本的な構造と主要なセクションの役割を理解すれば、様々なカスタマイズが可能になります。
8. 詳細な設定方法:GUIからの操作
YAMLファイルを直接編集しなくても、多くの一般的な設定や操作はGUIクライアントから簡単に行えます。
- プロキシグループの切り替え (Selectグループ):
select
タイプのプロキシグループを定義している場合、GUIクライアントは通常、そのグループに含まれるサーバーやサブグループをリスト表示し、ユーザーが手動で選択できるようにします。- CFW: 左側メニューの「Proxies」を選択します。ここに定義されているプロキシグループが表示されます。「select」タイプのグループには、選択可能なプロキシ/グループのリストが表示され、クリックで切り替えられます。
- ClashX: メニューバーのClashXアイコンから、定義されているプロキシグループのメニューを選択すると、そのグループ内のサーバー/サブグループが表示され、選択できます。
- CFA/Stash: メイン画面やプロキシ選択画面などで、プロキシグループが表示され、タップで展開して選択できます。
- 遅延テスト(Latency Test):
- 各プロキシサーバーの現在の遅延を測定できます。これは最適なサーバーを選択するのに非常に役立ちます。
- CFW: 「Proxies」画面で、各プロキシサーバーやグループ名の横に表示されるPingアイコン(通常は電波のようなマーク)をクリックすると、遅延が測定されミリ秒単位で表示されます。定期的に自動テストを行う設定もあります。
- ClashX: メニューバーのプロキシリストで、各サーバーの右側に遅延が表示されます。手動でテストを開始するオプションもあります。
- CFA/Stash: プロキシリスト画面などで、サーバー名の横に遅延が表示されるか、更新ボタンでテストを開始できます。
- システムプロキシ設定のオン/オフ:
- 前述の「Clashの有効化/無効化」および「システムプロキシの設定」の項目を参照してください。GUIの簡単なスイッチ操作で行えます。
- Allow LAN 設定:
- ローカルネットワーク内の他のデバイスからClashをプロキシとして利用できるようにする設定です。
- CFW: 「General」画面に「Allow LAN」というスイッチがあります。オンにすると、ClashがLAN内のデバイスからの接続を受け付けます。ファイアウォールの許可が必要な場合があります。
- 他のクライアント: 同様のオプションが一般設定画面などに存在することが多いです。セキュリティリスクを理解した上で利用してください。
- ログの確認:
- Clashが処理したトラフィック情報、エラー、警告などをリアルタイムで確認できます。トラブルシューティングに非常に役立ちます。
- CFW: 左側メニューの「Logs」を選択します。ログメッセージが表示されます。ログレベルを「General」画面で変更できます。
- ClashX: メニューバーから「Logs」または「View Logs」といった項目を選択します。
- CFA/Stash: アプリ内のログタブや設定メニューからアクセスできます。
- 設定のリセット/エクスポート/インポート:
- クライアント全体の設定をリセットしたり、現在の設定(プロファイルやクライアント固有の設定を含む)をファイルにエクスポートしたり、別のデバイスからインポートしたりする機能です。
- CFW: 「General」画面の下部などに「Settings」関連のボタンがあります。
- 他のクライアント: 設定メニュー内にこれらのオプションが見つかることが多いです。
GUIからの操作は、Clashの日常的な利用や簡単な設定変更に便利です。複雑なルールやサーバー設定の追加・変更はYAML編集で行い、日常的なサーバー切り替えやモード変更はGUIで行う、という使い分けが効率的です。
9. 実践的な使い方と応用
Clashのルールベースルーティングとプロキシグループ機能を活用することで、様々な応用的な使い方が可能になります。
- 特定のアプリケーションのみプロキシ経由にする (PROCESS-NAMEルール):
- ゲームクライアントや特定のブラウザなど、一部のアプリケーションのトラフィックだけをプロキシ経由にしたい場合に役立ちます。
- YAML設定例:
“`yaml
# … proxy-groups セクションでProxyグループを定義 …
rules:- PROCESS-NAME,steam.exe,Proxy # SteamクライアントはProxy経由
- PROCESS-NAME,Telegram.exe,Proxy # TelegramはProxy経由
- MATCH,DIRECT # それ以外の全ては直接接続
“`
- 特定の国へのアクセスを制限/強制する (GEOIPルール):
- Clash PremiumコアとGEOIPデータベースが必要です。
- YAML設定例:
“`yaml
# … proxy-groups セクションでProxyグループやOtherProxyグループを定義 …
rules:- GEOIP,CN,DIRECT # 中国国内のIPは直接接続
- GEOIP,US,Proxy # 米国のIPはProxyグループ経由
- MATCH,OtherProxy # その他のIPはOtherProxyグループ経由
“`
- 広告やトラッカーをブロックする (REJECT/REJECT-DROPルール, 外部ルールセット):
- 広告配信サーバーやトラッカーのドメインリスト/IPリストに対するアクセスを拒否することで、ウェブサイトの表示速度を改善し、プライバシーを保護します。
- 公共でメンテナンスされている広告ブロック用RULE-SETを利用するのが一般的です。
-
YAML設定例 (rule-providersと組み合わせる):
“`yaml
rule-providers:
adblock:
type: http
behavior: domain
url: “https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/rule-providers/adblock.yaml”
interval: 86400
path: ./rules/adblock.yamlrules:
– RULE-SET,adblock,REJECT # 広告ブロックリストのドメインへのアクセスを拒否
– MATCH,Proxy # それ以外の全てはProxy経由
``
url-test
* **ゲームでの利用 (低遅延サーバーの選択, UDPプロキシ):**
* オンラインゲームでは低遅延が重要です。タイプのプロキシグループで、ゲームサーバーなど特定のURLに対する遅延をテストし、最も遅延の少ないサーバーを自動選択するように設定できます。
udp: true`が設定されていることを確認してください。
* ゲームによってはUDPプロキシが必要な場合があります。利用するプロキシサーバーがUDPをサポートしており、プロファイル内のそのサーバー定義に
* 開発者向けの機能 (API, 設定ファイルの自動生成):
* ClashのRESTful APIを利用して、独自のクライアントや自動化スクリプトを作成できます。
* プロバイダーによっては、API経由でClashプロファイルを自動生成するサービスを提供している場合もあります。
* 自作のスクリプトで動的にルールを生成したり、サーバーリストを更新したりすることも可能です。
これらの応用例はClashの柔軟性の一部に過ぎません。YAML設定を工夫することで、ユーザーの多様なニーズに対応した非常に高度なネットワークルーティング環境を構築できます。
10. 一般的な問題と解決策
Clashクライアントを利用する上で遭遇する可能性のある一般的な問題と、その解決策を紹介します。
- Clashが起動しない/クラッシュする:
- 原因: 設定ファイル(プロファイル)の記述エラー、他のアプリケーションとの競合、クライアント自体の不具合など。
- 解決策:
- プロファイルファイルを開き、YAML構文にエラーがないか確認します。インデントミスや誤字脱字がないか注意深く見直してください。YAMLバリデーターツールを利用するのも有効です。
- Clashクライアントを再インストールしてみます。
- クライアントのログを確認し、エラーメッセージがないかチェックします。
- ファイアウォールやアンチウイルスソフトがClashの実行を妨害していないか確認し、必要であれば例外設定を行います。
- 使用しているClashクライアントやOSのバージョンに既知の問題がないか、開発元のGitHubリポジトリなどで情報を探します。
- インターネットに接続できない/遅い:
- 原因:
- Clashが有効になっていない、またはシステムプロキシが設定されていない。
- 有効なプロキシサーバーがない、または全てのサーバーがダウンしている。
- プロファイル内のルール設定が誤っている。
- プロキシサーバー自体が遅い、または帯域制限がある。
- DNS設定の問題。
- 解決策:
- Clashクライアントが起動しており、システムプロキシが有効になっているか確認します。
- プロキシグループ選択画面で、現在選択されているプロキシサーバーが有効か、遅延テストで確認します。遅延テストがタイムアウトする場合、そのサーバーは利用できません。別のサーバーを選択するか、プロバイダーに問い合わせます。
- モードが「Rule」になっている場合、最後の
MATCH
ルールが適切か確認します(通常はMATCH, ProxyGroup
またはMATCH, DIRECT
)。特定のサイトにアクセスできない場合は、そのサイトに対するルールが意図通りに設定されているか確認します。ログでそのトラフィックがどのルールで処理されたか確認するのも有効です。 - DNS設定が適切か確認します。特に
fake-ip
モードの場合、DNSサーバーへのアクセスがプロキシ経由になることがあります。利用可能なDNSサーバーが設定されているか確認します。 - プロキシプロバイダーに問題が発生していないか、プロバイダーのアナウンスを確認します。
- 原因:
- 特定のサイト/アプリでプロキシが機能しない:
- 原因:
- そのサイト/アプリへのトラフィックを処理するルールが正しく設定されていない。
- アプリがシステムプロキシ設定を無視している。
- プロキシプロトコル(HTTP/SOCKS5)で処理できないトラフィック(UDPなど)を使用している。
- 解決策:
- Clashクライアントのログを確認し、問題のサイト/アプリへのトラフィックがどのルールで、どのプロキシグループにルーティングされているか確認します。意図したルールが適用されていない場合は、ルールの順序や記述を修正します。
- アプリがシステムプロキシを無視している可能性がある場合、TUNモード(透明プロキシ)を試す必要があります(対応クライアント・OSのみ)。
- ゲームや特定のストリーミングなど、UDPトラフィックが問題となる場合は、プロキシサーバーとプロファイル設定でUDP転送が有効になっているか確認します。
- 原因:
- システムプロキシが設定できない:
- 原因: 他のプロキシソフトウェアがシステムプロキシ設定を上書きしている、OSの権限問題、クライアントの一時的な不具合など。
- 解決策:
- PC上で実行されている他のプロキシソフトウェアやVPNクライアントを全て終了します。
- Clashクライアントを管理者権限で実行してみます(Windowsの場合)。
- OSを再起動してみます。
- プロファイルがインポートできない:
- 原因: URLが無効、ネットワーク接続の問題、ファイル形式が破損している、YAML構文エラーなど。
- 解決策:
- プロファイルURLが正しいか、アクセス可能か確認します(ブラウザで直接アクセスしてみるなど)。
- ネットワーク接続が安定しているか確認します。
- ローカルファイルの場合、ファイルが
.yaml
形式であるか、ファイルが破損していないか確認します。 - プロファイルの内容にYAML構文エラーがないか確認します(特に手動で編集した場合)。
- 遅延テストが高い/失敗する:
- 原因: プロキシサーバーが遠い、サーバーが高負荷、サーバーがブロックされている、ネットワーク接続が不安定など。
- 解決策:
- 別のプロキシサーバーを選択してみます。
- ネットワーク接続に問題がないか確認します。
- テストURL(通常http://cp.cloudflare.com/generate_204など)が正常にアクセス可能か確認します。テストURLを変更してみるのも有効です。
- プロキシプロバイダーに問い合わせます。
11. セキュリティとプライバシーに関する考慮事項
Clashは強力なツールですが、その利用にはセキュリティとプライバシーに関するいくつかの注意点があります。
- 信頼できるプロバイダーの利用: プロファイルファイルは、利用可能なプロキシサーバーの情報を含むだけでなく、ルーティングルールやDNS設定など、全てのネットワークトラフィックの処理方法を定義します。悪意のあるプロファイルは、あなたのトラフィックを意図しないサーバーに誘導したり、セキュリティを低下させる設定(証明書検証のスキップなど)を含んだりする可能性があります。必ず信頼できるVPN/プロキシサービスプロバイダーからプロファイルを入手してください。
- プロファイルの内容の確認: プロファイルURLからダウンロードした場合でも、可能であれば一度YAMLファイルの内容を確認することをお勧めします。特に
proxies
リストに知らないサーバーが含まれていないか、rules
リストに変なルールが追加されていないかなどをざっと見ておくと安心です。 - Allow LAN設定の注意点:
allow-lan: true
設定は、同じローカルネットワーク内の全てのデバイスがあなたのClashをプロキシとして利用できるようになります。これは便利ですが、意図しない第三者に利用されたり、セキュリティリスクを高めたりする可能性があります。必要な場合のみ有効にし、信頼できるネットワーク環境でのみ使用してください。また、ファイアウォールで制限することも検討してください。 - ログに記録される情報: Clashのログには、どのサイトにアクセスしようとしたか、どのルールが適用されたか、どのプロキシが使われたかといった情報が記録されます。
log-level
をdebug
にすると、より詳細な情報が記録されます。これらのログファイルは、デフォルトではローカルPCに保存されますが、ログレベルやクライアントによっては個人情報を含みうる情報が含まれるため、取り扱いには注意が必要です。 - 透明プロキシ使用時の注意点: TUNモードやredir-port/tproxy-portを利用した透明プロキシは、システム全体のトラフィックを捕捉するため強力ですが、設定ミスや不具合があった場合に全ての通信が停止したり、意図しないトラフィックがプロキシを経由したりするリスクがあります。特にLinuxなどで手動設定する場合は、ファイアウォールルールなどを慎重に設定する必要があります。
Clash自体はオープンソースであり、そのコードの透明性は高いですが、あなたが使用するプロファイルやプロキシサーバーは、その提供者の信頼性に大きく依存します。
12. Clashコミュニティとリソース
Clashは活発なコミュニティによって支えられています。問題の解決策を探したり、最新情報を得たりするために、以下のリソースが役立ちます。
- GitHubリポジトリ: 各ClashクライアントやClashコアの開発は主にGitHubで行われています。リリースページから最新版をダウンロードできるほか、Issuesページでバグ報告や機能要望を行ったり、Pull Requestsで開発の進捗を確認したりできます。
- Clash核心: https://github.com/Dreamacro/clash
- Clash for Windows: https://github.com/Fndroid/clash_for_windows_pkg
- ClashX: https://github.com/ClashX/ClashX
- Clash for Android: https://github.com/Kr328/ClashForAndroid
- Clash Verge: https://github.com/MetaCubeX/Clash-Verge
- Telegramグループ: Clashに関する情報交換やサポートが行われるTelegramグループが多数存在します。ただし、非公式なグループも多く、情報源の信頼性には注意が必要です。公式に近い開発者や経験豊富なユーザーが集まるグループもあります。
- ドキュメント: ClashコアのGitHubリポジトリには、YAML設定ファイルの形式に関する詳細なドキュメントがあります(英語)。YAML編集を行う際には非常に参考になります。
- フォーラムやコミュニティサイト: 多くの技術系フォーラムや個人のブログでも、Clashの使い方や設定例に関する情報が共有されています。
これらのリソースを活用することで、Clashに関する疑問を解決したり、より高度な設定方法を学んだりすることができます。
13. まとめ
この記事では、Clashクライアントについて、その基本的な概念から始まり、多機能性、様々なOS向けのクライアント、ダウンロード・インストール方法、そして基本的な使い方からYAMLを使った詳細設定、応用例、トラブルシューティング、セキュリティまで、幅広く詳細に解説しました。
Clashは、YAML形式の設定ファイルに基づくルールベースルーティングという強力な特徴により、インターネットトラフィックをきめ細かく制御することを可能にします。単一のプロキシサーバーを経由するだけでなく、アクセス先やアプリケーションに応じて最適な経路を自動的に選択したり、特定のトラフィックをブロックしたりといった高度なニーズに対応できます。
Windows、macOS、Linux、Android、iOSといった主要なOSに対応した様々なClashクライアントが存在し、それぞれがClashコアの機能にGUIや特定のプラットフォームでの連携機能(システムプロキシ、VPNサービスなど)を提供しています。Clash for Windows、ClashX、Clash for Android、Stashなどは、それぞれのOSで広く利用されている代表的なクライアントです。
Clashを使い始めるには、まず利用したいクライアントをダウンロード・インストールし、プロファイルファイル(プロキシサーバー情報、ルールなどを含むYAMLファイル)をインポートします。プロファイルを有効化し、システムプロキシ設定をオンにすることで、Clashがネットワークトラフィックを処理するようになります。
基本的な利用はGUIから可能ですが、Clashの真価を引き出すには、YAMLプロファイルファイルの構造と記述方法を理解することが重要です。proxies
, proxy-groups
, rules
といった主要なセクションを編集することで、プロキシサーバーの追加、自動切り替えグループの設定、特定のサイトへのアクセス制御など、様々なカスタマイズが可能になります。特にRULE-SET
やGEOIP
といった高度なルール、fake-ip
などのDNS設定は、Clash Premiumコアを利用することでさらに強力な機能を提供します。
Clashの利用は、信頼できるプロバイダーからプロファイルを入手すること、プロファイルの内容を理解すること、そしてAllow LAN設定などのセキュリティリスクに注意することが重要です。問題が発生した場合は、ログの確認や公式GitHubリポジトリ、コミュニティでの情報収集が解決に役立ちます。
Clashは、単なるプロキシツールを超え、ユーザーが自身のネットワーク環境を自由かつ安全に構築・制御するための強力なプラットフォームと言えます。この記事を通じて、Clashクライアントの全体像と使い方、設定方法について深く理解していただけたなら幸いです。ぜひClashを使いこなし、より快適なインターネットライフを実現してください。
14. 免責事項
この記事は、Clashクライアントの機能や使い方に関する情報提供を目的としています。Clashの利用は、利用者自身の責任において行ってください。
Clashまたはプロキシサービスの利用が、お住まいの国や地域の法律、あるいは利用しているネットワークのポリシーに違反しないか、事前に確認し、遵守してください。違法な活動や不正な目的にClashを使用することは固く禁じられています。
プロキシサーバーやプロファイルは、その提供者によって管理されています。プロバイダーの信頼性を十分に確認し、セキュリティやプライバシーに関するリスクを理解した上で利用してください。
この記事の情報は、可能な限り正確であるように努めていますが、Clashのバージョンや利用環境、プロファイルの内容によって動作や設定方法が異なる場合があります。最新かつ正確な情報については、各ClashクライアントやClashコアの公式ドキュメントおよびGitHubリポジトリを参照してください。
【記事終】