設定リファレンス · フィールド解説 · 動作の仕組みClash 設定ドキュメント リファレンスと応用
Clash と Mihomo の設定リファレンスや応用資料をまとめています。サブスクリプションの追加、プロキシモード、ルール分岐、DNS、TUN、サービス運用、セキュリティ設定を、設定例や用語解説から目的別に探せます。
概要
4 件Clash とは?
Clash をクロスプラットフォームのルール型プロキシコアとして捉え、オープンソース版と Premium 版の違い、インバウンド、アウトバウンド、ルーティング、DNS、ポリシーグループ、Providers、RESTful API の機能を確認します。
はじめに
Clash コアを用意する二つの方法として、ビルド済みバイナリのダウンロードと Go によるソースビルドを説明し、GOPATH、バージョン確認、GOOS・GOARCH を使ったクロスコンパイルの要点をまとめます。
Clash をサービスとして実行
Clash バイナリと config.yaml を systemd サービスとして配置し、daemon-reload、自動起動、起動、状態確認を行う方法と、Docker イメージの基本的な実行方法を説明します。
よくある質問
Clash コアに関するよくある質問をまとめ、GOAMD64 アーキテクチャの選択、ルーターやコンテナでのノード異常、ルール照合の複雑さ、Premium の接続、RULE-SET エラー、DNS ハイジャックを扱います。
設定
7 件Clash 設定の概要
Clash YAML 設定が Inbound、Outbound、ルールルーティングをどう結び付けるかを示し、rules の TYPE、ARGUMENT、POLICY、no-resolve の基本構文を解説します。
設定クイックスタート
config.yaml の既定ディレクトリ、-d・-f 起動オプション、IPv6 の角括弧表記、DNS ワイルドカード照合の引用符と優先順位を説明します。
Inbound(インバウンド)
Clash の HTTP(S)、SOCKS5、mixed-port、Redirect、TProxy、TUN インバウンドを整理し、待受ポート、allow-lan、透過プロキシ関連フィールドと適用範囲を説明します。
Outbound(アウトバウンド)
オリジナル Clash の Shadowsocks、SSR、VMess、SOCKS5、HTTP、Snell、Trojan アウトバウンド形式をまとめ、認証、暗号化、TLS、UDP、プラグインの各フィールドを確認できます。
Rules(ルール)
DIRECT、REJECT、ノード、ポリシーグループの照合順序を説明し、DOMAIN、GEOIP、IP-CIDR、RULE-SET、SCRIPT、MATCH などの構文と no-resolve の動作を整理します。
Clash DNS
Clash DNS の nameserver、fallback、fake-ip、nameserver-policy と IPv6 の関係を説明し、名前解決の汚染、誤った振り分け、LAN 内ドメインの異常を確認します。
設定リファレンス
ローカルポート、動作モード、ログ、制御 API、DNS、TUN、ノード、ポリシーグループ、Providers、rules の代表的なフィールドを含む Clash YAML のひな型を示します。
プロキシプロトコル
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 の概要
Clash Premium とオープンソースコアの違いを整理し、TUN、eBPF、Rule Providers、Script、ユーザー空間 WireGuard、プロファイリングエンジンなどの拡張機能と入手方法を説明します。
機能:TUN デバイス
Clash Premium TUN が TCP、UDP、ICMP を取り込む仕組みと、auto-route、auto-redir、system/gvisor、DNS ハイジャック、各 OS の制限を確認します。
機能:eBPF から TUN へのリダイレクト
Linux の eBPF redirect-to-tun に必要なインターフェース設定、カーネル依存、既知の制限を説明し、tun.auto-route や Tailscaled との競合と代替方法を整理します。
機能:Rule Providers
rule-providers のリモート・ローカル読み込み、behavior、url、interval、path、RULE-SET を確認し、domain、ipcidr、classical 形式の違いを説明します。
機能:Script
Script モードで Python3 main(ctx, metadata) を使ってルール照合を制御する方法と、resolve_ip、geoip、rule_providers、IP 解決の要件を説明します。
機能:Script Shortcuts
Clash Premium の Rule モードで Script Shortcuts を定義する方法を示し、Expr と Starlark の違い、代表的な変数・関数、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
OpenConnect インターフェースを Clash のルール分岐へ組み込み、インターフェース名、ルーティングテーブル、DIRECT ポリシー、対象ルールを確認して、VPN 設定によるデフォルトルートの上書きを防ぎます。
Golang プログラムへの Clash 統合
Go の例を使って Clash の SOCKS listener、ConnContext、Direct アウトバウンドへ接続し、接続メタデータを読み取り、DialContext と relay で双方向転送する方法を説明します。