已有 Trojan 連線資料時,先核對 Address、Port 和 Password,再依服務端提供的資料填寫 SNI 與其他 TLS 參數。本文依序說明手動設定、核對與排除問題;欄位名稱請以目前 App 內顯示為準。
Trojan 連線前要核對哪些資料
Trojan 透過 TLS 建立連線。在 Shadowrocket 新增伺服器時,Address 與 Port 決定連線目的地,Password 用來核對與服務端約定的驗證資訊;SNI 則是 TLS 交握時使用的伺服器名稱。四個欄位各有用途:即使 Address 和 Port 可連線,也不代表 Password 或憑證名稱填寫正確。
先從自己已有的服務資料中找出完整參數。不要只憑協定名稱猜測 Port,也不要把訂閱連結的網址當成伺服器 Address:訂閱連結用來取得設定,伺服器 Address 則指向實際連線目標。若資料只提供匯入連結,沒有逐項列出參數,請先依原始資料匯入,再到 App 內查看建立的項目。
在 Add Server 逐項填寫
手動設定適用於已有明確伺服器欄位資料的情況。在 Shadowrocket 的 Home 點選右上角「+」進入 Add Server,將 Type 設為 Trojan,再依自己的資料填寫。不同 App 的介面可能會調整欄位順序;若欄位收合,請展開 TLS 相關設定後再核對,不要自行猜測或補填未提供的參數。
確認資料
準備自己的 Trojan 伺服器位址、Port、Password,以及資料中列出的 SNI 和其他 TLS 參數。先分清伺服器資料與訂閱連結。
選擇 Type
在 Home →「+」→ Add Server 中,將 Type 設為 Trojan。資料提到 TLS,不代表要把 Type 改成其他協定。
填寫連線目標
將伺服器主機名稱或 IP 填入 Address,再將資料提供的數字填入 Port。例如資料明確標示 443 才填 443;不能單憑協定名稱推斷 Port。
核對驗證資訊
將服務端提供的值完整填入 Password,留意大小寫,以及複製時是否多帶空格。若資料有列出 SNI,再將該名稱填入相應的 TLS 欄位。
儲存並測試
儲存項目後返回 Home,選取剛新增的伺服器並測試連線;若失敗,請依序將 Address、Port、Password、SNI 與原始資料逐字核對。
範例網域 example.com 僅用來辨識欄位格式,並非可連線的伺服器。實際填寫時請使用自己資料中的原始值;尤其不要將包含 https://、路徑或查詢參數的網頁網址,貼到只要求主機名稱的 Address 或 SNI 欄位。
Address、Port、Password 常見填寫錯誤
Address 是網路連線目標,可以是資料指定的網域,也可以是資料指定的 IP;它與 SNI 不同。網域應依資料保留完整層級,例如 edge.example.com 與 example.com 是不同名稱。若資料指定 IP 作為 Address,並另外提供網域作為 SNI,請分別填入對應欄位,不要任選一個值重複填寫。
Port 是數字連接埠。443 常用於 TLS,但服務端也可能使用其他 Port。訂閱服務網站的 Port、管理面板 Port 或範例中的 443,都不能直接取代服務端實際設定。核對時請連同 Address 一起確認:同一網域的不同 Port 可能對應不同服務。
| 欄位 | 應填內容 | 常見混淆 |
|---|---|---|
| Address | 伺服器資料提供的主機名稱或 IP | 誤填訂閱連結或含路徑的網頁網址 |
| Port | 與該 Address 配套的 Port 數字 | 看到 Trojan 就自行填成 443 |
| Password | 該伺服器項目對應的完整驗證值 | 複製時漏掉字元,或多帶前後空格 |
| SNI | 資料指定的 TLS 伺服器名稱 | 誤認為 Password,或一律照抄 Address |
Password 必須與服務端約定的值一致,大小寫、符號和長度都要保留。複製後若連線失敗,可先檢查開頭或結尾是否多了換行或空格,再確認是否誤將帳戶登入密碼當成 Trojan 的 Password。請勿在公開截圖或求助內容中顯示完整 Password。
判斷順序:先確認連線目標
若 Address 或 Port 與目前伺服器不符,即使修改 SNI 和 Password,也無法修正連線目標錯誤。請先確認這兩項來自同一份資料,再檢查 TLS 和驗證欄位。
SNI 與 TLS 選項的對應方式
SNI 是 TLS 交握時提供的伺服器名稱提示,通常是網域名稱,用來讓服務端辨識應使用的名稱與憑證;它不是瀏覽網頁時輸入的完整 URL。若資料明確列出 SNI,請照原值填寫。若沒有列出,不要根據宣傳名稱或訂閱網域猜測,應向自己的資料來源確認該連線所需設定。
憑證驗證會確認連線對端提供的憑證是否符合預期名稱等條件。若出現憑證名稱不符或驗證失敗,請先檢查 SNI、裝置時間及資料指定的 TLS 設定,並確認服務端憑證狀態。直接略過憑證驗證會失去原有的身分檢查,不應當作一般排錯步驟。
- Address 是網域:先確認資料是否另有指定 SNI;若有,請依指定值填寫,不要假設兩者一定相同。
- Address 是 IP:若資料另列 SNI 網域,請將 IP 留在 Address,網域填入 SNI;不要為了讓名稱相同而更改連線目標。
- 資料包含其他 TLS 參數:只有在有相應欄位且資料明確提供時才填寫,例如 ALPN;不要將這些值填入 Password。
- 資料要求特殊傳輸設定:請逐項核對該設定的原始說明。選對協定 Type,不代表其他參數也已自動符合需求。
排錯時一次只修改一個項目,儲存後重新測試,並記錄修改前後的狀況。若同時更改 Address、SNI 和 TLS 選項,即使之後連線成功,也很難確認原本是哪個欄位填錯。
儲存後無法使用?依狀況檢查
連線測試與實際流量路由是兩回事。先在 Home 選取剛儲存的 Trojan 項目,確認測試是否能連上伺服器;再檢查連線開關及 Global Routing。若 Global Routing 設為 Direct,流量會依直連方式處理,不能只因伺服器項目已儲存,就判定網頁請求正由它承載。使用 Config 或 Scene 時,也要依目前的設定或場景確認實際流向。
填了 443 還是連不上?
回到原始資料核對 Port。443 只是常見範例;也請檢查 Address 是否多了協定前綴、斜線或空格。
出現 TLS 或憑證錯誤?
逐字核對 SNI 是否與資料指定的網域相符,檢查裝置時間,並確認資料列出的 TLS 參數。若仍然失敗,請確認服務端憑證狀態。
測試成功,網頁卻沒有走這條連線?
先確認 Home 目前選取的是這台伺服器,再查看 Global Routing 是否設為 Direct;若使用 Config 或 Scene,也要檢查相應規則與場景設定。
訂閱中已有同名項目,還需要手動新增嗎?
先查看從訂閱匯入的項目是否已有完整參數。手動新增會建立獨立項目;之後更新訂閱時,請確認目前測試的是訂閱項目還是手動新增的項目。
若已有訂閱,且更新後才出現連線異常,請先確認目前選取的伺服器項目是否變更,再比較更新前後可見的欄位。訂閱網址如 https://example.com/sub?token=xxxx 僅為格式範例,不應填入 Trojan 的 Address。請分別核對訂閱內容與手動新增的項目,避免將匯入問題誤判為 TLS 問題。
核對完成後,建議保留哪些紀錄
保留一份不含 Password 的欄位核對紀錄即可:記下 Type 為 Trojan、Address 與 Port 的對應關係、SNI 是否由資料明確指定,以及測試時的 Global Routing 設定。需要向資料提供方回報時,描述「連線目標無法連線」、「TLS 名稱不符」或「測試通過但路由為 Direct」等具體狀況,比只說「不能用」更容易找出問題。
最後重新開啟已儲存的項目,逐一確認 Address、Port、Password 和 SNI 是否仍與自己的資料一致。若服務端後續調整 Port、驗證值或憑證名稱,請依更新後的資料重新填寫;舊項目仍顯示在 Home,不代表欄位與目前的服務端設定一致。