本文速覽

Hysteria2 使用以 UDP 為基礎的 QUIC 傳輸,適合評估高延遲、偶有封包遺失但仍有可用頻寬的連線。本文適合已備妥服務商設定資料的使用者,依序說明傳輸機制、頻寬參數、Shadowrocket 欄位與排查順序,協助分辨協定特性、網路限制與規則設定問題。

一、Hysteria2 與 QUIC:速度來自哪些機制

Hysteria2 是一種代理協定,不是線路方案,也不是頻寬加速開關。Shadowrocket(小火箭)做為用戶端,會使用使用者已有的伺服器位址、認證資料與傳輸參數建立連線。連線效果仍受本地網路、電信業者路徑、伺服器負載及出口頻寬共同影響。

QUIC 在 UDP 之上實作加密、可靠傳輸、流量控制與壅塞控制。這裡的 UDP 不代表「所有內容都不會重傳」:Hysteria2 代理 TCP 連線時,可靠性由 QUIC stream 提供;代理 UDP datagram 時,則採用不同的傳輸語意,兩者不能混為一談。

UDP
外層傳輸使用 UDP,網路必須允許連線抵達伺服器對應的 UDP 連接埠
TLS 1.3
QUIC 整合加密握手機制,仍須驗證伺服器身分
443/UDP
可用的部署範例,並非固定連接埠;請以現有資料為準

傳統單一 TCP 連線會依序交付資料,遺失的資料尚未補齊時,後續資料也得等待。QUIC 將不同 stream 的交付分開,一個 stream 遺失封包,不一定會阻塞其他 stream 的依序交付。但同一個 stream 仍須等待缺漏資料,而且不同 stream 仍共用鏈路容量與壅塞狀態。因此,說「使用 QUIC 就完全沒有隊頭阻塞」並不精確。

QUIC 的握手設計也能減少部分建立連線的成本,但首次連線、工作階段恢復與實際網路路徑的條件各不相同。不能把理論上的握手優勢直接換算成固定的網頁加速比例,更不能把單次連線延遲當成持續下載速度。

二、壅塞控制與頻寬參數:不是填得越大就越快

封包遺失可能來自無線干擾,也可能是佇列壅塞。兩種原因在用戶端都可能呈現資料遺失,但適合的傳送方式不同。Hysteria2 的一項重要特性,是可採用以目標頻寬驅動的 Brutal 壅塞控制;協定也支援頻寬協商與其他壅塞控制方式,並非所有連線都固定採用同一種傳送方式。

在啟用相應頻寬設定的連線中,傳送端會依據目標速率與封包遺失情況調整傳送方式。對於有隨機封包遺失的鏈路,這可能比把每次封包遺失都視為壅塞訊號,更能充分利用可用頻寬;若鏈路已經壅塞,設定過高的目標反而會增加排隊、重傳及其他流量的延遲。

結論:先記錄閒置延遲,再調整頻寬

使用同一台現有伺服器測試持續傳輸,同時觀察網頁回應或互動延遲。若下載期間互動明顯變慢,先降低頻寬目標並重新測試,而不是繼續調高數值;每次只改一個參數,並保留原值以便還原。

三、適用情境:行動網路、高封包遺失與耗電取捨

行動網路的訊號波動、基地台負載變化與無線重傳,都會讓可用頻寬持續變動。在允許 UDP、存在隨機封包遺失且仍有剩餘容量的環境中,值得測試 Hysteria2;若 UDP 遭到封鎖、嚴格限速,或網路要求登入認證,協定本身無法繞過這些連線條件。

從 Wi-Fi 切換到行動網路時,QUIC 的連線識別碼與路徑驗證機制有助於處理位址變更,但能否維持工作階段,仍取決於實作方式、系統網路狀態及伺服器支援。實際使用時仍可能需要重新連線,不應把「支援 QUIC」解讀為所有應用程式工作階段都不會中斷。

耗電情況須依工作內容判斷。加密處理、使用者空間的傳輸處理、封包遺失後重傳,以及持續無線傳送,都可能增加處理器與無線模組的工作量;反過來說,若工作更快完成,也可能縮短裝置的活躍時間。因此,不能一概斷言 Hysteria2 一定更耗電或更省電。可在相同網路、相近螢幕亮度與相同檔案大小下,比較完成時間、機身溫度與系統電池用量記錄。

四、Shadowrocket 設定欄位與填寫依據

在 Shadowrocket 中,Home 用於選擇連線及查看連線狀態,Config 用於管理規則設定,Settings 用於管理 App 設定。手動填寫前,先確認現有資料確實適用於 Hysteria2;不要直接將舊版 Hysteria 設定視為相容設定。欄位是否顯示及分組方式會因平台介面而異,以下列出需要核對的參數意義。

欄位或參數核對內容常見誤區
Type選擇 Hysteria2,並確認與現有服務資料中的協定類型一致。只更換類型,卻沿用其他協定的認證欄位。
Server填入伺服器網域名稱或 IP 位址,不含網頁路徑。將整個訂閱 URL 填入伺服器位址欄。
Port填入伺服器實際監聽的 UDP 連接埠,例如資料明確指定的 443。看到 HTTPS 常用 443,就自行修改現有連接埠。
Password使用服務商提供的完整認證值,並保留大小寫及必要符號。誤將認證值的一部分當成備註而刪除。
SNI使用現有資料指定、且與伺服器憑證及部署相符的名稱。隨意填入一個網站網域,以為這樣就會自動改變線路。
Upload / Download依欄位單位及伺服器端要求設定,並區分上傳與下載方向。混用 Mbps 與 MB/s,或直接將數值設為無限大。
Obfs僅在伺服器端啟用並提供對應參數時設定;若使用 salamander,兩端的類型與金鑰必須一致。只在用戶端啟用混淆,卻沒有相符的伺服器端設定。

