第一步:匯入訂閱或本機 YAML
開啟用戶端,前往側邊欄的「設定檔」或「訂閱」頁面,找到「新增」、「加入」或「匯入」入口。使用遠端訂閱時,選擇透過 URL 匯入,將服務提供者給的完整連結貼到網址欄,再按下載或儲存。名稱可設為方便辨識的用途,例如「日常設定」;名稱只用來區分項目,不會改變節點或規則。若連結含有存取參數,請完整保留,不要複製瀏覽器顯示頁面的標題或說明文字。
等待下載完成後,確認該項目顯示成功,再按「使用」、「啟用」或相應的選取按鈕。有些用戶端匯入後會自動啟用,有些則只會將檔案加入清單。判斷依據不是項目是否存在,而是「代理」頁面能否顯示這份設定中的策略群組與節點。切換至代理頁面確認內容已載入,再進行下一步。
如果取得的是檔案,請在同一頁選擇「匯入本機檔案」,並選取副檔名為 .yaml 或 .yml 的設定檔。不要將檔案改成圖片、網頁或富文字格式,也不要只靠修改副檔名,就把其他訂閱格式當成 YAML。若用戶端提供設定檔檢查功能,可先執行檢查;錯誤提示中的欄位名稱與行號,通常比單純顯示「匯入失敗」更能協助定位問題。
匯入失敗時的檢查順序
先確認目前網路能否下載連結,以及回傳內容是否為相容的設定檔,而非登入頁面、過期提示或網頁錯誤。接著確認服務提供者是否將 Clash 訂閱入口與其他格式分開。若目前網路暫時無法連上訂閱網址,可向服務提供者索取本機設定檔再匯入,不必先反覆修改系統代理。YAML 縮排與通用欄位相關問題,請前往 設定欄位說明逐項檢查。
更新訂閱會重新取得遠端內容。初次連線時,先保留匯入結果,不要急著修改原始檔案;若之後需要長期保留自訂規則,請使用用戶端支援的覆寫機制,詳見 覆寫與合併。這樣可避免下次更新時覆蓋本機修改。
第二步:選擇規則模式與出口
確認設定檔已啟用後,前往用戶端的「代理」頁面,或從選單列圖示開啟模式選單。初次使用建議選擇「規則」模式,也可能顯示為 Rule。在此模式下,核心會依設定中的規則,決定請求要直連、拒絕,或交由某個策略群組處理。這不是「所有流量都經過同一節點」的開關,因此不同網站使用不同出口是正常情況。
接著展開主要策略群組,查看目前選取的項目。群組名稱由設定檔作者決定,可能是「代理選擇」、「自動選擇」或其他名稱,請勿只憑名稱推測用途。先找出規則實際使用的選擇群組,為它指定現有節點,或選用設定檔已提供的自動選擇群組。若群組選取的是 DIRECT,相應請求就會直連;只有選取遠端節點或包含節點的有效群組,相關規則才會將連線交由代理處理。
節點測試可用於初步判斷連線狀況,但測試成功不代表所有目標網站都能存取;測試失敗也須配合測試網址與目前網路狀況判斷。初次操作可手動選取一個確認可用的節點,並在完成測試前維持選取狀態。暫時不要同時調整 DNS、改寫規則順序或更換策略群組類型,否則出問題時難以判斷是哪項變更造成。
| 模式 | 請求處理方式 | 初次設定用途 |
|---|---|---|
| 規則 / Rule | 依規則比對結果選擇出口。 | 日常使用與主要流程測試。 |
| 全域 / Global | 送入核心的請求交由全域策略處理。 | 暫時比對規則是否影響結果。 |
| 直連 / Direct | 送入核心的請求通常會直接連線至目標。 | 比對本機網路的存取狀況。 |
此處的「全域」只描述請求進入核心後的處理方式,不代表會自動接管整台電腦的所有應用程式。應用程式是否將請求送至用戶端,還取決於系統代理、應用程式自身設定或 TUN。初次連線不必設定策略群組的自動選擇、故障切換與負載分配;之後可參閱 策略群組欄位。
第三步:啟用核心與系統代理
返回用戶端主畫面,確認核心正在執行。有些用戶端匯入設定後會自動啟動核心,有些則需要按下連線或啟動按鈕。若出現設定錯誤、連接埠遭占用或核心啟動失敗,請先排除問題,再啟用系統代理。系統代理會將應用程式請求導向本機監聽位址;若監聽尚未啟動,瀏覽器會將請求送往沒有服務回應的連接埠。
找到「系統代理」開關並啟用。它可能位於設定頁、首頁的快速操作區或選單列選單中。初次啟用時,若 macOS 或用戶端要求安裝輔助服務或授權修改網路設定,請先確認提出要求的應用程式與操作目的,再依提示完成設定。輔助服務的名稱與授權方式由各用戶端決定,不必為了照著教學操作而尋找介面上不存在的按鈕。
開啟 macOS「系統設定」,前往「網路」,選取目前使用的 Wi-Fi 或乙太網路服務,再開啟「詳細資料」中的「代理伺服器」。較舊版本的系統可能將這些選項放在「系統偏好設定」的網路進階設定中。確認網頁代理與安全網頁代理的位址、連接埠和用戶端設定一致;若用戶端設定了 SOCKS 代理,也請檢查相應項目。常見的本機位址為 127.0.0.1,混合連接埠範例為 7890,但請以實際設定為準。
檢查時請關閉其他代理工具的系統接管開關,避免多個應用程式反覆改寫同一組網路設定。公司管理的代理、VPN 或安全軟體也可能影響路由與 DNS,請依所在網路的管理規範操作。完成後先不要啟用 TUN,直接進行下一步的瀏覽器測試;依此順序可將系統代理問題與虛擬網卡問題分開排查。
第四步:分別測試瀏覽器與終端機
先用 Safari 或採用系統代理設定的瀏覽器開啟預計存取的 HTTPS 網頁,再開啟一個平常可直連的網頁作為對照。網頁能開啟只是初步結果;也請前往用戶端的「連線」或「日誌」頁面,重新送出請求,查看相關網域是否出現、命中哪條規則,以及最後選擇的策略群組與出口。連線紀錄可能很快消失,必要時重新整理網頁後立即查看。
如果瀏覽器安裝了獨立的代理擴充功能,請先確認它沒有覆蓋系統設定。存取命中直連規則的網站時,即使用戶端運作正常,也可能不會使用遠端節點。因此,不要只因出口 IP 位址沒有變化,就判定代理失效。請配合該網站的規則比對結果,確認實際行為是否符合設定預期;規則依序比對的說明請參閱 規則語法。
查詢目前網路服務的代理欄位
開啟「終端機」,可使用以下指令唯讀查詢系統網路服務,不會修改代理設定。先列出服務名稱,再將後續指令中的 Wi-Fi 替換為目前服務的實際名稱。查詢結果中的啟用狀態、伺服器位址與連接埠應與用戶端設定相符;這能確認系統欄位已寫入,但不能單獨證明遠端節點可用。
networksetup -listallnetworkservices
networksetup -getwebproxy "Wi-Fi"
networksetup -getsecurewebproxy "Wi-Fi"
networksetup -getsocksfirewallproxy "Wi-Fi"
使用明確指定的代理,區分本機監聽與系統接管
終端機工具不一定會讀取 macOS 的系統代理設定。以下指令會明確指定 curl 透過本機 HTTP 代理送出請求,用來單獨檢查監聽連接埠與後續連線路徑。執行前請確認實際使用的 HTTP 或混合連接埠;若不是 7890,請替換連接埠。目標網域是公開範例位址,測試結果也會受目前網路、節點與目標服務影響。
curl --proxy http://127.0.0.1:7890 --connect-timeout 10 -I https://example.com/
若無法連線至本機連接埠,請返回用戶端檢查核心與監聽值;若本機已連線但遠端請求逾時,再檢查節點、策略群組與目標網路。收到有效的 HTTP 回應,表示這次請求已抵達 HTTP 服務,但仍須配合連線紀錄確認出口。若瀏覽器正常,但未帶代理參數的 curl 失敗,通常應繼續檢查終端機代理設定,而不是直接重新安裝用戶端。
為目前的終端機工作階段設定代理
若要讓支援這些環境變數的命令列工具使用代理,可在目前的 shell 中執行以下指令。HTTPS 請求仍會透過 HTTP 代理的通道機制轉送,因此代理位址使用 http://。這些設定只會影響目前的 shell 及之後啟動的子程序,不會自動變更已在執行的終端機工作;不同工具支援環境變數的方式也不盡相同。
export http_proxy="http://127.0.0.1:7890"
export https_proxy="http://127.0.0.1:7890"
export no_proxy="localhost,127.0.0.1,::1"
curl --connect-timeout 10 -I https://example.com/
先確認目前工作階段的設定有效,再決定是否寫入 shell 設定檔。不要一開始就將設定加進多個啟動檔案,以免退出用戶端後仍留有設定。至此,瀏覽器請求、系統代理欄位與明確指定代理的測試都已分別檢查;若目標應用程式仍不使用系統代理,再考慮以下 TUN 補充流程。
視需要設定:TUN 模式與授權
TUN 透過虛擬網路介面與路由接管請求,適用於需要處理不讀取系統代理之應用程式等情境。它與「規則/全域/直連」並非同一層級的設定:TUN 決定請求如何進入核心,代理模式則決定請求進入核心後如何選擇出口。是否支援 TUN、採用哪種網路堆疊,以及如何安裝輔助服務,取決於用戶端與搭配的核心;採用 mihomo 核心的用戶端也可能提供不同的設定入口。
完成前述系統代理測試後,前往用戶端的網路或進階設定,找到「TUN 模式」或相近選項。若介面要求先安裝服務模式或特權輔助程式,請依用戶端提示完成授權,再啟用 TUN。不要先手動複製網路上的路由指令。初次啟用時,保留用戶端提供的預設網路堆疊與路由設定,接著開啟目標應用程式重新送出請求,並在連線紀錄中確認請求是否進入核心。
若啟用後出現 DNS 異常、無法連線至區域網路裝置,或與其他 VPN 衝突,請先關閉 TUN,回到已確認可用的系統代理狀態,再一次只調整一個選項。開關顯示已啟用,不代表所有流量都已接管;應用程式使用的通訊協定、排除路由與系統權限都會影響實際結果。DNS、路由與 YAML 結構的深入說明統一收錄於 YAML 手冊,初次使用不必全部修改。
平台補充:Windows 應用程式迴圈存取
本節僅適用於 Windows。部分採用 AppContainer 隔離機制的應用程式,透過迴圈位址存取本機代理時可能受到系統限制,因而出現瀏覽器已能使用代理、特定應用程式卻仍無法連線的情況。這與 macOS 的系統代理授權是不同問題;Mac 使用者不必尋找 UWP 迴圈存取開關,也不應照搬 Windows 的豁免指令。
在 Windows 上,先確認一般桌面應用程式可使用同一個本機代理連接埠,再檢查目標應用程式是否受到迴圈存取限制。若用戶端提供「迴圈存取豁免」或類似工具,可依說明以所需權限開啟,僅為確實需要存取本機代理的應用程式設定豁免,儲存後完全結束並重新啟動目標應用程式。若用戶端沒有提供此工具,不代表所有 Windows 應用程式都無法使用代理,也不要把迴圈存取豁免當成通用修復方式。
迴圈存取豁免只處理應用程式存取本機位址的權限,無法取代訂閱匯入、節點選擇或系統代理設定。若設定豁免後仍無法使用,請繼續確認應用程式是否讀取代理、是否使用 UDP,以及目前設定是否允許相應流量。需要 Windows 用戶端時,可從 Windows 下載入口選擇,不必變更已完成的 Mac 設定。
退出用戶端與網路復原
測試完成後若要停用代理,請先在用戶端關閉 TUN 與系統代理,再退出用戶端。這樣可避免本機監聽已停止,但系統網路設定仍指向原連接埠。只關閉主視窗可能只是將用戶端縮到選單列,並不代表已退出;請使用選單列中的退出指令結束執行,實際行為依用戶端設定而定。
若用戶端異常退出後瀏覽器無法連網,請先開啟目前網路服務的代理設定,確認是否仍保留指向本機的 HTTP、HTTPS 或 SOCKS 代理。確認這些項目確實由剛才的用戶端設定後,再取消相應項目;不要一併刪除公司網路要求的代理位址或自動代理設定。若曾在終端機工作階段使用環境變數,也需清除相應變數,或直接關閉該工作階段後重新開啟終端機。
unset http_proxy https_proxy all_proxy no_proxy
unset HTTP_PROXY HTTPS_PROXY ALL_PROXY NO_PROXY
如果曾將變數寫入 ~/.zshrc 等啟動檔案,只執行 unset 並無法阻止新工作階段重新載入,還需要刪除自行加入的相應行。復原後,請分別測試瀏覽器與終端機。保留一份已確認可用的設定;之後更新訂閱、加入規則或啟用 TUN 時,每次只變更一個環節。若要繼續自訂,請從 設定覆寫開始查閱,不要覆蓋整份訂閱檔案。