Clash Verge Revでノードの切り替えや接続状況をブラウザから管理したい場合は、外部コントローラーを有効にします。外部コントローラーは、Clashの内部APIをHTTP経由で公開する機能です。Windows版のClash Verge Revでは、設定ファイルを編集してAPIの待受ポートとシークレットを指定し、その後Webダッシュボードから接続します。この記事では、Windows初心者でも迷わないように、設定ファイルの開き方、ポートと認証情報の決め方、ダッシュボードへの接続、動作確認、トラブルシューティング、安全に使うための注意点まで順番に解説します。

外部コントローラーとは何か

外部コントローラーは、Clash Verge Revをブラウザや別の管理ツールから操作するためのAPIサーバーです。通常のClashはバックグラウンドでプロキシ通信を処理しますが、外部コントローラーを有効にすると、現在の接続情報を確認したり、プロキシグループの選択を変更したり、設定を再読み込みしたりできます。

Webダッシュボードを開くと、利用可能なプロキシグループ、各ノードの遅延、現在の接続、適用されたルールなどを視覚的に確認できます。設定ファイルを毎回手動で書き換える必要がないため、複数のノードを使い分ける人や、Clashの動作を詳しく確認したい人に便利です。

設定項目役割初心者向けの推奨値
external-controllerAPIの待受アドレスとポート127.0.0.1:9090
secretAPIへ接続するための認証トークン推測されにくい長い文字列
external-uiローカルダッシュボードの保存先ui
external-ui-urlダッシュボードを取得するURL信頼できる公式配布元

特に重要なのは、待受アドレスを最初から127.0.0.1にすることです。これはAPIをWindows自身からのみ利用できるようにする指定です。外部のスマートフォンや別のPCから管理する必要がない限り、0.0.0.0で公開する理由はありません。

Clash Verge Revで設定ファイルを開く

まずWindowsでClash Verge Revを起動し、プロファイル一覧を開きます。左側のメニューにある「Profiles」または「プロファイル」に移動し、現在使用しているYAMLプロファイルを確認してください。購読URLから自動更新されるプロファイルを直接編集すると、次回更新時に変更内容が失われる場合があります。そのため、編集前にローカルプロファイルを複製するか、設定の保存場所と更新方法を確認しておくと安全です。

  1. Clash Verge Revを起動し、プロファイル画面を開きます。
  2. 現在使用している設定ファイルを選択し、編集またはファイルの場所を開く操作を実行します。
  3. YAMLファイルをメモ帳、Visual Studio Codeなどのテキストエディターで開きます。
  4. 既存の同名キーを検索し、重複した設定がないことを確認します。
  5. 設定を保存した後、Clash Verge Revでプロファイルを再読み込みまたは再適用します。

Clash Verge Revのバージョンや表示言語によってボタン名は少し異なります。「Edit」「Open Folder」「編集」「設定ファイルを開く」といった項目を探してください。重要なのは、Windowsアプリ全体の環境設定ではなく、実際にClashコアが読み込むプロファイルへ設定を追加することです。

編集前の注意:YAMLはインデントに意味があります。キーの前に不要な空白やタブを入れたり、同じキーを二重に記述したりすると、プロファイルが読み込めなくなることがあります。変更前に元ファイルをコピーしてバックアップしてください。

外部コントローラーとシークレットを設定する

設定ファイルのトップレベルに、次の項目を追加します。portproxiesの内部に入れるのではなく、行頭から記述してください。すでにexternal-controllersecretが存在する場合は、新しい行を追加せず、既存の値を修正します。

Windows向けの基本設定
# Clash Verge Rev external controller
external-controller: 127.0.0.1:9090
secret: change-this-to-a-long-random-secret
external-ui: ui
external-ui-url: https://github.com/MetaCubeX/metacubexd/archive/gh-pages.zip

127.0.0.1:9090は、Windowsのローカルホストで9090番ポートを使うという意味です。9090番が他のアプリケーションですでに使用されている場合は、127.0.0.1:9091127.0.0.1:9097など、空いているポートに変更できます。ポート番号を変更した場合は、後でダッシュボードに入力するAPIアドレスも同じ番号に変更してください。

secretはAPIのパスワードに相当します。短い単語、Windowsのユーザー名、メールアドレス、ポート番号だけの文字列は避けてください。英字の大文字・小文字、数字、記号を組み合わせた十分に長い値を使用します。シークレットを空にすると認証なしで接続できる構成になる場合があり、ローカル環境でも安全性が低下するためおすすめしません。

設定の考え方:自分のWindowsからだけ管理するなら、待受アドレスは必ず127.0.0.1にします。LAN内の別端末から接続する必要がある場合だけ、ネットワーク構成を理解したうえで公開範囲を広げてください。

設定を適用してWebパネルへ接続する

YAMLファイルを保存しただけでは、実行中のClashコアに変更が反映されないことがあります。Clash Verge Revへ戻り、対象プロファイルの再読み込み、再適用、または再起動を行ってください。読み込み時にエラーが表示された場合は、まず直前に追加した行のインデント、コロン、引用符を確認します。