TLS 驗證用於確認連線伺服器的身分。若使用 IP 位址連線,但憑證是簽發給網域名稱,應先核對正確的 SNI 與憑證鏈,而不是把停用憑證驗證當成一般修復方式。認證失敗、憑證錯誤與 UDP 不通是不同問題;修改密碼無法解決連接埠遭封鎖的狀況。

五、匯入現有資料並完成首次驗證

優先使用自己已有且了解用途的設定資料。本指南不提供、不銷售也不推薦節點或訂閱。訂閱 URL 是更新設定的入口,不是伺服器位址;例如 https://example.com/sub?token=xxxx 只是格式範例,無法用來連線。連結中的認證資訊應視為憑證,請勿公開截圖或貼到公開討論區。

  1. 核對資料

    確認協定為 Hysteria2,並記下 Server、Port、認證值、SNI,以及是否啟用 Obfs。若資料未註明頻寬單位,請先向現有服務商確認。

  2. 新增連線

    手動新增時,從 Home → 點選右上角「+」進入 Add Server,在 Type 選擇 Hysteria2,再逐項填寫;若使用現有訂閱,請依其匯入說明選擇 Subscribe,不要把訂閱 URL 填入 Server。

  3. 選取並連線

    儲存後返回 Home,選取剛新增的項目並啟用連線。系統要求允許 VPN 設定時,請確認 App 名稱後再按確認,接著檢查是否成功建立連線。

  4. 確認路由

    在 Global Routing 檢查目前設定為 Config、Proxy、Direct 還是 Scene。首次排查時可暫時使用 Proxy 測試,再還原日常設定,避免實際請求走 Direct 卻被誤判為協定故障。

  5. 重新測試並還原

    分別檢查網頁開啟、持續傳輸與短時間互動。若要手動控制測試時段,請前往 Settings → On Demand 檢查觸發條件,避免自動連線影響觀察;測試後還原原有設定。

透過訂閱匯入的項目,更新後欄位可能會隨來源變更。手動修改前先記錄原值;更新後重新核對 SNI、連接埠與頻寬參數。不要只因清單中仍有同名項目,就認定設定內容沒有改變。

六、比較 Global Routing:區分協定與規則問題

協定決定「如何與伺服器傳輸」,路由模式則決定「由誰處理請求」。Hysteria2 已連線,不代表每個請求都會交由它處理。以下比較僅用來說明 Shadowrocket 本身的設定;日常使用哪種模式,仍取決於現有設定中的規則與策略是否正確。

Config

建議

依照目前設定中的規則與策略處理請求。符合 DIRECT 的請求會直接連線;符合代理策略的請求才會進入對應代理路徑,並非所有未符合規則的請求都預設直連。

適用:規則已確認無誤後的日常分流。

Proxy

讓由 App 接管的請求以代理模式處理,暫時排除設定規則的影響。系統流量接管範圍與必要的排除項目仍可能存在,不代表裝置的每個封包都必然經過同一台伺服器。

適用:短時間驗證所選 Hysteria2 連線能否承載請求。

Direct

以直連模式處理請求,不適合用來驗證代理伺服器的傳輸量。Direct 能開啟網頁,只能說明目前的直連路徑可以連到該目標。

適用:與代理路徑進行目標明確的連線測試對照。

Scene

依照已設定的情境條件決定路由方式。這不是另一種傳輸協定;判斷結果時,須一併確認目前網路與情境設定。

適用:已設定並驗證依網路環境切換行為的使用方式。

在 Config 中,DOMAIN-SUFFIX 比對網域後綴,IP-CIDR 比對 IP 網段,GEOIP 依 IP 地理資料庫比對,FINAL 則為未符合前述規則的請求指定最終策略。規則順序會影響符合結果;發現速度不如預期時,應先檢查實際套用的策略,再調整 Hysteria2 參數。

七、連線逾時、認證失敗與速度波動的排查順序

排查時先處理連線建立問題,再確認請求路由,最後才調整速度。同時修改連接埠、SNI、密碼與頻寬,會失去比較基準。以下列出可觀察的現象與檢查方向,僅作為診斷線索,並非虛構的實測結果,也不能只憑單一現象判定故障原因。

結論:保留一組可重複的測試條件

固定伺服器、目標檔案與 Global Routing,每輪只修改一個欄位,並記錄連線結果、完成時間與互動表現。能穩定重現的改善,才適合作為保留設定的依據;單次速度峰值不代表所有網路環境都會更快。

取得 Shadowrocket 並查看設定教學

iPhone / iPad 版在 App Store 一次性付費 $2.99;Mac(Apple 晶片 / Intel)/ Windows / Android / Linux 版免費。iPhone / iPad 系統需求以 App Store 頁面標示為準,開發者為 Shadow Launch Technology Limited。前往全平台下載頁,依裝置取得用戶端,再依教學匯入已有資料。

買斷用戶端 ≠ 線路方案。Shadowrocket 是閉源商業 App,用戶端取得費用與現有服務商的線路費用分開計算。