外部コントローラーとは何か:Windowsで確認できる操作範囲
Clash Verge Rev の「外部コントローラー」は、Clash コアが提供する管理用 API です。一般的なブラウザーから WebUI を開き、現在のモード、プロキシグループ、接続状況、ルール、ログなどを確認できます。つまり、アプリ本体の画面を直接操作しなくても、同じ PC のブラウザーや管理ツールからコアの状態を読み取ったり、一部の設定を変更したりできる仕組みです。
Windows でこの機能を使う場面は意外に多くあります。たとえば、Clash Verge Rev を最小化してタスクトレイに置いたまま、ブラウザーの WebUI でノードを切り替えたい場合、別の端末から自宅 PC の状態を確認したい場合、あるいは API 対応のダッシュボードで複数の接続を監視したい場合です。ただし、外部コントローラーは単なる表示用ページではなく、プロキシの切り替えや接続停止などに関係する管理インターフェースです。認証を設定せずに広いネットワークへ公開すると、第三者に操作される危険があります。
ここでいう「外部」は、必ずしもインターネット上の別サーバーを意味しません。同じ Windows PC 上のブラウザーからアクセスする場合も、Clash Verge Rev の管理 API に対する外部クライアントという扱いになります。最初は 127.0.0.1、つまり自分の PC からだけアクセスできる設定で動作確認し、必要性がはっきりしてから LAN アクセスを検討するのが安全です。
設定前の確認:Clash Verge Rev・Mihomo・ポートの状態
本稿は、Windows 10 または Windows 11 で Clash Verge Rev が起動し、プロファイルを読み込んでいる状態を前提にしています。Clash Verge Rev のビルドや選択中のコアによって、画面上の項目名は External Controller、External Controller API、Controller、または日本語に翻訳された類似表記になることがあります。完全に同じ文字列を探すよりも、「API」「Controller」「WebUI」「外部操作」に関係する設定を確認する方が見つけやすいでしょう。
まず Clash Verge Rev を起動し、現在アクティブになっているプロファイルを確認します。購読プロファイルとローカルプロファイルを併用している場合、編集したファイルと実際に動作中のファイルが異なることがあります。プロファイル一覧でチェックマークや Active と表示された項目を確認し、設定を保存したあとに本当にそのプロファイルが読み込まれているかを見てください。購読 URL へ直接変更を加えても、次回更新時に上書きされる可能性があるため、恒久的な設定はローカルオーバーライドや専用のローカル設定へ分離するのが扱いやすい方法です。
次に、Clash コアが正常に稼働しているかを確認します。システムプロキシがオンでも、コアが停止していれば外部コントローラーは応答しません。タスクトレイのアイコン、Clash Verge Rev のホーム画面、ログ画面のいずれかで、コアが起動済みであることを確認してください。Windows Defender やサードパーティ製セキュリティソフトがローカルポートへの通信を制限している場合もあるため、設定後にブラウザーが接続できないときはファイアウォールの通知も確認します。
コントローラーポートには、ほかのアプリが使用していない番号を選びます。既定値が環境によって異なる場合があるため、「よく使われる番号だから」という理由だけで決めず、Clash Verge Rev の設定画面に表示された値を正としてください。ポート番号を変更した場合は、WebUI 側の接続先も同じ番号へ変更する必要があります。
外部コントローラーを有効化する手順
画面を開く前に、Clash Verge Rev の設定画面で設定またはコア設定に相当する項目を探します。ビルドによっては一般設定の中に API 欄があり、別のビルドではプロファイル編集画面の YAML に値を記述する構成になっています。設定項目が見つからない場合は、画面上部の検索欄で controller、external、secret、web などを検索すると効率的です。
- アクティブなプロファイルを確認する。購読プロファイルを直接編集するのではなく、ローカル設定またはオーバーライドで管理できる場所を選びます。
- External Controller の設定を開く。アドレス欄、ポート欄、Secret または認証キー欄が表示されているか確認します。
-
待受アドレスを設定する。同じ Windows PC からだけ使うなら
127.0.0.1:9090のようなローカルアドレスを優先します。ポート番号は自分の画面に表示された値へ置き換えてください。 - 認証キーを設定する。空欄のまま運用せず、推測しにくい長い文字列を指定します。購読 URL、Windows のログインパスワード、ほかのサービスの API キーを流用してはいけません。
- 保存してコアを再起動する。設定の保存だけで反映される場合もありますが、接続エラーを避けるため、必要に応じてコアの再起動またはプロファイルの再読み込みを実行します。
YAML を編集するタイプの構成では、概念的には次のようなキーを使います。ただし、実際のキー名や YAML の構造は Clash Verge Rev のバージョン、Mihomo のコア、プロファイルのマージ方式によって異なります。以下をそのまま購読ファイルへ貼り付けるのではなく、現在の設定画面やコアのドキュメントと照合してください。
external-controller: 127.0.0.1:9090
secret: replace-with-a-long-random-token
LAN 内の別 PC やスマートフォンからアクセスしたい場合は、待受アドレスを 0.0.0.0 にする構成が使われることがあります。しかし、この値は全インターフェースで接続を受け付ける可能性があります。Windows ファイアウォールの受信規則、ルーターのポート転送、使用中のネットワークプロファイルを確認しないまま変更するのは危険です。遠隔操作が必要ないなら、まず 127.0.0.1 のままにしてください。
ブラウザーから WebUI へ接続する
外部コントローラーを有効化したら、対応する WebUI を開きます。Clash Verge Rev に WebUI の起動ボタンやダッシュボードへのリンクが用意されている場合は、それを使うのが最も簡単です。手動で接続先を指定する画面では、Clash コアの待受アドレスとポートを入力します。たとえば待受が 127.0.0.1:9090 なら、ブラウザー側でも同じ API エンドポイントを指定します。
WebUI が表示されても、管理 API と正しく接続できているとは限りません。画面にノードやプロキシグループが表示されるか、現在のモードが取得できるか、接続ログが更新されるかを順番に確認してください。単に HTML や JavaScript が読み込まれただけで、API の接続先が空欄になっているケースもあります。WebUI の設定画面に「API Base URL」「Controller URL」「Secret」などの入力欄がある場合は、Clash Verge Rev 側の値と一文字ずつ照合します。
| 症状 | 確認する場所 | 考えられる原因 |
|---|---|---|
| ページ自体が開かない | アドレスとポート | コア停止、ポート違い、待受アドレス違い |
| WebUI は開くがデータが空 | WebUI の API URL | API 接続先未設定、パスの誤り、別ポートを参照 |
| 401 や認証エラーが出る | Secret 欄 | 認証キーの不一致、余分な空白、古いキーの保存 |
| 一部の操作だけ失敗する | コアログと WebUI | コアの権限、API 対応範囲、バージョン差 |
認証エラーでは、Secret の前後に空白や引用符を入れていないか確認します。パスワード管理ソフトから貼り付けた値に改行が付くこともあります。キーを変更した直後に古い WebUI タブを使うと、ブラウザー側に以前の値が残っている場合があるため、保存後にページを再読み込みし、必要なら新しいタブで接続し直します。
接続できないときの切り分けと安全な運用
最初の切り分けでは、TUN、システムプロキシ、別 VPN を同時に変更しないことが重要です。外部コントローラーへのアクセスは通常、同じ PC のローカルアドレスへ向かうため、インターネット用のプロキシ設定とは別の問題として確認できます。まず TUN を一時的に無効化するのではなく、Clash コアが動いているか、指定ポートが正しいか、ブラウザーが localhost への接続を妨げていないかを順に見ます。
Windows のターミナルでは、ポートが待ち受け状態かを確認できます。次のコマンドは診断用の例です。表示結果に対象ポートがなければ、Clash Verge Rev の設定が反映されていないか、コアが別のポートを使用しています。
netstat -ano | findstr :9090
PID が表示された場合は、それが Clash Verge Rev や mihomo に対応するプロセスかをタスクマネージャーで確認します。別のアプリが同じ番号を使っている場合は、Clash 側のポートを空いている値へ変更するか、競合しているアプリを停止します。管理者権限のターミナルを使う前に、通常権限で確認できる範囲から始めると、余計な権限問題を増やさずに済みます。
LAN 接続を行う場合は、アクセス元を限定する設計にします。Windows ファイアウォールでローカルネットワークだけを許可し、ルーターのポート転送は設定しません。公共 Wi-Fi やホテルのネットワークでは、同一セグメントの利用者から見える可能性があるため、ローカル待受に戻すのが安全です。必要な作業が終わったら、LAN 用の設定を無効化して 127.0.0.1 に戻してください。
運用の基本:外部コントローラーは「常時公開するサービス」ではなく、必要なときだけ管理画面へ接続するためのインターフェースとして扱います。認証キーを定期的に更新し、設定ファイルやスクリーンショットにキーを残さず、遠隔アクセスが不要な日はローカル待受に限定しましょう。
設定変更後は、WebUI で現在のプロキシグループを確認し、テスト用の接続を一つだけ実行します。続いて Clash Verge Rev の接続ログで、リクエストが意図したポリシーへ入っているかを確認します。WebUI は接続できるのに実際の通信だけ失敗する場合、外部コントローラーではなくノード、ルール、DNS、TUN の問題である可能性があります。管理 API の疎通と通常のプロキシ疎通を同じ問題として扱わないことが、調査時間を短くするコツです。
Windows の設定画面がビルドごとに変わりやすい点では、Clash for Windows や古い GUI クライアントの解説をそのまま流用する方法に限界があります。旧クライアントは外部コントローラーの項目が少なかったり、Mihomo と異なるキー名を使ったりするため、画面だけを模倣すると API は開いても WebUI が認証できないことがあります。Clash V.CORE なら Windows 向けの入手先をまとめて確認でき、Clash Verge Rev と Mihomo のようにコアや設定項目が変わる環境でも、ポート・認証・接続確認を分けて扱えます。古い手順を何度も読み替えるより、自分の環境に合うクライアントを選んで安全に始めたい方は、Clash V.CORE をダウンロードして、Windows の外部コントローラー設定を進めてください。
// エディターズ・チョイス
Windowsの管理画面を、Clash V.COREで整理する
Clash Verge Revの外部コントローラーを使うときに重要な、コア状態・ポート・認証・接続ログを一つずつ確認しやすい環境を整えられます。
- Windows環境に合わせた導入手順
- Clash Verge RevとMihomoの設定確認
- ポート競合を切り分けやすい構成
- WebUI接続後のログ確認をサポート
- 認証キーを意識した安全な運用