この記事で分かること
Clash Verge Rev には、ブラウザからプロキシの状態や接続先を管理できる外部コントローラー機能があります。Windows で Clash Verge Rev を使っている場合、毎回アプリの画面を開かなくても、Web 管理画面から現在のモード、プロキシグループ、接続状況を確認できます。本稿では、Clash Verge Rev の外部コントローラーを有効にする前の注意点から、待ち受けポートと認証キーの設定、ブラウザでの接続確認、トラブル発生時の切り分けまでを順番に説明します。
外部コントローラーは便利な一方、設定を誤ると同じ PC 上の別プロセスや LAN 内の端末から管理 API にアクセスされる可能性があります。そのため、最初は 127.0.0.1 のローカルアクセスだけを許可し、十分に理解してから LAN 公開を検討するのが安全です。なお、外部コントローラーはプロキシ通信そのものを提供する機能ではなく、Clash Verge Rev を操作するための管理用 API です。プロキシポート、混合ポート、外部コントローラーのポートは、それぞれ役割が異なります。
外部コントローラーとは何か
外部コントローラーは、Clash または Mihomo のコアが提供する管理用 HTTP APIです。Clash Verge Rev の画面で行うモード変更やプロキシグループの切り替えを、対応する Web UI やコマンド、スクリプトから実行できます。ブラウザで管理画面を開く場合も、実際には Web UI がこの API に接続して情報を読み書きします。
ここで混同しやすいのが、通常のプロキシポートとの違いです。Windows のアプリに設定する HTTP、SOCKS、または MIXED ポートは、Web サイトやアプリの通信を中継するための入口です。一方、外部コントローラーのポートは、設定情報の取得、接続一覧の表示、プロキシ選択、ルール確認などを行う管理 API の入口です。ブラウザで管理画面が表示されないからといって、必ずしもプロキシ接続が壊れているとは限りません。
| 項目 | 主な用途 | 設定時の注意 |
|---|---|---|
| HTTP ポート | HTTP 通信をプロキシへ送る | アプリ側のプロキシ設定で指定する |
| SOCKS ポート | SOCKS 対応アプリの通信を中継する | HTTP ポートと番号が異なる場合がある |
| 混合ポート | HTTP と SOCKS を一つの入口で扱う | 対応方式を確認してから利用する |
| 外部コントローラー | Clash Verge Rev の状態や設定を管理する | 認証キーを設定し、外部公開を最小限にする |
Windows で設定する前の準備
まず Clash Verge Rev を起動し、使用中のプロファイルが正常に読み込まれていることを確認します。プロファイルに構文エラーがある場合、外部コントローラーを設定してもプロキシグループやルールが正しく表示されないことがあります。先にプロファイルの更新状態、現在のモード、選択中のプロキシを確認しておくと、後の動作確認が容易になります。
次に、管理用ポートとして使っていない番号を決めます。すでに別のアプリが使用しているポートを指定すると、Clash Verge Rev のコアが起動しても API が待ち受けできない場合があります。Windows では PowerShell を開き、次のようなコマンドでポートの使用状況を確認できます。
Get-NetTCPConnection -LocalPort 9090 -ErrorAction SilentlyContinue
結果が表示されなければ、その番号が空いている可能性が高いですが、利用可能性が常に保証されるわけではありません。企業 PC や学校の PC ではセキュリティソフトや管理ポリシーが通信を制限していることもあるため、設定変更前の状態をメモしておきましょう。すでに別の Clash 系クライアント、VPN、開発用ローカルサーバーを動かしている場合は、ポート番号の重複にも注意してください。
0.0.0.0:9090 のように全インターフェースで待ち受けさせると、ファイアウォールやルーターの設定次第で LAN 内の他端末から到達できることがあります。認証キーなしで公開する構成は避け、最初はローカルホスト限定で確認してください。
外部コントローラーを有効にする手順
Clash Verge Rev のバージョンや UI の言語によって項目名は多少異なりますが、一般的には設定画面またはプロファイルの詳細設定から、Mihomo コアのExternal Controller、External Controller API、または「外部コントローラー」に相当する項目を探します。見つからない場合は、プロファイルの YAML 設定を確認してください。
- Clash Verge Rev を起動する:タスクトレイに常駐しているだけでなく、対象プロファイルが選択されていることを確認します。
- 設定またはプロファイル編集を開く:一般設定ではなく、コア設定や YAML の詳細項目にある場合があります。
- 待ち受けアドレスを指定する:同じ Windows PC のブラウザだけで使うなら
127.0.0.1を選びます。 - 管理ポートを指定する:例として
9090を設定します。使用中の番号は避けてください。 - 認証キーを設定する:推測しにくい長い文字列を入力し、パスワード管理ツールなどで安全に保管します。
- 保存してコアを再起動する:設定の反映にプロファイルの再読み込みや Clash Verge Rev の再起動が必要な場合があります。
設定ファイルで管理する場合の概念は次のようになります。実際のキー名や編集方法は、利用している Clash Verge Rev と Mihomo のバージョンに合わせてください。
external-controller: 127.0.0.1:9090
secret: replace-with-a-long-random-secret
secret は単なる表示名ではなく、管理 API へのアクセスを認証するためのキーです。短い単語、Windows のユーザー名、誕生日、プロファイル URL の一部などは使用しないでください。また、スクリーンショットや設定ファイルを公開する際は、認証キーを必ず伏せます。設定を保存したあと、Clash Verge Rev のログにポートのバインド失敗や YAML の解析エラーが出ていないか確認します。
ブラウザから Web 管理画面へ接続する
外部コントローラーを有効にしたら、対応する Web 管理画面をブラウザで開きます。Web UI の配布場所や接続方法は利用する管理画面によって異なりますが、接続先として通常は http://127.0.0.1:9090 のように、先ほど設定したアドレスとポートを入力します。Web UI の画面が表示されたあと、API の接続先を同じ値に設定し、認証キーを入力します。
認証に成功すると、現在のコアの状態、プロキシグループ、ルール、接続一覧などが表示されます。ここで確認したいのは、単に画面が開くことだけではありません。プロキシグループの一覧が最新であるか、現在のモードが Rule または Global のどちらになっているか、接続一覧が更新されるかを順番に見ます。表示が古いままの場合は、Web UI の再読み込みだけでなく、API の接続先と認証キーの入力内容も確認してください。
安全な初回テストでは、管理画面からいきなり設定を書き換えず、状態の読み取りから始めます。次にテスト用のプロキシグループを一つ選び、切り替え後に Clash Verge Rev 本体の画面と Web 管理画面の表示が一致するかを確認します。変更が反映されないときは、読み取り専用の権限や Web UI 側のキャッシュ、別ポートへの接続を疑います。
LAN 内の別端末から使う場合の注意
Windows PC 以外の端末から管理したい場合は、待ち受けアドレスを LAN の IP または 0.0.0.0 に変更する方法があります。しかし、これは利便性と引き換えに管理 API の露出範囲を広げる設定です。まず Windows のプライベートネットワークだけで試し、パブリックネットワークでは公開しないでください。
Windows Defender ファイアウォールが接続を遮断する場合は、ポート全体を無条件に開放するのではなく、信頼できるローカルサブネットと必要な実行ファイルに限定した受信規則を検討します。ホテル、学校、コワーキングスペースなど、他人の端末が同じネットワークにいる場所では LAN 公開を避けるのが基本です。外部から操作する必要がある場合も、ポートを直接インターネットへ転送するのではなく、VPN や安全な管理用トンネルを使うほうが適切です。
| 利用場所 | 推奨待ち受け | 運用方針 |
|---|---|---|
| 自宅の同じ Windows PC | 127.0.0.1 |
最も安全で、まず試すべき構成 |
| 自宅 LAN のスマホや別 PC | LAN IP | 認証キーとファイアウォール制限を併用する |
| 公共 Wi-Fi | ローカル限定 | 外部コントローラーを LAN に公開しない |
| 外出先からの管理 | 直接公開しない | VPN など認証済みの経路を使う |
接続できないときの切り分け
ブラウザで Web 管理画面に接続できない場合は、原因を一度に推測せず、次の順番で確認します。最初に Clash Verge Rev が起動中か、対象プロファイルが有効かを見ます。次に、設定したポートが実際に待ち受けているかを PowerShell で確認します。
Test-NetConnection 127.0.0.1 -Port 9090
TcpTestSucceeded : True なら、ネットワークレベルではポートに到達できています。それでも Web UI が失敗する場合は、API 接続先の入力、認証キー、Web UI が要求するパスの違いを確認します。接続先に localhost を使って問題が出る場合は、切り分けとして 127.0.0.1 に統一すると、IPv4 と IPv6 の解決差を避けられます。
ポートが開いていない場合は、番号の入力ミス、別プロセスとの競合、設定の保存忘れ、コア再起動の不足が候補です。ログに「address already in use」に近いメッセージがあればポート競合、「unauthorized」なら認証キーの不一致、「connection refused」なら待ち受け停止やアドレス指定の誤りを確認します。設定を変更した直後だけ失敗するなら、古いコアプロセスが残っていないか、タスクトレイから完全終了して再起動するのも有効です。
安全に運用するためのチェックポイント
外部コントローラーを常用するなら、便利さだけでなく変更履歴とアクセス範囲も管理します。認証キーを定期的に更新し、使わなくなった Web UI やスクリプトからは古いキーを削除してください。自動化スクリプトにキーを直接書く場合は、共有フォルダーや公開リポジトリに保存しないことが重要です。Windows の環境変数や資格情報ストアを使う方法もありますが、どのプロセスが値を読み取れるかを理解してから採用します。
また、Web 管理画面からプロキシグループを変更すると、同じ Clash Verge Rev を利用するすべての通信に影響します。動画再生中やオンライン会議中にノードを切り替えると、既存接続が切れたり、IP アドレスが変わったりすることがあります。まずは空き時間にテストし、切り替え前後の遅延、DNS 解決、主要サイトへの接続を確認しましょう。外部コントローラーは「いつでも変更できる」機能ですが、「いつ変更しても影響がない」機能ではありません。
外部コントローラーが不要になった場合は、機能を無効化するか、待ち受けを 127.0.0.1 に戻します。管理 API を使わない時間帯に停止する運用も、攻撃面を減らす方法です。設定ファイルをバックアップするときは、認証キーを含むため保存先のアクセス権限にも注意してください。
専用 VPN アプリの中には、接続自体は簡単でも、プロキシグループの細かな切り替えや API の状態確認が難しく、Windows と別端末で管理方法が分かれてしまうものがあります。Clash Verge Rev は、Mihomo のルール・ログ・プロキシグループを一つの環境で確認しながら、外部コントローラーで Web 管理まで行えるため、設定を再現しやすい点が強みです。もし Windows で通信経路を細かく確認しつつブラウザ管理も使いたいなら、まずは安全なローカル設定から始めて、必要な範囲だけ機能を広げる方法が現実的です。