用語ガイド / よく使う25の用語

Clash用語集
設定項目とネットワークの基礎

設定の階層ごとに用語を確認できます。まずクライアントとコアを区別し、次にプロトコル、ルール、DNS、設定の取得元を見ていきましょう。

各用語には個別のアンカーがあり、URLをコピーして共有できます。ここでは意味と適用範囲を解説します。初めて使う場合は設定ガイドを、プロトコルの選び方はプロトコルガイドをご覧ください。

日本語名と設定項目名を照合 実際のコアの対応状況をご確認ください

画面と接続処理

コアとクライアント

同じ画面でも、搭載されているコアは異なる場合があります。同じサブスクリプションを使えるかどうかは、クライアントのインポート方式とコアのプロトコル対応状況の両方を確認してください。

GUIクライアントGUI client
サブスクリプション管理、ポリシー選択、プロキシのオン・オフを操作するアプリです。Clash Verge RevやFlClashなどが該当します。ルール判定や接続の転送は通常コアが行うため、クライアントのバージョンとコアのバージョンは別です。画面に設定項目が見当たらなくても、コアがその機能に対応していないとは限りません。設定ファイルや上書き機能から有効にできる場合もあります。
プロキシコアproxy core
設定の読み込み、接続の受け付け、ルール判定、アウトバウンド接続を担うプログラムです。プロトコルや設定項目が利用できるか判断する際は、インストーラー名だけでなく、実行中のコアの名称とバージョンを確認してください。コアだけを入れ替えると、クライアントとの制御インターフェースや設定の互換性に影響することもあります。更新前に、クライアントの対応情報を確認しましょう。
mihomo旧Clash.Metaプロジェクト
Clash.Metaプロジェクトから名称が変更されたプロキシコアで、従来のClashの設定体系をベースにプロトコル、DNS、ネットワークの取り込み機能などが拡張されています。旧ドキュメントにあるMetaは、このプロジェクトの旧称を指すことが多いものの、古いビルドが現在の機能に対応しているとは限りません。設定項目が認識されない場合は、利用中のバージョンに対応するドキュメントを確認してください。詳しくはプロトコルとコアのリファレンスをご覧ください。
プロキシノードproxy entry
クライアントで、プロキシサーバーへの接続情報を指す一般的な呼び方。通常、サーバーアドレス、ポート、プロトコル、認証情報などが含まれます。一覧に表示される名前は識別用のラベルであり、サーバーの所在地、利用可能な帯域幅、サービス品質を保証するものではありません。同じサーバーでも、プロトコルやポートが異なれば複数のノードとして表示されることがあります。
遅延テストlatency / url-test
指定したプロキシ経由でテスト先にアクセスし、リクエストにかかった時間を記録します。接続確立、TLSネゴシエーション、応答のどこまでを計測するかは実装によって異なります。数値はテスト先、接続の再利用、その時点のネットワーク状態に左右され、ダウンロード速度を表すものではありません。比較する際はテスト条件をそろえ、実際に使うアプリでの継続的な使い心地も確認してください。

ノードの接続方式

プロキシプロトコル

クライアントとサーバーがデータをやり取りする方法を定めたものです。同じプロトコル名でも、トランスポート、安全性、認証の設定が異なる場合があるため、名称だけを見て設定を入力しないでください。

Shadowsocks(SS)type: ss
通信を暗号化したプロキシ転送を主な特徴とするプロトコル群です。ノードの主な設定項目には、サーバー、ポート、暗号化方式、パスワードがあります。暗号化方式やプロトコルの世代によって認証要件が異なり、プラグインを使う場合はクライアントとサーバーの両方が対応している必要があります。インポート後に接続できない場合は、ノード名だけで方式を判断せず、設定を一つずつ確認してください。
VMesstype: vmess
V2Rayエコシステムのプロキシプロトコルで、ユーザーの識別にUUIDを使い、さまざまなトランスポート方式と組み合わせられます。UUIDが正しくても、それだけでは接続できません。TLS、サーバー名、パス、トランスポート方式もサーバー側の設定に合わせる必要があります。端末の時刻が大きくずれていると認証に影響することもあるため、トラブル時はシステム時刻を確認してから接続設定を調べましょう。
Trojantype: trojan
TLS接続でプロキシ通信を転送するプロトコルで、通常はパスワードでユーザー認証を行います。接続先のアドレスはサーバーへの接続に使い、サーバー名はTLSハンドシェイクや証明書の検証に使われる場合があります。両者が同じとは限りません。証明書エラーが出たら、サーバー名、有効期限、端末の時刻を確認してください。証明書の検証を無効にする設定を常用するのは避けましょう。
VLESStype: vless
Xrayエコシステムの軽量プロキシプロトコルです。プロトコル自体に暗号化機能はなく、実際の利用ではTLSやREALITYなどの安全性を高める仕組みと組み合わせます。ノードのトランスポート方式、フロー制御、安全性に関する設定は、使用中のコアが対応している必要があります。VMessの設定をVLESSに書き換えるだけでは正しい設定になりません。サーバーから提供された情報をすべて入力してください。
Hysteria2とTUICtype: hysteria2 / type: tuic
どちらもQUICベースのプロキシプロトコルで、通常はネットワークでUDP通信が許可されている必要があります。ただし、認証方式や設定項目は共通ではありません。通信品質は回線のパケットロス、輻輳制御、サーバーのリソース、各種設定に左右され、プロトコル名だけでは速さを判断できません。利用中のネットワークでUDPが制限されている場合は、まず通信条件を確認してください。詳しくはプロトコルの選び方をご覧ください。

