Shadowrocket 分享連結格式:ss://、vmess://、vless://、trojan:// 與訂閱連結的差異

整理 ss://、vmess://、vless://、trojan:// 分享連結的欄位結構,說明單筆連結與訂閱連結在匯入、更新及適用情境上的差異。

本文速覽

在 Shadowrocket 中,分享連結通常包含一筆連線設定,訂閱連結則指向可重新取得的設定清單。本文適合已備妥自身服務設定與訂閱的使用者:先辨識連結類型,再核對協定欄位,最後分別完成匯入、更新與連線測試。文中的網域、密碼與 UUID 均為格式範例,不能用來連線。

先分清楚:連線參數與遠端清單網址

ss://、vmess://、vless://、trojan:// 是常見的單筆分享連結前綴,主要用來說明「連到哪個位址、使用什麼協定、如何驗證」。匯入後,Shadowrocket 可以從連結解析出伺服器、連接埠與驗證欄位;匯入成功只代表語法可辨識,不代表伺服器連得上或帳號有效。

訂閱 URL 通常以 https:// 開頭,代表需要連線請求的遠端網址。該網址回傳的內容可能是多筆分享連結,也可能是這些連結經 Base64 編碼後的文字。一般網頁網址也可能以 https:// 開頭,因此不能只看前綴就判定它是訂閱連結。

4 種
本文拆解的前綴:ss / vmess / vless / trojan
443
本文 TLS 範例連接埠;實際值請依既有設定填寫
8388
本文 Shadowsocks 範例連接埠,並非固定要求

ss://:核對加密方法、密碼與位址

Shadowsocks 分享連結常見的 SIP002 格式,會將驗證資訊放在 @ 前,後面接伺服器與連接埠。驗證部分通常是 method:password 的 URL-safe Base64 編碼;也可能附帶查詢參數,以及 # 後方的備註。另有將較長內容整段編碼的舊式格式,手動拆解時不可假設所有連結的排列方式都相同。

ss://
解碼後的驗證內容:aes-128-gcm:example-password
伺服器:example.com
連接埠:8388
備註:Example
欄位用途與核對方式
method例如 aes-128-gcm。必須與伺服器設定一致,不能只因名稱相似就替換。
password用於驗證,區分大小寫。複製時請保留原值,不要加入空格或換行。
host:port伺服器位址與監聽連接埠。8388 僅為範例,不能取代實際使用的連接埠。
plugin 等查詢參數可能影響傳輸方式;請核對匯入結果與目前的支援情況,不要直接刪除。
# 後方的備註主要用來辨識清單項目。修改備註不會改變伺服器位址。

Base64 是編碼方式,不是保密措施。能還原驗證欄位的人仍可讀取密碼。若無法匯入,先檢查完整連結是否遭通訊軟體換行、截斷或加上標點,再檢查編碼與格式;不要先更改加密方法。

vmess://:先還原 JSON,再檢查傳輸欄位

常見的 VMess 分享格式會在 vmess:// 後放置經 Base64 編碼的 JSON。以下展示的是編碼前的結構,並非可直接貼上匯入的完整分享連結。不同來源的欄位可能有所差異,請勿將這組範例套用到自己的設定。

{
  "v": "2",
  "ps": "Example",
  "add": "example.com",
  "port": "443",
  "id": "00000000-0000-0000-0000-000000000000",
  "aid": "0",
  "net": "ws",
  "type": "none",
  "host": "example.com",
  "path": "/example",
  "tls": "tls"
}

匯入後,請開啟該項目的編輯頁,逐項比對伺服器、連接埠、UUID、傳輸方式與 TLS 選項是否符合原始設定。若文字可以解碼,但 App 無法辨識,可能是分享格式不同或欄位不相容;請從自己的原始設定來源重新匯出合適格式,不要只改連結前綴。

vless:// 與 trojan://:格式相似,驗證方式不同

這兩種格式常見的組成是「驗證資訊、伺服器、連接埠、查詢參數、備註」,但驗證欄位的意義不同。VLESS 通常使用 UUID;Trojan 通常使用密碼。以下兩筆僅用來說明欄位位置,網域與驗證值均為虛構內容。

vless://[email protected]:443?encryption=none&security=tls&type=ws&host=example.com&path=%2Fexample&sni=example.com#Example

trojan://[email protected]:443?security=tls&type=tcp&sni=example.com#Example
欄位位置VLESSTrojan
@ 前方通常是 UUID通常是經過必要 URL 編碼的密碼
security=tls本例使用 TLS;不代表所有設定都採用相同的安全設定本例使用 TLS,必須與伺服器端設定一致
type本例使用 ws,並須一併檢查 Host 與 path本例使用 tcp,不能直接套用 ws 參數
sni用於 TLS 交握的伺服器名稱用於 TLS 交握的伺服器名稱

encryption=none 是本例 VLESS 的協定參數,不代表整段傳輸沒有 TLS。path=%2Fexample 解碼後為 /example。密碼、路徑或備註中若出現 @、#、& 等字元,必須依所在位置正確編碼,否則可能被解析成分隔符號。

匯入與更新:依連結類型使用對應入口

先確認剪貼簿中只有完整連結,沒有前後說明文字。Shadowrocket 的 Home 用來查看連線項目;Config 用於管理設定檔;Settings 用於調整 App 設定。單筆分享連結與 Subscribe 最後都可能在 Home 中建立可選項目,但後續維護方式不同。

