本文適合已持有服務商提供的設定,並需要判斷匯入類型的使用者。先分辨單一分享連結與訂閱網址,再了解 Shadowsocks、VMess、VLESS、Trojan 的欄位,最後在 Shadowrocket 中完成匯入、更新與連線測試。文中的網域、密碼與 UUID 均為教學用虛構資料,無法用於實際連線。
一、先分辨連結描述的是連線,還是設定清單
Shadowrocket(小火箭)中的單一伺服器項目會儲存協定、伺服器位址、連接埠與驗證資訊。以 ss://、vmess://、vless:// 或 trojan:// 開頭的分享連結,通常會將這些欄位直接編碼在連結中。匯入的作用是還原本機欄位,不代表已確認伺服器可用。
訂閱網址通常是 HTTPS 網址。Shadowrocket 連線至該網址並讀取回傳內容後,會建立或更新一組伺服器項目。因此,「分享連結能否解析」和「訂閱伺服器能否連線」是兩回事。HTTPS 只是存取方式,一般網頁和登入頁面也會使用 HTTPS,不能只憑網址開頭就認定它是訂閱網址。
單一項目通常不會因原伺服器更換位址而自動變更;訂閱項目則可在更新時重新取得參數。更新也可能移除舊項目,或覆寫由訂閱管理的欄位,因此不宜將本機手動修改視為長期維護方式。本文僅說明如何使用使用者已有的設定,不提供、不販售也不推薦連線服務或訂閱。
二、ss://:辨識 Shadowsocks 的驗證資訊與連接埠
ss:// 是 Shadowsocks 分享格式。常見的 SIP002 格式會將加密方式與密碼放在 Base64 編碼的使用者資訊中,後面接著 @伺服器:連接埠。以下範例的驗證資訊解碼後為 aes-128-gcm:password;網域與密碼均為虛構資料。
ss://[email protected]:8388#Example-SS
YWVzLTEyOC1nY206cGFzc3dvcmQ=:Base64 編碼的加密方式與密碼,不是伺服器網域。ss.example.com:伺服器主機名稱;8388是本例的連接埠,實際值必須與伺服器端設定一致。#Example-SS:顯示用備註。修改備註通常不會改變連線參數。?plugin=:部分連結會帶有外掛參數,複製時不要任意刪除;能否使用取決於參數內容及用戶端支援情況。
部分舊格式的連結會將「加密方式、密碼、伺服器、連接埠」整段編碼,因此看不到明顯的 @。格式不同不代表使用不同協定。Base64 只是文字編碼,並非保密措施;取得完整連結的人通常也能還原其中的連線憑證。
三、vmess://:先解碼 JSON,再分辨傳輸方式與 TLS
常見的 VMess 分享格式是在 vmess:// 後接上 Base64 編碼的 JSON。這與 VLESS 的 URI 格式不同,不能只把前綴改成 vless:// 就轉換協定。以下是解碼後的教學用 JSON,並非可直接貼上匯入的完整分享連結。
{
"v": "2",
"ps": "Example-VMess",
"add": "vmess.example.com",
"port": "443",
"id": "00000000-0000-4000-8000-000000000001",
"aid": "0",
"scy": "auto",
"net": "ws",
"type": "none",
"host": "ws.example.com",
"path": "/connect",
"tls": "tls",
"sni": "tls.example.com"
}
add 和 port 指定連線目標,id 是用於驗證的 UUID,ps 是備註。net=ws 表示使用 WebSocket,path 是對應路徑,host 是該傳輸方式的 Host 資訊。只有 tls=tls 才表示啟用 TLS;僅將連接埠設為 443,不會自動補上 TLS 設定。
sni是 TLS 交握時使用的伺服器名稱,不能只因它與add不同就直接覆寫。aid是用於相容舊版的欄位,本例為0;它不是連線延遲,也不是連接埠。scy是 VMess 的加密設定,不能與 WebSocket 或 TLS 混為同一個開關。v是這類分享 JSON 的格式欄位,不是 Shadowrocket 的應用程式版本。
匯入後若位址和 UUID 都已填入,但仍無法連線,請一併檢查傳輸類型、路徑、Host 與 SNI。只有伺服器位址正確,仍不足以讓使用 WebSocket 和 TLS 的設定成功連線。
四、vless:// 與 trojan://:格式相似,驗證方式不同
VLESS 和 Trojan 常見的分享格式都近似標準 URI:@ 前是驗證資訊,後面是伺服器與連接埠;問號後是參數,井字號後是備註。以下兩行僅為結構範例,不能用來建立連線。
vless://[email protected]:443?encryption=none&security=tls&type=ws&host=ws.example.com&path=%2Fconnect&sni=tls.example.com#Example-VLESS
trojan://[email protected]:443?security=tls&type=tcp&sni=tls.example.com#Example-Trojan
| 欄位位置 | VLESS 範例 | Trojan 範例 |
|---|---|---|
@ 之前 | UUID 驗證識別碼 | 連線密碼 |
security=tls | 本例的 TLS 設定 | 本例的 TLS 設定 |
type | ws,WebSocket | tcp,本例使用 TCP 傳輸 |
sni | TLS 伺服器名稱 | TLS 伺服器名稱 |
# 之後 | 顯示用備註 | 顯示用備註 |
VLESS 範例中的 encryption=none 描述的是 VLESS 本身的加密欄位,不代表整條連線沒有 TLS。本例另外以 security=tls 指定傳輸安全設定。分享參數可能因實作而異;若來源還提供 flow 等欄位,請保留原值並核對匯入結果,不要從其他連結拼湊參數。
%2Fconnect 解碼後是 /connect。若密碼包含 @、#、& 等保留字元,通常必須正確進行百分比編碼,否則解析器可能會將部分密碼誤認為分隔符號。IPv6 字面位址放入 URI 時也需要方括號,例如 [2001:db8::1]:443;此位址同樣僅供文件示例使用。
五、在 Home 分別匯入單一連結與訂閱網址
操作前請先確認手上的內容類型。Config 用於管理規則設定,不能因為內容也是 URL,就把伺服器訂閱網址當作規則設定匯入。Home 中的伺服器項目、訂閱群組,以及 Config 中的路由規則,各有不同用途。
兩種匯入內容:單一連線參數與遠端訂閱清單
單一分享連結
- 完整複製原始連結;若出現剪貼簿匯入提示,先確認協定類型。
- 在 Home 完成匯入後,開啟項目檢查伺服器、連接埠與驗證欄位。
- 接著檢查 TLS、SNI 與傳輸參數,不要根據備註名稱判斷協定。
- 參數變更時,請重新匯入或編輯該項目,不要依賴訂閱更新。
使用者已有的訂閱網址
- 前往 Home → +,將 Type 設為 Subscribe。
- 在 URL 欄貼上完整訂閱網址,填入方便辨識的備註後儲存。
- 更新訂閱,確認所屬群組中出現伺服器項目。
- 之後透過原訂閱更新參數,不要每次重新整理都新增一筆訂閱。
匯入成功只代表欄位或回傳內容可供解析;完成連線測試與實際存取後,才能判斷目前的設定是否可用。
常見訂閱網址格式如下:https://example.com/sub?token=xxxx,其中網域與 token 均為虛構資料。實際使用的 token 可能直接代表存取權限,請保留完整查詢參數,但不要貼到公開討論區。瀏覽器能開啟網址,也不保證應用程式能讀取有效訂閱:回傳內容可能是登入頁、錯誤頁或不支援的格式。
- 儲存訂閱後,記下群組名稱與項目數量,方便比對下次更新結果。
- 執行更新,留意是否出現錯誤,以及伺服器位址或項目是否有所變動。
- 選取一個項目執行 Connectivity Test,再開啟連線開關進行實際存取。
- 如需修改訂閱項目,請先保留原始參數;後續更新可能會覆寫由訂閱管理的欄位。
六、如何選擇手動更新或自動更新
更新訂閱會重新向遠端請求清單,不會測試所有伺服器,也不會讓單一分享連結具備自動同步功能。首次匯入建議先手動更新,確認來源與回傳內容無誤;建立可重複執行的檢查方式後,再依需求調整 Settings → Subscribe 中的更新設定。
手動更新 Subscribe
建議首次匯入或疑難排解時,可手動觸發更新,將錯誤提示、項目變化與這次操作直接對照,避免尚未核對參數就反覆更新。
適用情境:首次匯入、核對參數、排查訂閱更新失敗
自動更新 Subscribe
確認現有訂閱可正常更新後,可依照應用程式提供的更新設定維護清單。實際更新仍會受到網路與執行狀態影響,不能視為保證持續在背景輪詢。
適用情境:已確認可用,需要持續維護遠端清單
若必須透過現有代理連線才能連上訂閱伺服器,可檢查 Settings → Subscribe → Update via Proxy。啟用前必須已有可正常運作的連線;此設定無法修復失效的 token,也無法讓全部失效的伺服器自行恢復。若目前的連線不可用,強制透過它更新反而可能造成逾時。
七、常見問題:從解析失敗到更新後無法連線
已複製連結,為什麼匯入後沒有任何項目?
先檢查開頭的協定前綴是否完整、結尾是否遭通訊軟體截斷,以及連結中是否混入換行、引號或說明文字。若是 VMess,請確認取得的是完整編碼內容,而不是截取的 JSON 片段。請回到原始來源重新複製,不要靠修改前綴來猜測協定。
訂閱更新成功,為什麼單一伺服器仍然逾時?
更新成功只代表訂閱網址可連線,且回傳內容能夠解析。前往 Home 選取指定項目,執行 Connectivity Test,再檢查位址、連接埠、驗證資訊與 TLS 參數。若只有部分項目失敗,應逐一檢查,而不是連續更新整份訂閱。
連接埠已是 443,為什麼還要檢查 SNI?
連接埠只決定連線目標的連接埠號碼。使用 TLS 時,SNI、憑證名稱與驗證結果仍會影響交握。開啟項目檢查 TLS 與伺服器名稱,依照原始設定還原正確值;不要將停用憑證驗證當作一般修復方式。
更新後,為什麼自己修改的名稱或參數改變了?
由訂閱管理的項目可能在更新時重新建立或遭到覆寫。請先比對更新前保存的資訊,確認變動的只是備註,還是伺服器、連接埠或驗證資訊也有變更。需要長期保留的個別調整,應與訂閱管理的項目分開維護;原服務參數變更後,仍須手動同步。
可以把連結傳給別人協助排查嗎?
請勿直接傳送原始連結。先隱藏密碼、UUID、token 等敏感資訊,只保留協定類型、連接埠、傳輸方式與錯誤狀況。若完整訂閱網址已經外洩,請透過原服務商提供的帳戶管理方式重設存取憑證,再到 Home 更新訂閱 URL。
排查時可依序進行「辨識類型 → 完整複製 → 核對欄位 → 請求訂閱 → 測試單一項目 → 實際存取」。分享連結包含連線參數,訂閱網址則提供取得清單的入口;先釐清故障發生在哪一層,才能避免把路由問題誤認為格式錯誤,或把遠端伺服器故障當成匯入失敗。