設定リファレンス · フィールド解説 · 動作の仕組みClash 設定資料集 設定項目と動作
Clash と Mihomo の設定資料。ルールによる通信の振り分け、DNS、TUN、サービス運用を、フィールド解説と設定例で学び、設定や問題解決に役立てます。
概要
4 件Clash とは?
Clash コアは何を担い、グラフィカルクライアントとどう違うのでしょうか。インバウンド、アウトバウンド、ルールによる経路選択から通信の流れを理解し、DNS、ポリシーグループ、Providers、RESTful API と、オープンソース版・Premium 版の違いを確認します。
はじめに
Clash コアを単独で動かすには、ビルド済みバイナリをダウンロードするか、Go でソースからビルドします。端末に合う方法を選び、GOPATH、実行バージョン、クロスコンパイルに必要な GOOS・GOARCH を確認してください。
Clash をサービスとして実行
Clash をバックグラウンドで動かし、システム起動時に自動起動させたい場合は、バイナリと config.yaml を systemd サービスに設定します。daemon-reload、起動、状態確認の順に進めるほか、Docker での実行例も参照できます。
よくある質問
ルーターやコンテナで Clash のノードが正常に動かない、Premium が接続できない、RULE-SET エラーが出る場合は、症状に応じて GOAMD64 アーキテクチャ、ルール照合、DNS ハイジャックを確認します。ルールの複雑さが動作に及ぼす影響も把握できます。
設定
7 件Clash 設定の概要
Clash YAML 設定を読むときは、Inbound からルールによる経路選択を経て Outbound へ至る通信の流れを追い、rules の TYPE、ARGUMENT、POLICY の書式と no-resolve の用途を確認します。
設定クイックスタート
config.yaml の置き場所が分からない、または別の設定を指定したい場合は、既定ディレクトリと -d・-f 起動オプションを確認してください。IPv6 の角括弧、DNS ワイルドカードドメインの引用符と照合の優先順位も確認できます。
Inbound(インバウンド)
ブラウザー、LAN 内の端末、透過プロキシの通信を Clash に渡すには、まず HTTP(S)、SOCKS5、mixed-port、Redirect、TProxy、TUN から入口を選び、待受ポートと allow-lan を設定します。
Outbound(アウトバウンド)
オリジナル Clash のノードを手動で設定するときは、Shadowsocks、SSR、VMess、SOCKS5、HTTP、Snell、Trojan の形式を参照し、認証、暗号化、TLS、UDP、プラグインの各フィールドを確認してください。
Rules(ルール)
通信を直接接続、拒否、特定のノードへの転送に振り分けるには、ルール順序とポリシーグループを確認します。DOMAIN、GEOIP、IP-CIDR、RULE-SET、SCRIPT、MATCH から照合方法を選び、no-resolve も確認してください。
Clash DNS
名前解決や経路の振り分けが正常に動かない、LAN 内のドメインにアクセスできない場合は、解決結果と照らし合わせて Clash DNS の nameserver、fallback、fake-ip、nameserver-policy、IPv6 設定を確認してください。
設定リファレンス
Clash YAML を記述・点検するときは、設定全体のひな型でフィールドの位置と書式を確認できます。ローカルポート、モード、ログ、制御インターフェース、DNS、TUN、ノード、ポリシーグループ、Providers、rules を必要に応じて設定してください。
プロキシプロトコル
14 件HTTP / HTTPS アウトバウンドプロキシ
現在の Mihomo フィールドに基づく Clash 系 HTTP アウトバウンド設定です。CONNECT トンネル、プロキシ認証、HTTPS アップストリーム、証明書検証を解説します。
SOCKS5 アウトバウンドプロキシ
現在の Mihomo フィールドに基づく Clash 系 SOCKS5 アウトバウンド設定です。TCP CONNECT、UDP Associate、認証、TLS ラッピングを解説します。
Shadowsocks (SS)
現在の Mihomo フィールドに基づく Clash 系 Shadowsocks アウトバウンド設定です。暗号方式、UDP over TCP、プラグイン転送を解説します。
ShadowsocksR (SSR)
現在の Mihomo フィールドに基づく Clash 系 ShadowsocksR アウトバウンド設定です。ストリーム暗号、Protocol、Obfs、旧式ノードとの互換範囲を解説します。
VMess
現在の Mihomo フィールドに基づく Clash 系 VMess アウトバウンド設定です。ユーザー ID、プロトコルバージョン、暗号化、UDP、トランスポート、TLS パラメーターを確認できます。
VLESS
現在の Mihomo フィールドに基づく Clash 系 VLESS アウトバウンド設定です。UUID、Vision、VLESS Encryption、Reality、UDP、トランスポートの違いを整理します。
Trojan
現在の Mihomo フィールドに基づく Clash 系 Trojan アウトバウンド設定です。パスワード、必須 TLS、SNI、証明書、Reality、UDP、トランスポートを確認できます。
Snell
現在の Mihomo フィールドに基づく Clash 系 Snell アウトバウンド設定です。psk、version、udp、obfs-opts、smux を確認し、最小 YAML、バージョン互換性、認証エラーの切り分けを解説します。
AnyTLS
現在の Mihomo フィールドに基づく Clash 系 AnyTLS アウトバウンド設定です。password、sni、クライアントフィンガープリント、アイドルセッション確認、TLS 検証を、最小 YAML と代表的なハンドシェイクエラーとともに解説します。
Hysteria
現在の Mihomo フィールドに基づく Clash 系 Hysteria 1.x アウトバウンド設定です。認証、転送モード、帯域幅、ポートホッピング、QUIC パラメーターを解説します。
Hysteria2
現在の Mihomo フィールドに基づく Clash 系 Hysteria2 アウトバウンド設定です。認証、ポートホッピング、難読化、輻輳制御、Realm パラメーターを解説します。
TUIC
現在の Mihomo フィールドに基づく Clash 系 TUIC アウトバウンド設定です。v4 と v5 の認証を区別し、TLS、QUIC、UDP リレー、接続パラメーターを解説します。
WireGuard
現在の Mihomo フィールドに基づく Clash 系 WireGuard アウトバウンド設定です。ローカルインターフェース、Peer、Allowed IPs、MTU、リモート DNS を解説します。
トランスポート設定
現在の Mihomo フィールドに基づき、Clash の VMess、VLESS、Trojan に適切な network、対応する opts、TLS、プロトコル上の制約を組み合わせる方法を解説します。
Premium 版
9 件Premium の概要
TUN、eBPF、Rule Providers、Script が必要でも、オープンソースコアで対応できるか分からない場合は、Clash Premium の拡張機能、ユーザー空間 WireGuard、性能分析の機能を比較し、バージョンの入手方法を確認してください。
機能:TUN デバイス
Clash Premium TUN で TCP、UDP、ICMP を取り込む場合は、システムに応じて auto-route、auto-redir、system/gvisor、DNS ハイジャックの設定を確認します。有効にする前にプラットフォームの制限も確認してください。
機能:eBPF から TUN へのリダイレクト
Linux で eBPF redirect-to-tun を使って通信を TUN に渡す前に、インターフェースとカーネルの依存条件を確認してください。tun.auto-route、Tailscaled との競合や、利用できる代替手段も確認します。
機能:Rule Providers
ルールセットを再利用するには、domain、ipcidr、classical から形式を選びます。rule-providers の behavior、url、interval、path を設定し、RULE-SET で参照してください。
機能:Script
通信経路をスクリプトで決めたい場合は、Script モードで Python3 main(ctx, metadata) を記述し、resolve_ip、geoip、rule_providers を使って照合します。IP 解決の要件も確認してください。
機能:Script Shortcuts
Clash Premium の Rule モードでスクリプトの条件を再利用するには、Expr と Starlark の違いを確認し、Script Shortcuts でショートカットを定義します。変数、関数、no-resolve の要件に沿ってルールを記述してください。
機能:ユーザー空間 WireGuard
Clash Premium のユーザー空間 WireGuard ノードを設定するときは、private-key、public-key、preshared-key、アドレスを確認し、リモート DNS、MTU、UDP を設定してください。
機能:プロファイリングエンジン
Clash Premium の動作が重く、通常のログでは原因を絞れない場合は、tracing の設定場所と有効化の方法を確認してください。性能サンプリングの出力でどのような分析ができるかを把握できます。
試験的機能
Clash の試験的機能を有効にする前に、現在のコアバージョンで利用できるか、どこに設定を書くかを確認し、元に戻せる環境で動作を検証してください。特定バージョンの試験的な挙動を安定した仕様とみなさないことが大切です。
実行時
1 件高度な使い方
3 件ルールベースの WireGuard
特定の通信だけを WireGuard に通すには、デフォルトルートの取り込みを無効にしてから、interface-name、DIRECT、DOMAIN ルールで通信を wg0 に送ります。AllowedIPs、MTU、endpoint も確認してください。
ルールベースの OpenConnect
VPN にデフォルトルートを任せず、一部の通信だけを OpenConnect に通したい場合は、インターフェース名とルーティングテーブルを確認してください。対応するインターフェース、DIRECT ポリシー、対象ルールを Clash の経路選択に組み込みます。
Golang プログラムへの Clash 統合
Go プログラムでプロキシ接続を受け付けて転送するには、Clash の SOCKS listener と ConnContext からメタデータを読み取り、Direct アウトバウンド、DialContext、relay を組み合わせて双方向に転送します。