兩種匯入流程:單筆參數與 Subscribe

已有單筆分享連結
  • 複製完整的 ss://、vmess://、vless:// 或 trojan:// 文字。
  • 返回 Home;若出現剪貼簿匯入提示,確認內容後匯入,並依系統提示允許讀取。
  • 若沒有出現提示,可使用對應的匯入入口,或從 Home → + 選擇協定,依原始設定逐項填寫。
  • 儲存後進入編輯頁,核對位址、連接埠、驗證資訊與傳輸參數。
已有訂閱 URL
  • 前往 Home → + → Type,選擇 Subscribe。
  • 在 URL 欄位貼上自己的完整訂閱網址,填入方便辨識的備註後儲存。
  • 完成首次取得後,展開對應群組檢查項目;需要同步時,對該訂閱執行更新。
  • 更新後再次確認所選項目,特別留意來源已刪除或取代的項目。

單筆連結會儲存參數;Subscribe 則保留遠端清單來源。修改訂閱中的項目之前,請先記錄原始值;下次更新時,本機修改可能會被覆蓋。

訂閱網址的格式可能類似以下文字。這只是示意,無法用來取得設定。實際網址中的查詢參數或路徑常包含存取憑據,務必完整保留;也不要張貼到公開頁面或提供給不明的轉換網站。

https://example.com/sub?token=xxxx
  1. 請求逾時:檢查目前網路能否連到訂閱網址,並確認問題是網域解析失敗、連線失敗,還是 HTTP 回應錯誤。
  2. 收到 401 或 403:核對 URL 中的憑據是否完整,並向自己的原始設定來源確認存取權限;反覆匯入相同網址通常無法解決權限問題。
  3. 請求成功但沒有項目:確認回傳的是訂閱內容,而非登入頁、錯誤頁或一般網頁。狀態碼成功不代表內容格式正確。

匯入後的驗證:分開檢查參數與路由問題

項目出現在 Home 後,仍須測試連線。先檢查參數,再確認 Global Routing 的模式,最後查看目標請求的連線結果。訂閱負責更新連線項目,不代表一定也提供完整的分流規則;規則是否生效仍取決於目前的 Config 與路由選擇。

Global Routing → Config

建議

在已備妥規則的前提下,依目前的 Config 決定策略。DOMAIN-SUFFIX、GEOIP、IP-CIDR 等規則及 FINAL 後援規則會共同影響結果,未符合規則的請求不一定會直連。

適用情境:匯入完成後,確認日常規則與連線項目能否搭配運作。

Global Routing → Proxy

讓由 App 處理的連線採用代理模式,暫時降低規則分流對排查的干擾。仍須確認已選取正確且可用的連線項目。

適用情境:短時間區分代理連線故障與 Config 規則比對問題。

Global Routing → Direct

用於直連比對。此模式下網頁能開啟,不代表剛匯入的代理參數有效,也不能據此判定訂閱中的項目可用。

適用情境:檢查目前網路的直連狀況,作為故障比對基準。

結論:使用同一項目比對路由

保持網路與所選項目不變,暫時從 Config 切換到 Proxy,再測試同一個目標。若只有 Config 失敗,優先檢查符合的規則與目標策略;若兩者都失敗,先重新核對驗證資訊、傳輸參數與伺服器連線狀況。測試結束後,請恢復原本的路由模式。

Global Routing 也包含 Scene,不應誤認為第四種分享連結或協定。Settings → On Demand 用來管理依條件觸發的連線,也不會將分享連結轉換成訂閱。排查時請記錄這些設定原本的狀態,避免同時變更多個項目而無法判斷原因。

常見問題:成功辨識後還要檢查什麼

把 vmess:// 改成 vless://,就能直接使用嗎?

不行。兩者的分享格式、驗證方式與傳輸要求都不同。請從自己的原始設定來源取得對應協定的完整設定,再匯入並核對欄位;只替換前綴可能導致解析失敗,或產生不符合伺服器要求的項目。

訂閱重新整理後,手動修改的連接埠又恢復原狀?

訂閱更新可能會以遠端資料重建或覆寫項目。先核對訂閱回傳的原始連接埠;若確實要保留本機調整,可另建獨立項目並加上清楚備註,同時留意它不會隨原訂閱自動同步。

匯入成功,為什麼還是連不上?

前往 Home 開啟該項目的編輯頁,依序核對伺服器、連接埠、密碼或 UUID、TLS、SNI 與傳輸參數,再依上一節進行 Global Routing 比對。連結可以解析,只代表欄位格式可讀,無法確認遠端服務狀態。

掃描 QR code 匯入和複製連結,取得的內容有差別嗎?

QR code 只是承載文字的方式。掃描結果若是單筆協定連結,就依單筆設定處理;若是訂閱 URL,就依 Subscribe 處理。確認內容類型後再儲存,不能因為使用掃描入口就認定內容會自動更新。

可以把完整連結截圖傳給別人協助排查嗎?

請先遮蔽密碼、UUID、訂閱 token 與可識別帳戶的資訊,只保留協定、錯誤提示及必要的傳輸欄位。Base64 文字也可能包含驗證資訊;若已公開洩漏,請從自己的原始設定來源撤銷或更換相關憑據。

需要進一步整理項目時,可閱讀訂閱與節點管理說明;首次設定與系統授權步驟請參閱使用教學。本文僅說明如何使用使用者已有的設定,不涉及連線服務的提供或選擇。

App Store 正版核對