接続がコアに届いた後

ルールと分岐

ルールが接続の処理先を決め、ポリシーグループが具体的な接続先を選びます。意図しない経路に接続される場合は、まず適用されたルールを確認し、次に対象のポリシーグループで何が選ばれているかを見ましょう。

ルール分岐rules / mode: rule
ドメイン名、接続先IP、プロセスなどの条件に基づいて、接続に直接接続やプロキシなどのポリシーを割り当てます。ルールモードでは通常、上から順に照合し、最初に一致したルールが適用されます。そのため、具体的なルールは範囲の広いルールより前に記述してください。Clashのカスタムルールを変更したら、ブラウザーでページが開くかどうかだけでなく、接続の詳細で実際に適用されたルールを確認しましょう。
ポリシーグループproxy-groups
ノードやほかのポリシーグループをまとめる設定項目です。個々のノードではなく、安定した名前をルールから参照できるようになります。手動選択グループには select、自動テストグループには url-test、フォールバックグループには fallback がよく使われます。自動選択は設定されたテスト方法に基づくもので、サイトごとに最もスループットの高い接続先を選ぶとは限りません。
アウトバウンドモードrule / global / direct
コアがアウトバウンドのポリシーを選ぶ方法を決めます。ルールモードではルールに従って選択し、グローバルモードではグローバルポリシーを使い、ダイレクトモードでは接続先に直接接続します。モード切り替えが適用されるのは、すでにコアに取り込まれた接続だけです。もともとプロキシを迂回するアプリが、自動的にコアを経由するようにはなりません。グローバルポリシーで接続先を正しく選ぶ必要もあり、グローバルモードに切り替えても、すべてのデバイス通信が特定のプロキシノードを使うわけではありません。
GeoIPGEOIP / IP database
IPアドレスデータベースを使って、地域や定義済みのアドレス範囲を照合する仕組みです。ルールの判定結果は接続先IPと手元のデータに依存します。ドメインの運営組織を特定したり、サーバーの物理的な所在地を正確に示したりするものではありません。CDNを使うドメインは、地域の異なる複数のIPアドレスに名前解決されることもあります。プライベートネットワークのアドレス範囲もデータファイルによって異なるため、地域ラベルが常に正しいとは限りません。
ルールセットrule-providers / RULE-SET
ドメイン、IP、または一連のマッチ条件を独立したデータソースとして管理し、用途ごとに保守・更新しやすくする仕組みです。設定で rule-providers を定義したら、分岐に使うには rules から該当する名前を参照する必要があります。データ形式は behavior などの設定と一致させてください。ルールセットの読み込みに成功しても、ほかのルールより先に適用されるとは限りません。

名前解決と通信の入口

DNSとネットワーク

DNSは名前解決を担い、システムプロキシとTUNは異なる層で通信を取り込みます。それぞれの設定は関連しますが、どれか一つを有効にしても、ほかの設定まで自動的に整うわけではありません。

