前言:什麼是外部控制器?
外部控制器(External Controller)是 Clash 核心提供的一組 API 介面,允許其他工具或瀏覽器面板讀取並管理 Clash 的運行狀態。透過它,你可以查看目前使用的代理節點、切換策略組、檢查流量統計、清理連線,甚至從 Web 面板遠端調整部分設定。
對 Windows 新手來說,這個功能最常見的用途是開啟 Clash Verge Rev 內建的 Web 面板,或讓相容的管理工具連接到本機的 Mihomo 核心。當面板顯示「無法連線到外部控制器」、節點列表載入失敗,或切換按鈕沒有反應時,通常不是訂閱失效,而是控制器位址、連接埠或密鑰沒有設定一致。
本文會以 Windows 版 Clash Verge Rev 為例,依序說明外部控制器的入口、API 位址、連接埠、密鑰設定方式,以及如何使用瀏覽器和命令列完成連線檢查。不同版本的選單名稱可能略有差異,但核心概念適用於大多數基於 Mihomo 的 Clash 客戶端。
完成後你可以做到什麼?
開啟 Web 管理面板、查看核心狀態、切換代理策略、檢查即時連線,並在不暴露控制權的前提下安全管理 Clash。
1設定前的環境準備
開始之前,請先確認 Clash Verge Rev 已正常安裝,而且至少有一份可用的配置檔案。外部控制器屬於核心管理功能,如果核心沒有啟動,即使 API 參數正確,瀏覽器也無法取得回應。
- 確認客戶端版本:建議使用仍在維護的 Clash Verge Rev 版本,並避免將 Clash Verge Rev 與其他 Clash 客戶端同時啟用相同的控制器連接埠。
- 確認核心正在運行:打開 Clash Verge Rev 後,進入「控制」或「儀表板」頁面,確認核心狀態不是停止、錯誤或未載入。
- 確認配置有效:先在「配置」頁面匯入訂閱或 YAML 檔案,並成功啟用其中一份配置。空白配置可能沒有可切換的代理策略。
- 關閉衝突程式:若電腦上同時執行其他 Mihomo、Clash for Windows 或自建核心,請暫時停止它們,以免佔用相同連接埠。
- 準備管理密鑰:密鑰不是訂閱連結,也不是代理服務商提供的密碼,而是你自行設定、用於保護 API 的一段字串。
安全提醒
外部控制器擁有切換節點和讀取運行資訊的權限。除非你清楚了解防火牆與網路風險,否則不要把 API 位址綁定到 0.0.0.0,也不要將控制器連接埠直接暴露到公網。
本機使用與區域網路使用的差異
如果你只在這台 Windows 電腦上使用內建 Web 面板,API 位址通常設定為 127.0.0.1 或 localhost 即可。這代表只有本機程式能連線,安全性較高。若你希望用同一個區域網路中的另一台電腦或手機管理 Clash,才需要考慮區域網路 IP 和監聽範圍,但這時必須額外設定防火牆規則與密鑰。
2在 Clash Verge Rev 開啟外部控制器
Clash Verge Rev 的介面會因版本和語言而略有不同,相關選項通常位於「設定」、「核心設定」、「Mihomo 設定」或配置檔案的進階欄位。你可以先從應用程式的設定頁開始尋找;若介面沒有直接顯示,則可在 YAML 配置中確認。
- 啟動 Clash Verge Rev,等待核心完成載入。
- 點擊左側的「設定」或齒輪圖示,尋找「外部控制器」、「External Controller」或「API」欄位。
- 在 API 位址欄位輸入
127.0.0.1,或依照介面要求輸入完整格式,例如127.0.0.1:9090。 - 在連接埠欄位輸入未被其他程式使用的數字,常見範例是
9090。 - 在密鑰或 Secret 欄位輸入一段新的隨機字串,例如由大小寫英文字母和數字組成。
- 按下「套用」、「儲存」或「重新啟動核心」,讓新的 API 設定生效。
使用 YAML 檢查核心參數
如果圖形介面沒有提供完整欄位,可以開啟目前使用的 YAML 配置檔案,確認是否包含以下參數。請注意,實際配置檔案可能由訂閱自動產生,直接修改後有機會在更新訂閱時被覆蓋,因此最好使用客戶端提供的覆寫或全域設定功能。
external-controller 負責指定 API 監聽位址和連接埠;secret 則用來驗證請求。兩者必須同時設定正確。若只設定連接埠而沒有密鑰,某些面板可能可以連線,但安全性會明顯降低;若設定了密鑰,面板也必須使用完全相同的字串。
小撇步
密鑰不要使用訂閱網址、Windows 登入密碼或容易猜到的 123456。建議使用至少 16 個字元,並保留一份離線備份,避免日後重新設定面板時找不到。
3連接 Web 面板與驗證密鑰
控制器設定完成後,下一步是讓 Web 面板連接到 Clash 核心。Clash Verge Rev 可能內建面板入口,也可能提供「外部控制器」或「開啟管理面板」按鈕。如果你使用獨立面板,則需要手動輸入 API 位址和密鑰。
- 在 Clash Verge Rev 的控制頁面點擊「Web 面板」或類似入口。
- 若面板要求輸入後端位址,填入
http://127.0.0.1:9090。 - 若畫面另外要求輸入密鑰,貼上你在
secret欄位設定的內容。 - 按下「連線」、「儲存」或「Connect」,等待面板載入核心資訊。
- 成功後,應該可以看到運行模式、版本、目前配置、代理策略組或連線列表。
用瀏覽器測試 API 是否回應
你也可以先不使用完整面板,直接在 Windows 瀏覽器開啟 API 位址,判斷核心是否正在監聽。請在網址列輸入:
如果 API 正常且端點允許存取,瀏覽器通常會顯示包含核心版本的 JSON 內容。這只能證明連接埠有回應,不能代表密鑰驗證已完成。需要密鑰的請求必須在 HTTP 標頭中加入 Authorization。
部分版本可能對未驗證的請求直接回傳 401 Unauthorized,這不是核心故障,而是密鑰保護正在生效。若 Web 面板出現 401,請檢查是否多貼了空格、換行或引號。密鑰內容應該與 YAML 中的字串完全一致。
成功判斷標準
面板能載入核心版本、代理策略組和連線統計,且切換一個測試策略後,Clash Verge Rev 的控制頁面狀態會同步更新。
4API 位址、連接埠與密鑰怎麼選?
新手最容易混淆的是「位址」和「連接埠」的差別。位址代表核心要在哪張網路介面上等待連線;連接埠則像是大樓中的房號,用來區分不同服務。兩者組合起來,才形成完整的 API 入口。
| 參數 | 常見值 | 用途與建議 |
|---|---|---|
| API 位址 | 127.0.0.1 |
僅允許本機連線,適合一般 Windows 使用者,風險較低。 |
| 區域網路位址 | 192.168.1.20 |
只在需要其他裝置管理時使用,且需確認 Windows 防火牆設定。 |
| 所有介面 | 0.0.0.0 |
可能接受來自多個網路介面的請求,不建議新手使用。 |
| 連接埠 | 9090 |
可自訂,但不可與其他服務重複;變更後面板位址也要同步更新。 |
| 密鑰 | 隨機字串 | 保護控制器 API,不能留白,亦不應與其他帳號密碼共用。 |
本機模式與區域網路模式對照
對大部分人而言,本機模式已經足夠:Clash Verge Rev 和 Web 面板都在同一台 Windows 電腦上執行,設定為 127.0.0.1:9090,其他裝置無法直接存取。這種方式不需要在路由器上做連接埠轉發,也不需要開放 Windows 防火牆的入站規則。
若你要用手機查看電腦上的 Clash 狀態,則需要讓核心監聽區域網路介面,並使用 Windows 的區域網路 IP。此時除了設定密鑰,還要確保手機和電腦連接同一個可信任的 Wi-Fi。公共 Wi-Fi、公司網路或共享網路可能會讓其他使用者看到你的控制器連接埠,因此不建議隨意開放。
不要直接暴露到網際網路
外部控制器不是一般的只讀狀態頁面。若攻擊者取得控制器權限,可能切換節點、建立連線或讀取部分運行資訊。除非你已配置 VPN、存取控制和防火牆,否則不要使用公網 IP,也不要為 9090 連接埠設定路由器轉發。
5常見連線問題與排查方法
如果 Web 面板無法連線,建議按照「核心狀態、位址、連接埠、密鑰、防火牆」的順序排查,不要一開始就反覆重裝客戶端。大部分問題都能透過幾分鐘的參數核對解決。
面板顯示連線逾時
先確認 Clash Verge Rev 的核心是否正在運作,再檢查面板中的 API 位址是否仍是舊設定。例如核心已改用 9091,面板卻仍連線到 9090,就會出現逾時或拒絕連線。若你不確定目前端口,請回到設定頁或 YAML 檔案查看 external-controller。
出現 401 Unauthorized
這通常代表位址和連接埠正確,但密鑰驗證失敗。請重新複製 secret 值,確認沒有包含前後空格、引號或換行。若你剛剛修改過密鑰,請關閉並重新開啟 Web 面板,部分面板會暫存舊密鑰。
出現 404 或頁面空白
控制器 API 和 Web 面板是兩個不同概念。API 只負責提供資料和控制介面,不一定直接提供完整的 HTML 管理頁面。若你在瀏覽器輸入根網址後看到 404,不代表 API 一定失效;可以改測試 /version,或從 Clash Verge Rev 的面板入口開啟相容的 Web UI。
Windows 顯示連接埠被占用
若核心啟動時提示連接埠已被使用,可以在 Windows PowerShell 執行以下指令查看是哪個程序正在佔用指定端口:
你也可以選擇另一個未使用的連接埠,例如 9095,然後同步修改核心設定和 Web 面板位址。修改後務必重新啟動核心,再次測試新的入口。
能連線但切換節點沒有反應
這可能是面板與核心版本不相容、策略組名稱未正確讀取,或目前配置沒有可切換的代理組。先確認面板顯示的核心類型是 Mihomo,再重新載入配置。若只有部分功能失效,請優先使用 Clash Verge Rev 內建面板測試,以排除第三方 Web UI 的相容性問題。
建議的最終檢查順序
先確認 127.0.0.1:連接埠 可以回應,再核對密鑰,最後才處理防火牆和區域網路設定。每次只修改一個參數,較容易找到真正原因。
6安全使用外部控制器的實用守則
外部控制器能讓 Clash Verge Rev 管理更方便,但便利性必須建立在正確的存取限制上。請把它視為一個具備操作權限的管理 API,而不是普通的狀態查看頁面。
- 本機使用時優先選擇
127.0.0.1,不要為了省事直接改成0.0.0.0。 - 設定強度足夠的隨機密鑰,並避免將密鑰發布在截圖、論壇文章或公開儲存庫中。
- 變更連接埠後,同步更新所有已儲存的 Web 面板設定,避免誤以為核心故障。
- 只在可信任的區域網路中開放遠端管理,公共網路環境下應關閉區域網路存取。
- 不使用第三方面板時,請移除瀏覽器中保存的控制器連線資料,並定期更換密鑰。
- 若懷疑密鑰外洩,立即停止核心、修改
secret,再重新啟動並檢查連線記錄。
總結來說,Windows 上設定 Clash Verge Rev 外部控制器並不複雜:先讓核心正常運行,再設定本機 API 位址、未被占用的連接埠和安全密鑰,最後從 Web 面板驗證。只要記住「位址一致、端口一致、密鑰一致、不要暴露公網」這四個原則,即使遇到連線失敗,也能快速定位問題。