連線疑難排解 · Clash 技術部落格

Clash Verge Rev macOS TUN 開啟失敗怎麼修?

macOS 上系統代理正常、TUN 卻提示無權限或服務模式異常時,先確認應用位置與版本,再按官方順序重裝服務,並保留退回系統代理的恢復路徑。

  • Clash Verge Rev
  • macOS
  • TUN
  • 服務模式
本文目錄

系統代理能用、TUN 失敗,故障通常在權限鏈

這篇文章只處理 macOS 上的一類明確問題:同一份 Profile 和固定節點透過系統代理可以存取網頁,開啟 TUN 後卻立即關閉、提示服務模式異常,或日誌出現 operation not permitted。這個對照說明訂閱和節點至少具備基礎可用性。

TUN 需要建立虛擬網路介面卡、調整路由並接管 DNS,權限要求高於系統代理。若系統代理也不能用,或代理頁根本沒有節點,應先處理訂閱、節點或核心啟動,不要反覆安裝特權服務。

先按症狀決定入口

現象優先檢查暫時不要做
TUN 開關立即回落,日誌提示 operation not permitted執行模式與服務授權修改 DNS 或訂閱
服務模式顯示未啟用或安裝失敗應用位置、版本與舊服務刪除整個設定目錄
TUN 能保持開啟,但所有網站都超時DNS、路由與其他 VPN 衝突重複輸入管理員密碼
系統代理和 TUN 都無法聯網Profile、節點和核心日誌把問題只歸因於 macOS 權限
macOS 上開啟 TUN 的權限鏈
  1. Clash Verge Rev儲存開關並產生執行階段設定
  2. 特權服務以受控權限啟動 Mihomo
  3. TUN 與路由建立虛擬網路介面卡並接管目標流量
  4. DNS 與實際連線完成解析、規則匹配和出站

operation not permitted 通常發生在特權服務到 TUN 這一段;TUN 已開啟但網頁超時,則應繼續檢查 DNS、規則和出站。

升級正式版,並從「應用程式」目錄啟動

Clash Verge Rev v2.5.2 的官方發布說明包含一項 macOS 修復:應用處於 App Translocation 狀態時,服務安裝或啟動可能異常。即使新版本已經處理這個情境,也不建議長期從 DMG、下載目錄或臨時副本直接執行。

完全退出選單欄中的 Clash Verge Rev,把 Clash Verge.app 拖入「應用程式」,再從該目錄開啟。若目前版本早於 v2.5.2,先從專案 Release 下載與 Apple Silicon 或 Intel 對應的正式安裝套件;不要在舊程式仍執行階段覆蓋安裝。

只改變版本與啟動位置

  1. 記錄目前狀態

    記下用戶端版本、Mac 晶片、服務模式狀態和日誌中的第一條錯誤。

  2. 關閉 TUN 與用戶端

    確認系統網路已經恢復,再退出選單欄處理程式,不讓舊服務在安裝期間切換路由。

  3. 安裝匹配晶片的正式版

    M 系列選擇 Apple Silicon,Intel Mac 選擇 Intel;保留現有 Profile 作為對照。

  4. 從「應用程式」重新開啟

    暫時不改 DNS、覆寫和節點,只檢查服務狀態與原錯誤是否消失。

第一條 TUN 錯誤能區分權限與斷網

重新啟動後只開啟一次 TUN,從日誌頂部向下找本次操作出現的第一條 error。開關回落與網頁超時不是同一種失敗:前者常發生在建立網路介面卡之前,後者說明網路介面卡可能已經存在,問題進入 DNS、路由或上游連線。

官方 macOS FAQ 說明,TUN 開啟時用戶端會臨時調整系統 DNS,關閉後應恢復。修復前先記錄原 DNS;若 TUN 已關閉而設定沒有恢復,先在系統網路設定中恢復原值,再繼續測試。

configure tun interface: operation not permitted

核心沒有完成建立 TUN 所需授權,檢查服務模式與舊服務殘留。

服務安裝按鈕發生錯誤,日誌沒有進入核心啟動

確認應用位於 /Applications,再檢查安全軟體或裝置管理策略是否阻止特權服務。

TUN 保持開啟,連線頁出現請求但全部 timeout

權限鏈已經走通,轉查 DNS、規則、節點或其他 VPN 的路由衝突。