DNSDomain Name System
ドメイン名をIPアドレスなどの情報に変換する仕組みで、アプリが接続先を見つけるために使われます。OS、ブラウザー、プロキシコアで異なるリゾルバーを使うことがあり、ブラウザーでセキュアDNSを有効にすると独自の経路ができる場合もあります。名前解決が想定どおりか判断するには、特定の確認ツールに表示されるサーバー名だけでなく、実際のDNS設定と接続ログを確認してください。
Fake-IPenhanced-mode: fake-ip
コアがドメイン名に合成アドレスを返し、アドレスとドメイン名の対応関係を保存します。接続がコアに届くと、この対応関係からドメイン名を復元し、ルール判定やアウトバウンド処理を行います。合成アドレスは接続先サーバーの実際のグローバルIPではないため、所在地の判断には使えません。実際の名前解決結果に依存するアプリではフィルターや互換設定が必要になる場合があります。モードを変更した後は、古いDNSキャッシュにも注意してください。
TUNモードtun / virtual network interface
仮想ネットワークインターフェースを通じて、ルーティング条件に合うIP通信をコアに取り込む方式です。システムプロキシに従わないアプリの通信を取り込む際によく使われます。有効化には権限、ドライバー、バックグラウンドサービスなどが必要な場合があり、要件はプラットフォームとクライアントによって異なります。実際に取り込まれる通信は、ルート設定、除外項目、ほかのVPNソフトの影響も受けます。問題が起きたらスイッチを何度も切り替えるだけでなく、これらの条件を確認してください。
システムプロキシsystem proxy
OSにプロキシのアドレスとポートを登録し、その設定に従うアプリから利用できるようにする機能です。ブラウザーはシステムプロキシを使うことが多い一方、コマンドラインツール、ゲーム、独自のネットワーク処理を行うプログラムでは個別の設定が必要な場合があります。すべての通信を取り込む機能ではありません。クライアント終了後にネットワークの問題が起きた場合は、停止したローカルポートがシステムプロキシに残っていないか確認してください。
DNSリークDNS leak
想定した名前解決経路を通るはずのDNSクエリが、別のリゾルバーに送信され、意図しないサービス事業者にドメイン名が知られる可能性がある状態です。原因を調べる際は、OS、ブラウザー、コア、IPv6の名前解決経路を確認してください。出口IPだけを見ても判断できません。DNSを直接問い合わせることがすべてリークになるわけではなく、そのドメインに直接接続するルールが設定されているなら、想定されたポリシーに沿っているかを基準に判断します。

設定の取得元

サブスクリプションと設定ファイル

サブスクリプションは設定内容を取得する入口で、設定ファイルはコアの動作を決めます。クライアントが両者の間で変換や上書きを行う場合もあるため、トラブル時は最終的に適用されている内容を確認してください。

サブスクリプションsubscription URL
クライアントがノードや設定を取得・更新するためのリモートURLです。返される内容はClashの完全な設定ファイル、ノード一覧、その他の形式などさまざまです。ブラウザーでURLを開けても、クライアントがその形式をインポートできるとは限りません。内容の種類とコアの対応状況を確認してください。サブスクリプションURLにアクセス情報が含まれることが多いため、スクリーンショットやログを共有する前にURLを隠し、内容が第三者に取得されないようにしましょう。
YAML設定ファイルconfig.yaml / .yml
YAML形式でコアの設定を記述したテキストファイルです。ポート、ノード、ポリシーグループ、DNS、ルールなどを記述します。インデントで階層を表し、リスト項目、引用符、値の型によって解析結果が変わるため、編集にはタブではなくスペースを使ってください。構文が正しくても、設定項目が必ず使えるとは限りません。エラーが出た場合は、YAMLの解析エラーか、コアによる設定検証のエラーかを見分けましょう。
プロキシプロバイダーproxy-providers
独立したファイルやリモートソースからノード一覧を読み込む仕組みで、ノードの更新をメイン設定から分けて管理できます。通常提供されるのはノードであり、DNS、ポート、ルールなどを含む完全な設定ではありません。ポリシーグループから参照して使います。プロキシプロバイダーのファイルを読み込んでも、設定画面がすべて表示されない場合があります。内容が空とは限らず、完全な設定ファイルとして扱われている可能性もあります。
混合ポートmixed-port
同じ待ち受けポートでHTTPとSOCKSのプロキシリクエストを受け付ける設定項目です。さまざまなアプリで同じポートを指定できます。アプリにプロキシを手動設定する場合は、アドレスとポートがコアの実際の待ち受け設定と一致している必要があります。ほかのプロセスがポートを使用していると、設定を起動できないことがあります。別のデバイスから接続するには、allow-lan、バインドアドレス、ファイアウォールの設定も必要です。ポートを変更しただけで共有できるとは限りません。
設定の上書きoverride / merge / patch
サブスクリプション設定の読み込み時に、指定した項目をマージ、置換、またはスクリプトで処理するクライアントの仕組みです。ローカルのポート設定やカスタムルールなどを保持するのに便利です。配列やオブジェクトのマージ順序はクライアントによって異なるため、実際の動作を決めるのは上書き後の設定です。サブスクリプションから生成されたファイルを直接変更すると、次回の更新で上書きされる場合があります。変更前にクライアントの保存方法を確認し、ローカルの変更をバックアップしてください。

用語の分類に戻る ↑