APIが起動したら、対応するWebダッシュボードをブラウザで開きます。Metacubexdなどのダッシュボードを利用する場合、接続画面で次の情報を入力します。

  • バックエンドアドレス:http://127.0.0.1:9090
  • シークレット:設定ファイルのsecretに指定した値
  • API形式:ダッシュボードがClashまたはMihomoに対応していることを確認

URLの末尾に余分な空白やスラッシュを入力すると、ダッシュボードによっては接続に失敗します。まずはブラウザのアドレス欄にAPIアドレスを直接入力し、応答があるかを確認する方法もあります。ただし、APIの応答は一般的なWebページのように表示されないことがあります。JSON形式の情報や認証エラーが返れば、少なくともポートへ到達できている可能性があります。

Webパネルで確認できる主な項目

接続に成功すると、プロキシグループの現在の選択、ノードごとの遅延、接続中のアプリや宛先、適用ルールを確認できます。プロキシ画面でノードを選択すると、通常はClash Verge Revを再起動せずに切り替えが反映されます。接続画面では、アクセス先のドメイン、使用されたルール、経由したグループを確認できるため、「特定のサイトだけ開けない」「意図せずプロキシを通っている」といった問題の調査にも役立ちます。

ただし、ダッシュボードに表示される機能はClashコアの種類とバージョンによって異なります。Mihomo固有の機能を前提とした画面を、互換性の異なるコアへ接続すると、一部の項目が表示されなかったり、操作が反映されなかったりすることがあります。Clash Verge Revのコア選択と、ダッシュボードが想定するAPI仕様を確認してください。

動作確認とよくある問題の解決方法

設定後は、単にダッシュボードが開くだけでなく、操作がClashへ伝わっているかを確認します。次の順番でテストすると、原因を切り分けやすくなります。

  1. Clash Verge Revで対象プロファイルが有効になっていることを確認します。
  2. ダッシュボードへ127.0.0.1と正しいポートを入力します。
  3. シークレットをコピーして貼り付け、前後に空白がないことを確認します。
  4. プロキシグループの選択を変更し、Clash Verge Rev側の表示も変わるか確認します。
  5. 接続一覧を開き、テスト用のWebページへのアクセスが表示されるか確認します。
  6. テスト後は、普段使うノードとルールへ戻します。
症状考えられる原因確認する項目
接続拒否になるAPIが起動していない、ポートが違うプロファイルを再適用し、ポート番号を一致させる
認証エラーになるシークレットが不一致余分な空白、引用符、古い値を確認する
設定読み込みに失敗するYAMLの構文やインデントが不正キーの位置、コロン、タブ文字を確認する
画面は開くが操作できないAPI互換性や権限の問題Clashコアとダッシュボードの対応状況を確認する
別端末から接続できない127.0.0.1は自分のPCだけを意味する公開範囲、Windowsファイアウォール、LAN構成を確認する

Windowsファイアウォールの警告が表示された場合も、安易にすべてのネットワークで許可しないでください。ローカルホストだけで利用する構成なら、外部からの接続許可は通常必要ありません。ポート確認のためにPowerShellを使う場合は、次のコマンドでローカルポートの応答を調べられます。

PowerShellでポートを確認
Test-NetConnection 127.0.0.1 -Port 9090

結果のTcpTestSucceededTrueなら、そのポートでTCP接続を受け付けている可能性が高いです。Falseの場合は、Clashコアが起動しているか、設定ファイルが実際に適用されているか、別のポートを指定していないかを確認します。

安全に外部コントローラーを使うための注意点

外部コントローラーは便利ですが、APIへのアクセス権を持つユーザーは、プロキシの選択変更や接続情報の閲覧などを行える可能性があります。したがって、単なるローカルWebページとして扱わず、管理用インターフェースとして保護してください。

  • 待受アドレスは127.0.0.1を優先:別端末からの操作が不要なら、LANやインターネットへ公開しません。
  • シークレットを必ず設定:推測されにくいランダムな文字列を使い、設定ファイルや画面を他人と共有しないでください。
  • 9090番ポートをルーターで転送しない:外部コントローラーをインターネットへ直接公開するのは危険です。
  • ダッシュボードの入手先を確認:不審なHTMLファイルや未知の拡張機能にシークレットを入力しないでください。
  • 共有PCではログアウトする:ブラウザにシークレットが保存されていないか、履歴や自動入力も確認します。
  • 設定を更新したら再確認する:プロファイルの購読更新で外部コントローラー設定が消えていないか確認してください。
0.0.0.0の利用について:0.0.0.0:9090は、PCが持つ複数のネットワークインターフェースからアクセス可能になる指定です。認証を設定していても、公開範囲を誤ると第三者にAPIを操作されるおそれがあります。リモート管理が必要な場合は、信頼できるLAN、VPN、ファイアウォールルールなどを組み合わせてください。

Windows初心者の場合、まずは127.0.0.1:9090とシークレットを使ったローカル接続から始めるのが最も安全です。設定ファイルをバックアップし、ポートとシークレットを同じ内容で入力し、プロキシ切り替えと接続表示を確認できれば基本設定は完了です。Clash Verge Revの外部コントローラーを正しく使うことで、複雑なYAML編集を繰り返さず、現在の通信状態やノードを分かりやすく管理できます。