關閉 TUN 後系統代理仍正常

保留該狀態作為還原基線,只修服務,不重建訂閱。

跨版本升級後,按官方順序重裝服務

v2.4.5 的官方發布說明曾提示 macOS 與 Linux 收緊服務 IPC 權限,部分已安裝環境需要先卸載舊 TUN 服務再安裝新服務。若你跨過這一版本升級,介面內重試仍失敗,可以使用發布說明給出的 macOS 工具。

執行前必須確認應用實際位於 /Applications/Clash Verge.app,並已退出用戶端。下面先檢查工具是否存在;路徑不一致或檢查失敗就停止,不要把命令改成指向下載目錄。

先檢查路徑,再執行官方卸載與安裝工具
APP="/Applications/Clash Verge.app"
test -x "$APP/Contents/Resources/resources/clash-verge-service-uninstall"
test -x "$APP/Contents/Resources/resources/clash-verge-service-install"

sudo "$APP/Contents/Resources/resources/clash-verge-service-uninstall"
sudo "$APP/Contents/Resources/resources/clash-verge-service-install"

兩條 test 命令沒有輸出且回傳成功,才繼續輸入管理員密碼。完成後重新開啟用戶端,檢查服務模式是否啟用,再用原 Profile 測試一次。不要從論壇下載同名 service 檔案,也不要手動刪除 launchd 目錄中的未知專案。

公司 Mac 的安全策略不能靠強行繞過

官方 macOS FAQ 把部分閃退和服務安裝失敗指向安全軟體阻止服務。個人電腦可以檢查「系統設定 → 通用 → 登入項與擴展」中與 Clash Verge Rev 相關的背景專案;受管電腦則應讓管理員確認是否允許該服務。

如果每次登入都出現 osascript 請求更改的提示,先查看相關背景專案是否被關閉。不要永久停用終端防護、移除裝置管理或對整個應用遞歸清除隔離屬性;這些動作會把一個權限問題變成更大的安全風險。

受管環境需要確認

  • 用戶端來自專案官方 Release,檔案與晶片架構匹配
  • 應用已經安裝到 /Applications,而不是使用者臨時目錄
  • 管理員明確允許安裝和執行 Clash Verge Rev 服務
  • 安全軟體沒有隔離應用、Mihomo 核心或服務工具
  • 沒有同時執行另一款 VPN 或 TUN 用戶端爭用路由

修復沒有完成,就退回系統代理繼續使用

服務重新安裝後仍出現同一條權限錯誤,應停止重複授權。關閉 TUN,確認系統 DNS 回到修復前記錄的值,再用系統代理和原節點完成一次存取;這能保留基本連線,也避免讓故障狀態長期佔用路由。

如果關閉 TUN 後仍斷網,先退出 Clash Verge Rev,並在 macOS 網路設定中關閉代理或恢復原 DNS。不要刪除網路服務、重置整台 Mac 的網路設定,也不要清空 Profile;這些資料與服務授權不是同一層。

提交問題前保留可復現證據

  1. 匯出脫敏日誌

    保留開啟 TUN 前後幾十行,遮住訂閱 URL、節點位址、UUID 和密碼。

  2. 記錄環境

    寫明 macOS 版本、Apple Silicon 或 Intel、用戶端版本與安裝路徑。

  3. 記錄最小復現

    說明系統代理是否正常、TUN 開關表現、服務模式狀態和第一條 error。

  4. 恢復可用模式

    在官方修復或管理員處理前使用系統代理,不繼續疊加未知指令碼。

五項檢查證明 TUN 真正恢復

TUN 開關保持藍色只證明介面儲存了狀態。還要用不依賴系統代理的請求做對照,並確認關閉 TUN 後路由與 DNS 能正常恢復。

完整驗證清單

  • 服務模式顯示已啟用,日誌不再出現 operation not permitted
  • 關閉系統代理、只開 TUN 時,瀏覽器和終端請求都能進入連線頁
  • 連線記錄顯示預期規則與出口,而不是全部 DIRECT 或持續 timeout
  • 關閉 TUN 後,系統 DNS 與普通直連恢復,不需要重啟 Mac
  • 重新登入一次系統後,服務仍可用且不反覆請求異常授權

參考資料