本文適合已從服務商取得訂閱連結或連線參數,準備匯入 Shadowrocket(小火箭)的使用者。先依連結前綴辨識內容,再核對認證、傳輸與 TLS 欄位,最後分清單筆匯入與訂閱更新。文中的網域、密碼與 UUID 僅用來說明格式,不能作為實際連線參數。
一、單一節點分享連結與訂閱連結的主要差異
單一節點分享連結會將單筆連線所需的參數寫入 URI。ss://、vmess://、vless://、trojan:// 前綴會告訴匯入器應採用哪種格式解析;匯入後取得的是伺服器記錄,而非持續取得新內容的網址。
訂閱連結通常是 HTTPS 網址。Shadowrocket 會向該網址發出請求、讀取回應內容,再解析其中的伺服器記錄。訂閱更新是重新請求並處理遠端內容,不會讓已匯入的單一節點連結自行變更。訂閱連結需向服務商取得;僅憑網址以 https:// 開頭,無法確認它提供的是節點訂閱、設定檔還是一般網頁。
二、ss://:認證欄位、伺服器位址與備註
Shadowsocks 常見的 SIP002 格式包含經 Base64URL 編碼的認證資訊、伺服器位址、連接埠,以及可選的備註。以下範例中,認證部分解碼後為 aes-256-gcm:password,位址為 example.com,連接埠為 8388。這些示範參數不能用於連線。
ss://[email protected]:8388#Example-SS
| 片段 | 說明 | 核對方式 |
|---|---|---|
ss:// | Shadowsocks 分享格式識別標記 | 確認 Add Server 中的 Type 設定為 Shadowsocks。 |
YWVzLTI1Ni1nY206cGFzc3dvcmQ | 編碼後的方法與密碼 | 確認方法和密碼與伺服器端設定一致。 |
example.com:8388 | 伺服器位址與連接埠 | 連接埠須依服務商提供的參數填寫,不能一律改成 443。 |
#Example-SS | 可選備註 | 用來辨識記錄,不參與伺服器端認證。 |
另一種較早期的格式會將「方法、密碼、位址、連接埠」整體編碼,外觀看不到 @ 也有可能。遇到無法匯入的連結時,應先確認採用哪種格式,而不是直接拼接分隔符號。部分連結也包含外掛程式參數;即使位址與密碼正確,遺漏這些參數仍可能無法連線。
三、vmess://:Base64 中的 JSON 參數
常見的 VMess 分享格式是在 vmess:// 後方接上一段 Base64 文字。解碼後通常是 JSON,而不是一般的「使用者名稱@伺服器」。以下展示的是編碼前的示範 JSON,並非可直接貼上匯入的完整連結。
{
"v": "2",
"ps": "Example-VMess",
"add": "example.com",
"port": "443",
"id": "11111111-2222-4333-8444-555555555555",
"aid": "0",
"scy": "auto",
"net": "ws",
"type": "none",
"host": "example.com",
"path": "/connect",
"tls": "tls",
"sni": "example.com"
}
add與port指定連線目標;id是用於認證的 UUID,不能以備註取代。- 當
net為ws時,必須一併檢查 WebSocket 的host與path。路徑的大小寫及開頭的斜線都應保留。 tls與sni會影響 TLS 連線。WebSocket Host 與 TLS SNI 的用途不同,即使範例值相同,也不能視為同一個欄位。v是此分享格式中的欄位,並非 Shadowrocket 的 App 版本;aid等欄位應依實際服務參數解讀,不應照著範例改寫。
如果連結來自經過排版的訊息,換行、智慧引號或遭截斷的 Base64 都可能導致解析失敗。請先重新複製完整原文,再核對匯入結果。不要把 VMess JSON 當成設定檔內容貼到 Config,也不要將 JSON 裡的 port 誤認為訂閱 URL 的連接埠。
四、vless:// 與 trojan://:可讀欄位也要逐項核對
VLESS 和 Trojan 常見的分享連結採用較直觀的 URI 結構:認證資訊位於 @ 前方,後方則是位址、連接埠與查詢參數。範例中的 & 在頁面上代表連結參數之間的分隔符號;實際複製時請保留完整原始連結。
vless://[email protected]:443?encryption=none&security=tls&type=ws&host=example.com&path=%2Fconnect&sni=example.com#Example-VLESS
trojan://[email protected]:443?security=tls&type=tcp&sni=example.com#Example-Trojan
| 核對項目 | VLESS 範例 | Trojan 範例 |
|---|---|---|
| 認證資訊 | UUID | 密碼 demo-password |
| 目標位址 | example.com:443 | example.com:443 |
| 傳輸參數 | type=ws,需要 Host 與 Path | type=tcp |
| TLS 參數 | security=tls 與 sni | security=tls 與 sni |
path=%2Fconnect 中的 %2F 是斜線的百分比編碼。密碼若含有 @、# 等 URI 保留字元,也須正確編碼,否則解析器可能會將部分密碼誤判為位址或備註。不了解欄位界線時,不要手動解碼整條連結後再匯入。
重點:匯入成功後,還要核對傳輸與 TLS
記錄出現在 Home,只表示連結已成功解析。若連線失敗,請開啟記錄編輯頁,依序核對位址、連接埠、認證資訊、傳輸類型、Host、Path 與 SNI;不要先關閉憑證驗證來掩蓋參數錯誤。
VLESS 範例中的 encryption=none 描述的是協定對應參數,不代表此範例沒有 TLS。不同分享格式對參數名稱的約定也可能不同,不能只替換前綴就將 VLESS 連結轉成 Trojan 連結。
五、Shadowrocket 匯入入口:節點訂閱與 Config 不同
Home 用來管理伺服器記錄與連線選擇,Config 用來管理規則設定,Settings 用來管理 App 設定。節點訂閱用於批次維護伺服器記錄;遠端設定也可能包含 [General]、[Rule] 等區段。兩種內容都可能透過 HTTPS 取得,但不能只因網址看起來相似,就從同一個入口匯入。
Add Server → Type → Subscribe
建議方式適用於已持有節點訂閱 URL 的情況:在 Home 點選新增按鈕,進入 Add Server,將 Type 設為 Subscribe,輸入 URL 後儲存。後續更新可透過該訂閱記錄進行。
適用情況:已有節點訂閱,且需要保留批次更新入口
Add Server → 選擇對應的協定 Type
依現有參數選擇 Shadowsocks、VMess、VLESS 或 Trojan,並填寫位址、連接埠與認證資訊。單筆分享連結也可以透過剪貼簿匯入提示或掃描 QR Code 解析;匯入後請檢查對應欄位。
適用情況:已有單筆分享連結,或需要手動核對一筆伺服器記錄
Config → 遠端設定
用於匯入規則設定檔。先確認遠端回傳的是設定內容,再到 Config 新增並選擇使用;不要將一般節點訂閱 URL 當成規則設定檔網址。
適用情況:明確取得包含設定區段的遠端設定網址
剪貼簿與相機權限由系統管理。複製完整連結後返回 Home,依畫面出現的匯入提示操作;掃描 QR Code 則使用 Home 中的掃描入口讀取原始文字。若沒有出現辨識提示,請先檢查前綴、空格與換行;不要將訂閱 URL 填入單一伺服器的 Address 欄位。
兩種現有資料的處理方式
已有單一節點分享連結
- 確認前綴與連結完整,再透過剪貼簿或掃描 QR Code 匯入。
- 在 Home 開啟記錄,核對位址、連接埠與傳輸欄位。
- 伺服器端參數變更後,取得新連結並重新核對記錄。
已有節點訂閱 URL
- 向服務商取得訂閱,並保留完整查詢參數。
- 使用 Type 設為 Subscribe 的入口儲存 URL。
- 執行該訂閱的更新操作後,檢查記錄是否如預期變更。
需要持續更新時,請保留訂閱記錄;只有單一節點分享連結時,不應期待它自動變成可更新的訂閱。
六、訂閱更新原理、敏感參數與排查順序
以下是明確的示範網址。token=xxxx 代表認證參數所在位置,並非真實憑證。伺服器收到請求後,可能會回傳經編碼的節點清單或其他可供用戶端辨識的訂閱內容;HTTPS URL 本身無法說明回傳格式。
https://example.com/sub?token=xxxx
- 先確認資源類型。向服務商確認該網址是節點訂閱還是遠端設定。若回傳登入頁面、錯誤訊息或空白內容,就不能視為有效的節點清單。
- 再確認請求是否成功。若逾時,先檢查目前網路是否能連線至訂閱網域;HTTP 401 或 403 通常需要核對授權與連結狀態。不要只因瀏覽器能顯示網頁,就認定訂閱有效。
- 接著檢查解析結果。請求成功卻沒有記錄,可能是回傳內容不受目前入口支援,也可能確實沒有可用記錄。請核對格式說明,不要反覆新增重複的訂閱。
- 最後檢查連線與規則。更新成功不代表每筆記錄都能連線。先在 Home 檢查選取的記錄,再查看 Global Routing;Config 會套用設定中的規則,Proxy 會將可代理的流量交由代理策略處理,Direct 則使用直連,Scene 會依選取的情境設定處理。節點分享連結本身不會自動建立完整的分流規則。
七、連結匯入與訂閱更新常見問題
將 ss:// 貼到 Subscribe 的 URL 欄位,為什麼無法更新?
ss:// 描述的是單筆記錄,並非供 HTTP 請求讀取的訂閱網址。請移除這筆錯誤的訂閱輸入,返回 Home,透過剪貼簿或掃描 QR Code 匯入原始分享連結,再核對 Shadowsocks 的方法、密碼與連接埠。
訂閱更新後,手動修改過的名稱或參數會保留嗎?
訂閱記錄會依遠端回傳內容維護;更新時,本機修改可能會被取代,實際情況取決於更新與保留設定。需要測試參數時,請先記下原始值,並使用獨立記錄測試;不要將訂閱中的暫時修改當成長期設定來源。
QR Code 掃描成功但無法連線,需要重新掃描嗎?
先檢查匯入的記錄是否完整,尤其是 WebSocket Path、Host 與 TLS SNI。若文字內容沒有遭截斷,重複掃描不會改變伺服器端參數。接著核對服務狀態與目前選取的記錄;若仍有問題,請參閱疑難排解。
有節點連結後,還需要設定 DOMAIN-SUFFIX 或 FINAL 嗎?
節點定義連線目標,規則則定義請求的去向,兩者用途不同。使用 Global Routing → Config 時,請檢查目前設定中的規則順序與策略目標。DOMAIN-SUFFIX 用於比對網域後綴,FINAL 則處理先前未比對到的請求;匯入節點不代表這些規則已設定完成。