01 · OVERVIEW
このドキュメントでできること
使い方ガイドは「インストール・接続方法」を、ドキュメントは「各設定項目の意味と変更方法」を担当します。両方を併用すると効率的です。
対象読者
サブスクリプションを導入済みで、ルールやDNSを自分でカスタマイズしたい、TUNを有効にしたい、またはプロキシグループが機能しない場合の調査をしたいユーザー向けです。
設定ファイルの場所
GUIクライアントでは通常「設定 / Profiles」から編集できます。CLIコアはデフォルトで作業ディレクトリのconfig.yamlを読み込みます。
コアについて
本ドキュメントは主にmihomo(Clash Meta)の構文に基づいており、一般的なClashの設定形式とも互換性があります。
編集前にバックアップを
YAMLを手動で編集した後は、インデントとコロン後のスペースを確認してください。構文エラーがあるとコアが起動できません。
サブスクリプションのインポートに不慣れな方は、まず使い方ガイドをご覧の上、本ページの項目説明に戻ってきてください。
02 · CONFIG
設定構造の概要
完全な設定は通常「基本ポート → プロキシ一覧 → プロキシグループ → ルール → DNS」の各ブロックで構成されます。以下は最小限の読みやすい骨格です:
# config.yaml — minimal skeleton
port: 7890
socks-port: 7891
allow-lan: false
mode: rule
log-level: info
external-controller: 127.0.0.1:9090
proxies:
- name: "サンプルノード"
type: ss
server: example.com
port: 8388
cipher: aes-128-gcm
password: "password"
proxy-groups:
- name: "PROXY"
type: select
proxies:
- "サンプルノード"
- DIRECT
rules:
- DOMAIN-SUFFIX,jp,DIRECT
- MATCH,PROXY
よく使う基本フィールド
| フィールド | 型 | 説明 |
| port | number | HTTPプロキシポート。ブラウザ/システムプロキシでよく使用 |
| socks-port | number | SOCKS5ポート |
| mixed-port | number | HTTP/SOCKS混合ポート(いずれか一方でOK) |
| allow-lan | bool | LAN内のデバイスからこのプロキシへの接続を許可するか |
| mode | string | rule / global / direct |
| log-level | string | silent / error / warning / info / debug |
| ipv6 | bool | IPv6を有効にするか |
allow-lan: trueを有効にする場合は、外部コントローラーを保護するためにsecretも併せて設定してください。設定しない場合、LAN内の誰でも設定を変更できてしまいます。
03 · PROXIES
プロキシノード(proxies)
各ノードはアウトバウンドチャネルです。サブスクリプションをインポートすると通常自動生成されます。手動で追加する場合はnameが設定内で一意になるようにしてください。
ss
ssr
vmess
vless
trojan
hysteria2
tuic
wireguard
http
socks5
共通フィールド
| フィールド | 型 | 説明 |
| name | string | 表示名。プロキシグループやルールから参照されます |
| type | string | プロトコルの種類。例:ss、vmess |
| server | string | サーバーのドメイン名またはIP |
| port | number | サーバーポート |
| udp | bool | UDP転送を許可するか(デフォルトはプロトコルによる) |
Shadowsocksの例
- name: "HK-SS"
type: ss
server: hk.example.com
port: 8388
cipher: aes-128-gcm
password: "your-password"
udp: true
プロトコルごとに専用のフィールドがあります(例:VMessのuuid、alterId、Trojanのpassword、sni)。プロバイダーが提供する設定に従い、無断で変更しないでください。
04 · PROXY-GROUPS
プロキシグループ(proxy-groups)
プロキシグループは複数のノードをまとめ、「どう選ぶか」を決めます。ルールでは通常、個別のノードではなくグループ名を参照します。
select
手動選択。「香港/日本/アメリカ」のような地域別グループに向いています。
url-test
遅延に基づいて自動的に最速ノードを選択します。intervalやtoleranceを設定できます。
fallback
リストの順に試行し、現在のノードが失敗すると次のノードに切り替えます。
load-balance
利用可能なノード間で負荷分散を行い、複数経路への分散に向いています。
url-testの例
- name: "自動選択"
type: url-test
proxies:
- "HK-01"
- "JP-01"
- "US-01"
url: http://www.gstatic.com/generate_204
interval: 300
tolerance: 50
05 · RULES
ルール構文(rules)
ルールは上から下へ照合され、最初にマッチしたところで停止します。取り漏れを防ぐため、通常は最後にMATCHで受け止めます。
よく使うマッチタイプ
| 型 | 例 | 説明 |
| DOMAIN | DOMAIN,api.example.com,PROXY | 完全一致ドメイン |
| DOMAIN-SUFFIX | DOMAIN-SUFFIX,google.com,PROXY | サフィックス一致 |
| DOMAIN-KEYWORD | DOMAIN-KEYWORD,ads,REJECT | キーワード一致 |
| IP-CIDR | IP-CIDR,192.168.0.0/16,DIRECT | IPv4範囲 |
| GEOIP | GEOIP,JP,DIRECT | 国/地域別 |
| MATCH | MATCH,PROXY | 最終フォールバックルール |
記述例
rules:
- DOMAIN-SUFFIX,local,DIRECT
- IP-CIDR,127.0.0.0/8,DIRECT
- DOMAIN-KEYWORD,ad,REJECT
- GEOIP,JP,DIRECT
- MATCH,PROXY
カスタムルールはできるだけ上に置いてください。GEOIP,JPや広範なルールの後に置くと、一致しなくなる可能性があります。
06 · DNS
DNS設定
DNSはドメイン名の解決方法を決定します。適切に設定することでDNS汚染を減らし、分流ルールともより正確に連携できます。「ノードには接続できるがサイトが開けない」場合のトラブルシューティングでも重要なポイントです。
dns:
enable: true
listen: 0.0.0.0:53
enhanced-mode: fake-ip
nameserver:
- https://cloudflare-dns.com/dns-query
- https://dns.google/dns-query
fallback:
- tls://1.1.1.1
- tls://8.8.8.8
fallback-filter:
geoip: true
geoip-code: JP
モードの説明
- redir-host:実際のIPを解決します。互換性が高く、実際のアドレスを必要とする一部のアプリに向いています。
- fake-ip:仮想IPを返します。解決が速く、ルールによる分流と組み合わせるのが一般的です。一部のゲームやLANアプリでは
fake-ip-filterへの追加が必要な場合があります。
07 · TUN
TUNモード
システムプロキシは「システムプロキシ設定に従う」アプリのみをカバーします。TUNは仮想ネットワークカードを通じてトラフィックを引き受けるため、より多くのアプリ(プロキシ非対応のものも含む)をルールに従わせることができます。
tun:
enable: true
stack: system # system / gvisor / mixed
dns-hijack:
- any:53
auto-route: true
auto-detect-interface: true
- Windows:TUNモードを有効にするには通常、管理者権限でクライアントを起動する必要があります。
- macOS:初回有効化時にネットワーク拡張のインストールを求められるので、システム設定で許可してください。
- システムプロキシとの関係:通常はどちらか一方だけを使用してください。両方同時に有効にすると、二重プロキシや不具合の原因になることがあります。
サーバーやGUIのない環境では、CLIコア+環境変数プロキシを優先してください。デスクトップで「システム全体を引き受ける」必要がある場合はTUNを有効にします。
08 · API
外部コントローラーAPI
external-controllerでREST APIを公開すると、ダッシュボードやスクリプトからノードの切り替え、接続の確認、設定のホットリロードが可能になります。
| フィールド | 型 | 説明 |
| external-controller | string | リスニングアドレス。例:127.0.0.1:9090 |
| secret | string | アクセスシークレット。Authorization: Bearer <secret>ヘッダーで送信 |
| external-ui | string | オプション。外部ダッシュボードの静的リソースディレクトリ |
よく使うエンドポイント(例示)
# 現在の設定バージョン/状態を確認
GET http://127.0.0.1:9090/version
# プロキシグループの選択ノードを切り替え
PUT http://127.0.0.1:9090/proxies/{group}
Body { "name": "HK-01" }
# 設定を再読み込み
PUT http://127.0.0.1:9090/configs?force=true
本番環境やインターネット公開環境では必ずsecretを設定し、できるだけ127.0.0.1のみをリスニングしてください。コントローラーポートを公開インターネットに晒さないようにしましょう。
インストールが終わったら、設定を整えよう
クライアントをダウンロードし、使い方ガイドに沿って接続したら、このドキュメントに戻ってルールやDNSをカスタマイズすると、スムーズに進められます。