協定指南 · macOS 技術參考
Clash 協定與 mihomo 核心指南
依據協定設計、網路條件與設定相容性,選擇用戶端中的出站類型。
本頁供系統性查閱,不取代首次連線流程。尚未完成安裝、匯入訂閱及設定系統代理時,請先閱讀快速入門教學;已能正常連線後,再用本指南判斷協定差異、找出相容性問題。請依晶片架構,在macOS 下載區選擇安裝檔;初次使用建議優先考慮 Clash Plus。協定功能最終取決於用戶端實際內含的核心、伺服器設定及目前網路,不能只憑用戶端名稱推斷。
一、協定、傳輸與流量接管方式的界線
先釐清一次連線經過哪些層次
在 Mac 用戶端看到一個出站名稱,背後涉及的不只一種技術。最內層是應用程式發出的連線,例如瀏覽器要求網頁,或終端機連線至程式碼儲存庫;用戶端先決定是否接管流量,再依規則選擇策略組,最後由特定出站將要求送至伺服器。代理協定規範用戶端與伺服器如何驗證身分、描述目標位址及傳輸資料。TCP、UDP、TLS、WebSocket、HTTP/2、QUIC 則屬於不同層次的傳輸或安全機制。若將這些名稱並列視為可互換的協定,匯入設定或排除問題時很容易搞錯方向。
例如,VLESS 可以搭配不同的傳輸方式,但伺服器若啟用 WebSocket,用戶端就不能只填對位址與使用者識別碼,再任意改成一般 TCP。路徑、要求標頭、TLS 開關及伺服器名稱都可能影響連線建立。介面顯示的協定名稱通常只代表其中一層;要確認完整相容性,還得一併核對協定、傳輸方式、安全參數與擴充選項。訂閱已包含這些欄位時,請優先保留原值,不要照著網路教學拼湊不同伺服器的設定。
系統代理、TUN 與協定類型是不同概念
系統代理會告知遵循 macOS 設定的應用程式,將連線交給本機代理連接埠。TUN 則會建立虛擬網路介面,透過路由接管符合條件的流量。兩者決定流量如何進入用戶端,並不會決定用戶端連往伺服器時使用 SS 還是 Trojan。同一個出站可以供系統代理使用,也可以由 TUN 使用。因此,終端機無法連線時,直接更換協定不一定能解決問題;程式可能根本沒有把要求送進用戶端。請先查看連線紀錄,再判斷問題出在接管層、規則層還是出站層。
規則模式、全域模式與直連模式也都不是協定。規則模式依網域、位址或其他條件選擇出口;全域模式會將已接管的連線交由統一策略處理;直連模式則通常讓這些連線直接存取目標。即使啟用全域模式,不遵循系統代理的應用程式也不會因此自動受到接管。反過來說,TUN 接管後仍可依規則分流,不必把所有要求都送往遠端。需要詳細操作說明時,可參考macOS TUN 增強模式說明,確認授權與路由設定。
安全功能與使用條件必須一併評估
加密、伺服器身分驗證與設定保密,分別處理不同問題。連線使用 TLS,不代表可以關閉憑證驗證;設定使用隨機識別碼,也不代表訂閱網址可以公開。選擇協定前,應先確認伺服器由誰提供、憑證是否可信,以及訂閱是否來自預期管道。代理伺服器通常能觀察連線目的地與時間等資訊,而應用程式本身的 HTTPS 加密仍負責保護內容。不要為了讓連線暫時成功,就把憑證檢查當成可以長期略過的選項。
閱讀後續比較時,也要區分「協定規格允許」與「目前實作支援」。某個協定具備 UDP 轉送設計,不代表所有伺服器、外掛及訂閱轉換器都完整實作了這項功能。用戶端介面中的開關也無法憑空提供伺服器不具備的能力。實際選擇應以所用核心的支援範圍、伺服器需求及連線記錄為準,而非看名稱包含多少技術縮寫。
二、Shadowsocks 與 VMess 的設計取捨
Shadowsocks:以加密轉送為核心的簡潔架構
Shadowsocks 通常簡稱 SS,核心設計是在用戶端與伺服器之間建立經過驗證加密的轉送通道。基本設定通常包含伺服器位址、連接埠、加密方式與密碼,參數相對集中,適合已掌握明確伺服器資訊、希望減少傳輸層組合的情境。早期的串流加密方案與後來的 AEAD 方案,在安全性和相容性上有所差異,不能把所有標示為 SS 的連結視為相同實作。選用目前核心與伺服器共同支援的現代加密方式,比單純追求參數少更重要。
傳統 AEAD 與 Shadowsocks 2022 也不能只改加密方式名稱就互通。後者對金鑰格式、長度及部分協定處理有明確要求,用戶端與伺服器必須搭配使用。若匯入訂閱後顯示金鑰長度不符,應核對原始設定與加密方式,不要截短金鑰或自行補字元。部分 SS 設定也依賴外掛;外掛是額外條件,不是每個用戶端都能執行相同的外掛程式。Mac 圖形介面能辨識基本 SS 欄位,不代表具備執行外部外掛所需的環境。
就連線表現而言,SS 的基本封裝較少,但不代表在任何網路路徑下都更快。加密方式是否能使用硬體加速、伺服器負載、單一連線的封包遺失及本機網路品質,都會影響結果。UDP 轉送還需要伺服器允許相應流量,並與用戶端設定一致。網頁能開啟,但語音或遊戲連不上時,應另外檢查 UDP 功能、目標規則及 NAT 行為,不要因為 TCP 要求成功,就認定整個出站完全正常。
VMess:身分驗證與可組合的傳輸方式
VMess 源自 V2Ray 生態系,設計著重於使用者身分驗證與資料傳輸,通常以使用者識別碼及加密選項描述出站。它可搭配不同傳輸方式,因此需要保持一致的參數也比基本 SS 更多。若伺服器使用 TLS 搭配 WebSocket,用戶端除了填對使用者識別碼,也必須符合 TLS 伺服器名稱、路徑及必要的要求標頭。VMess 協定本身與外層傳輸各自負責不同工作;排除問題時應分別驗證,不要把握手失敗一概稱為協定失效。
舊教學常會出現與歷史驗證機制相關的欄位,現代設定通常採用 VMess AEAD,舊式組合未必仍受目前核心支援。不要為了沿用舊截圖而加入過時參數。系統時間明顯不正確也可能影響驗證;Mac 長時間離線後,可先到系統設定檢查日期與時間。若記錄顯示驗證失敗,應一併檢查時間、使用者識別碼及伺服器要求;若記錄停在憑證或傳輸握手,則應先處理相應層次,不要只憑失敗結果推斷識別碼有誤。
| 類型 | 優先核對 | 其他限制 |
|---|---|---|
| Shadowsocks | 加密方式、密碼或金鑰格式、連接埠 | 外掛、UDP 與不同世代的方案不可混用 |
| VMess | 使用者識別碼、驗證方式、系統時間 | 外層傳輸、路徑與 TLS 參數必須一致 |
實際選擇時,若已有穩定的 SS 服務且不依賴特殊外掛,沒有必要只因另一種協定欄位較多就移轉。若 VMess 服務已提供完整且持續維護的設定,也應先驗證原設定,再考慮替換。協定複雜度帶來的功能必須符合實際需求,否則只會增加設定項目。無法修改伺服器的一般使用者,最重要的不是自行設計參數組合,而是確認訂閱輸出適用於目前核心,並保留一個已驗證可用的出站作為比對基準。
三、Trojan、VLESS 與 TLS 參數
Trojan:在 TLS 連線中進行身分驗證
Trojan 的典型部署會以 TLS 作為外層安全通道,並在通道內進行密碼驗證與代理要求。它沿用成熟的憑證與 TLS 生態系,因此設定看似集中於位址、連接埠、密碼及伺服器名稱,實際能否使用卻很依賴憑證鏈、網域與部署方式。伺服器位址用來找到連線終點,TLS 伺服器名稱則用於身分驗證等流程;兩者有時不同,但不能任意互換。訂閱指定網域時,隨意改成 IP 可能改變解析結果,也可能導致憑證名稱驗證失敗。
用戶端的 SNI 或伺服器名稱欄位不等於 HTTP Host。前者參與 TLS 握手,後者屬於 HTTP 要求語意;採用 WebSocket 等外層傳輸的部署中,兩者可能各自出現。把同一個網域機械式填入所有欄位,既不能保證相容,也可能掩蓋原設定的實際結構。排查憑證錯誤時,應檢查系統時間、憑證有效期限及中繼憑證鏈,再核對訂閱中的名稱。長期啟用略過憑證驗證,會失去確認伺服器身分的重要保護。
VLESS:輕量協定與外層安全機制的組合
VLESS 也是 V2Ray 相關生態系中的代理協定,設計相對精簡。它本身不提供與 SS 相同意義的內建資料加密,通常仰賴 TLS 或其他明確設定的安全層保護連線。因此,「VLESS 較輕量」不能簡化成「少開幾個安全選項就更快」。若伺服器要求 TLS,用戶端就必須採用相同設定;缺少可信外層保護的連線,不能只因使用了使用者識別碼就視為已加密。使用者識別碼用於驗證,不等同於內容保密機制。
VLESS 可搭配不同傳輸方式與擴充功能,相容範圍會隨核心實作而異。Reality 相關參數、用戶端指紋及流量控制選項各有相應條件,不能把某一種組合的教學套用到所有 VLESS 出站。尤其流量控制欄位不是通用的加速按鈕;只有伺服器、傳輸架構及用戶端實作都符合條件時才有作用。訂閱未提供的公鑰、短識別碼等值,不能由用戶端任意產生後就期待連線成功;這些參數應來自配套的伺服器設定。
分開處理憑證問題與協定問題
TLS 連線可能在驗證之前就失敗。憑證過期、名稱不符、系統信任鏈異常或網路中間設備介入,都可能導致 Trojan 或使用 TLS 的 VLESS 連線失敗。問題不一定出在代理協定本身。若瀏覽器連一般 HTTPS 網站也有異常,請先確認 Mac 時間與網路環境;若只有某個出站失敗,再檢查伺服器設定。錯誤類型與排查方式可參考HTTPS 憑證錯誤原因與排查,不要安裝來源不明的根憑證來繞過問題。
在連線速度方面,Trojan 與 VLESS 的實際差異,往往會被外層 TLS、傳輸方式及伺服器網路狀況掩蓋。首次握手、連線重用、壅塞控制與目標網站回應,都可能成為主要成本。單次網頁開啟較快,不足以證明某個協定永遠較好。對 Mac 用戶而言,先選擇欄位完整、憑證可信且核心明確支援的設定,再在相同網路與相同目標下比較表現,通常比追求最新組合更有效。維護難度也是成本:若每次更新都要手動補欄位,長期穩定性可能不如現有的成熟設定。
四、Hysteria2、TUIC 與 UDP 網路條件
QUIC 提供不同的傳輸基礎
Hysteria2 與 TUIC 都採用以 UDP 為基礎的 QUIC 技術,但兩者並非相同協定,不能互相匯入後只改協定類型名稱。QUIC 結合安全握手、可靠資料流與壅塞控制等機制,允許多條資料流共用連線,降低 TCP 層的隊頭阻塞影響。不過,每條可靠資料流內部仍須依序交付,網路壅塞也仍會影響整體頻寬。QUIC 無法消除封包遺失,只是採用不同的復原與排程方式;要發揮優勢,實際網路必須允許 UDP,且實作支援合適。
部分訪客網路、企業無線網路或行動熱點可能限制、限速 UDP,或設定較短的連線逾時時間。此時 TCP 類出站能連線,不代表 QUIC 出站也應該正常。Mac 上應先保留一個已驗證可用的 TCP 類設定作為比對,再檢查 UDP 路徑。若網路只在休眠喚醒後失效,也要考慮 NAT 對應過期及用戶端重新連線的行為,不要直接認定驗證資訊有誤。同一協定在家用網路與公共網路上表現不同,是可以用網路條件差異解釋的。
Hysteria2 的頻寬設定不等於測速結果
Hysteria2 著重於包括高延遲、封包遺失等條件下的傳輸需求,實際壅塞控制行為則與用戶端及伺服器設定有關。部分設定會指定上行與下行頻寬,這些數值用來影響傳送策略,並非伺服器承諾可用速率。下行頻寬填得越高,不代表下載就越快;若遠高於實際瓶頸,可能造成排隊、封包遺失,或影響同一網路上的其他應用程式。請參考穩定且可持續的網路能力,並遵循伺服器提供的限制,不要照抄他人的數值。
Hysteria 與 Hysteria2 存在協定世代差異,舊設定不能只改類型名稱就完成移轉。驗證欄位、混淆選項及傳輸參數也必須相符。若匯入器將類型辨識為舊協定,請優先重新取得適用於 mihomo 的設定輸出。用戶端顯示設定已儲存,只能證明文字內容已被接受,不代表伺服器握手成功。請查看實際連線記錄,確認是否進入驗證階段,以及問題發生於 UDP 建立連線、TLS 驗證,還是協定驗證之後。
TUIC 的連線複用與 UDP 轉送方式
TUIC 同樣建構於 QUIC 之上,著重於代理連線複用,以及承載 TCP、UDP 流量。不同世代的實作可能不相容,驗證欄位與轉送選項應與伺服器一致。部分 UDP 轉送模式會在可靠性、即時性與封裝成本之間取捨,不能簡單認定可靠傳輸一定適合即時應用程式。語音或遊戲中的過期資料,即使最後送達也未必有用;檔案傳輸則更重視完整交付。請優先保留伺服器建議的模式,再以實際應用程式驗證。
| 檢查項目 | 確認內容 |
|---|---|
| 網路路徑 | 目前網路允許 UDP 流量通往伺服器連接埠 |
| 協定世代 | 用戶端類型與伺服器實作一致,不混用舊設定 |
| 安全與驗證 | 憑證名稱、驗證欄位及必要擴充設定皆相符 |
| 傳送策略 | 頻寬、壅塞控制與轉送模式符合伺服器要求 |
這兩類協定適合列入候選,不應當成所有情境的預設答案。若網路的 UDP 品質穩定,且跨距離存取明顯受封包遺失影響,可以進行對照測試;若不確定網路是否支援 UDP,或需要頻繁切換不同辦公網路,則應保留 TCP 類回退出站。選擇協定應減少不可控因素,不要為了追求特定傳輸機制,讓每次換網都得重新設定。
五、連線速度、資源使用與行動裝置耗電
將「速度快」拆成三項可觀察指標
連線速度至少包含建立連線所需時間、持續傳輸吞吐量及互動回應穩定度。瀏覽網頁時,重點在首次回應速度,以及許多小型資源能否及時載入;下載大型檔案更重視持續吞吐量;遠端終端機與視訊會議則更在意延遲抖動及中斷情況。某個出站的延遲測試數值較低,不代表它在所有工作中都較快。用戶端常見的延遲測試通常量測向指定位址發出要求所需的時間,不只是實體往返時間;結果也包含 DNS、握手及目標網站處理等成本。
比較協定時,應固定 Mac、網路、目標及測試時段,盡量使用相同伺服器位置與相近資源條件。若兩種設定來自不同伺服器,測得的首先是兩條完整路徑的差異,而非協定本身。連續測試也會受到快取、連線重用及伺服器負載變化影響。可以分別記錄首次開啟、重複瀏覽與持續傳輸的表現,但不要把其中一次最佳成績當成穩定水準。更值得關注的是日常工作時是否反覆逾時、重新連線或明顯停頓。
CPU、記憶體與網路封裝無法只用單一排序比較
CPU 負載來自加密、解密、協定解析、資料複製及網路堆疊處理。不同演算法在 Apple 晶片與 Intel 處理器上的硬體加速表現可能不同,用戶端的建置方式也會影響結果。TUN 會額外引入虛擬介面與流量處理;DNS、規則比對、連線記錄及詳細記錄也會占用資源。因此,開啟 TUN 後整體耗電有所變化,不能全歸因於所選協定;也不能直接比較兩個不同圖形用戶端的記憶體占用,藉此判斷它們背後的協定效率。
在 macOS「活動監視器」中,可同時觀察用戶端與相關核心程序的 CPU、記憶體及能源使用趨勢。測試期間應維持相同工作內容,避免一邊進行完整下載,一邊拿閒置狀態作比較。若記憶體持續增加,應先檢查連線數量、記錄量及訂閱規模,不要立刻認定是協定造成記憶體洩漏。若 CPU 只在高速傳輸時升高,可能屬於正常處理成本;若閒置時仍持續高占用,再排查反覆重新連線、DNS 要求異常或路由迴圈,並依症狀到說明中心繼續查找。
行動裝置耗電更受喚醒次數與網路狀態影響
行動裝置的耗電不只來自加密運算。行動網路模組的啟用時間、保活頻率、背景重新連線、訊號強度及 NAT 逾時,都可能占去更大比例。長連線可以減少重複握手,也可能因保活過於頻繁而增加無線模組喚醒次數。以 UDP 為基礎的方案在某些網路上表現良好,在另一些網路上卻可能需要持續重建連線。不能只憑 SS、Trojan 或 QUIC 這類名稱排出固定的省電名次,更不能直接將 Mac 的 CPU 測試結果套用到手機。
若 Mac 透過手機個人熱點上網,也應將熱點裝置視為獨立的耗電環節。大量傳輸測試可能同時提高 Mac 的網路處理負載與手機的無線負載。日常選擇時,應測試常見工作及休眠喚醒情境,而不只是跑滿頻寬。減少不必要的頻繁測速、過密的策略組檢查及除錯記錄,有時比更換協定更有效。檢查週期也不宜盲目縮短:更快發現故障與增加背景要求之間存在成本,應依實際切換需求權衡。
最後的設定應容許不同工作使用不同策略組。網頁、開發工具與即時應用程式未必需要相同出站,但分組應有明確目的,避免為了測試把規則拆得過細。先找出穩定的基準,再針對特定問題增加一個候選方案,比同時調整協定、DNS、TUN 與策略組更容易得出可信結論。
六、原版 Clash、Meta 與 mihomo 的關係
核心負責執行,圖形用戶端負責管理
Clash 生態系中的核心負責解析設定、比對規則及處理網路連線;圖形用戶端則提供選單列、訂閱管理、系統代理、權限授權與設定介面。兩者彼此相關,但不能混為一談。Clash Plus、Clash Verge Rev、FlClash 等是使用者選擇的用戶端,實際支援哪些協定仍取決於它們整合或呼叫的核心。用戶端介面更新可能只調整操作方式,不一定同步更新所有協定實作。可在安裝檔頁面確認下載項目與選擇方式;初次設定建議從 Clash Plus 開始。
原版 Clash 建立了廣泛使用的 YAML 設定慣例,包含出站、策略組與規則等基本結構。原版開源核心與曾經出現的其他發行分支不能直接畫上等號,各分支的功能並不完全相同。Clash Meta 在相關生態系基礎上擴充協定及網路功能,後來的專案採用 mihomo 這個名稱。訂閱或教學中出現 Meta,很多時候是在描述這段演進歷程,而不是要求另外安裝獨立的「Meta 外掛」。了解名稱沿革有助於判讀資料,但不能取代功能核對。
基本結構相似,不代表所有欄位都能雙向相容
mihomo 延續了許多 Clash 設定結構,同時新增協定類型、規則功能及網路設定。原版核心無法辨識某些新出站,屬於功能限制,不一定是 YAML 縮排錯誤。反過來說,將舊設定移轉到新核心時,也可能受到欄位淘汰、預設行為變更或驗證更嚴格等因素影響。設定能載入只是第一步;還應檢查規則是否如預期命中、DNS 是否正確、策略組參照是否有效,以及 TUN 是否確實接管目標應用程式。
移轉前先備份目前可用的設定與用戶端設定。接著確認新用戶端匯入的是原始訂閱、合併後的設定,還是匯出的執行設定;這三者未必相同。圖形用戶端可能在啟動核心前覆寫連接埠、DNS、控制介面與 TUN 欄位。直接複製舊的執行檔,可能連不適用於新環境的參數也一併帶過去。建議先使用用戶端的預設網路設定匯入訂閱,確認基本連線正常,再逐項恢復自訂規則與覆寫項目,避免同時引入多個問題來源。
用精簡設定驗證語法與預設值
以下片段是 mihomo 設定中的通用欄位範例,用來了解模式、連接埠與記錄層級,不包含遠端出站,因此無法單獨建立代理連線。合併前應檢查完整設定是否已有相同的頂層鍵,避免重複定義。混合連接埠同時提供本機 HTTP 與 SOCKS 入口;連接埠數值應以目前用戶端實際監聽結果為準。它不是遠端伺服器連接埠,也不代表所有用戶端採用相同的預設值。
mixed-port: 7890
allow-lan: false
mode: rule
log-level: info
若記錄顯示協定類型未知,請先確認核心是否支援該類型,以及訂閱輸出的格式是否正確。若顯示找不到策略或代理名稱,應檢查參照關係與訂閱篩選結果。若設定可運作但規則未生效,再檢查規則順序及用戶端覆寫設定。詳細差異可參閱mihomo 與原版 Clash 功能比較。不要把所有錯誤都歸咎於「核心太舊」,也不要在沒有備份的情況下反覆替換整份設定檔。
Apple 晶片與 Intel 安裝檔處理的是程式架構是否相符,而非協定差異。優先執行適用於本機架構的版本,可以減少不必要的轉譯,但協定能否使用仍取決於核心實作。ClashX Meta 等已封存的用戶端可作為既有環境的參考;若要長期使用,也應考量維護狀態與系統相容性。選擇仍在維護、且能清楚顯示核心狀態的用戶端,通常比只看介面外觀更有助於處理後續設定問題。
七、Clash YAML、節點清單與訂閱轉換
訂閱網址無法直接判斷內容格式
訂閱連結是取得設定資料的入口,回傳內容可能是完整的 Clash YAML、只含出站清單的 YAML、經編碼的分享連結集合,或 sing-box JSON。網址副檔名與連結名稱不足以確認格式;部分服務也會依要求參數或用戶端識別資訊回傳不同內容。匯入失敗時,先判斷錯誤發生在下載、內容解析還是執行驗證。成功下載後卻收到 HTML,可能是登入頁面、錯誤頁面或存取提示,不代表 YAML 語法需要修正。
完整設定通常同時描述出站、策略組、規則及其他執行參數;節點清單則可能只提供連線所需欄位。用戶端能匯入清單,不代表清單內含適合所有使用者的分流規則。有些用戶端會用自訂範本補齊缺少的部分,另一些則要求使用者明確指定。匯入後若看得到出站,卻沒有預期的策略組,應檢查訂閱類型與範本,而不是重新輸入伺服器密碼。設定結構是否完整與出站數量多寡,是兩個不同問題。
編碼、轉換與合併分別負責什麼
Base64 只是編碼方式,不是加密,也不是代理協定。編碼後的內容可能是一組 SS、VMess、Trojan 等分享連結,每條連結各自包含相關欄位。將文字解碼只會還原原始表示方式,不會自動產生規則、DNS 或策略組。不同分享連結標準可表達的參數也不相同,部分較新的擴充欄位未必能由舊解析器辨識。在一個用戶端能匯入連結,不代表所有用戶端都會以完全相同的方式解讀。
訂閱轉換器會將一種資料模型對應到另一種資料模型,通常還會套用範本、重新命名或篩選內容。轉換可能遺失目標格式沒有對應欄位的資料,例如特定傳輸擴充、指紋選項、策略組行為及 DNS 路由語意。sing-box JSON 與 Clash YAML 並非只有括號和縮排不同,頂層結構及部分行為模型也不一樣。只修改副檔名,或逐字翻譯欄位,都無法產生可靠設定。轉換後必須依實際使用的核心重新驗證。
事先確認隱私界線與更新時的覆寫行為
訂閱通常包含可供連線使用的驗證資料,網址本身也可能含有存取憑據。不要將完整網址貼在公開截圖、網路討論區或未確認的轉換服務中。遠端轉換代表第三方可能接觸訂閱內容,請先了解服務提供者及資料傳輸路徑;若來源提供原生 mihomo 或 Clash Meta 格式,應優先使用該格式,減少中間轉換。需要技術協助時,只需提供錯誤類型、協定及已去除敏感資訊的結構,不必公開密碼、使用者識別碼或完整訂閱網址。
更新機制同樣會影響設定維護。直接編輯由訂閱產生的檔案,下次更新時修改內容可能遭到覆寫;用戶端提供的覆寫、合併或擴充功能,更適合保存本機規則。不過,各用戶端的合併順序不盡相同,附加清單也可能造成重複或順序變動。請先確認哪些欄位由訂閱管理、哪些由用戶端控制,再決定修改位置。尤其是規則清單,前面的寬泛規則可能讓後面較精確的規則永遠無法命中。
若更新後只有部分出站消失,應檢查篩選條件、重新命名規則及類型支援;若全部消失,則確認回傳內容與下載狀態。若更新成功但行為改變,請查看範本與覆寫項目是否也有變動。可以保留一份已移除敏感資訊的欄位清單供前後比對,不要將多份含憑據的檔案存進共用同步資料夾。三種常見格式的對應限制可參閱訂閱連結格式與轉換說明,再決定是否需要轉換。
八、依情境選擇並逐層驗證
先建立穩定基準,再加入其他協定選項
一般網頁與辦公用途,建議優先選擇伺服器資訊完整、目前網路可穩定連線,且用戶端明確支援的出站。成熟的 SS、Trojan、VMess,或設定正確的 VLESS 都可以列入考量,沒有必要一律換成某種協定。若現有設定在常用網路上穩定,移轉應針對具體問題,例如某種傳輸方式受限制、憑證維護困難,或應用程式需要 UDP,而非只看協定名稱新舊。保留原有設定,才能清楚比對新方案帶來的變化。
開發工具應先確認流量如何進入用戶端。瀏覽器正常但終端機連不上時,請檢查工具是否讀取系統代理;必要時設定工具自己的代理選項或環境變數,再考慮使用 TUN。不要一開始就更換協定並反覆測速,因為要求可能根本沒有進入用戶端。在 macOS 終端機執行下方指令,可查看目前的系統代理資訊;它不會驗證遠端協定,也不能證明命令列工具一定遵循這些設定。實際監聽連接埠仍應到用戶端設定頁確認。
scutil --proxy
視訊會議、語音與遊戲應更留意 UDP 轉送、延遲抖動及斷線後的復原能力。先確認應用程式是否已被接管,再檢查規則命中與出站的 UDP 功能。Hysteria2 或 TUIC 可以列入考量,但只有網路允許 UDP 且伺服器設定相符時,才值得比較。若 Mac 經常在家用、辦公室及訪客網路間切換,保留 TCP 類回退出站通常更實用;策略組的健康檢查只能判斷測試目標是否正常,不能保證所有應用程式都可使用。
使用固定工作完成完整驗證
每次修改後,使用相同目標和操作方式進行驗證。先在用戶端確認設定已成功載入,再開啟目標應用程式,查看是否出現連線紀錄。沒有紀錄時,檢查系統代理、TUN 授權及應用程式本身的設定;有紀錄但走錯策略時,檢查規則順序與網域解析;策略正確但握手失敗時,再檢查協定、驗證資訊、憑證及網路路徑。如此可將一次「無法上網」拆成可定位的階段,避免同時修改 DNS、連接埠與協定。
| 使用情境 | 優先留意 | 驗證方式 |
|---|---|---|
| 網頁與辦公 | 連線穩定、憑證可信、設定完整 | 重複開啟常用服務,檢查錯誤與規則命中情況 |
| 開發與終端機 | 應用程式流量接管與工具的代理設定 | 確認要求已進入用戶端,再檢查出站握手 |
| 會議與遊戲 | UDP、延遲抖動與連線復原 | 使用實際應用程式測試,不只看網頁測速 |
| 熱點與行動裝置 | 保活、重新連線與無線模組負載 | 觀察日常工作、切換網路及休眠後的表現 |
復原與回退機制也是選擇的一環
Mac 闔上上蓋再開啟後,用戶端可能需要重新啟用介面、路由或連線。若只有喚醒後無法連線,可先確認網路已恢復,再切換一次已驗證可用的出站,或重新建立用戶端連線,並查看記錄。若反覆失效,再檢查服務權限、網路延伸功能,以及是否有其他 VPN 同時修改路由。多個流量接管工具並行,可能造成迴圈或優先順序衝突,單純更換協定無法解決。退出用戶端後,也要確認系統代理已還原,避免仍指向已停止監聽的本機連接埠。
最後可依四項條件縮小選擇範圍:目前核心支援、伺服器參數完整、常用網路可連線,以及實際工作穩定。符合這些條件後,再比較效能與耗電。若某個新組合必須依賴大量手動修補才能維持,應將維護成本納入考量。首次安裝請依快速入門完成主要設定;具體問題可到說明中心查找;不熟悉的術語可在術語表查閱。本協定指南提供判斷架構,最終仍應以本機、目前網路及實際應用程式中可重複的結果為準。