要在 iPhone 上使用 SOCKS5 代理,你需要一個代理用戶端 App:iOS 完全沒有 SOCKS5 設定。它的「設定」App 只提供 HTTP 代理,而且只對你設定的那個 Wi-Fi 網路有效。本文說明如何透過免費的代理用戶端 Potatso,讓 SOCKS5 代理或 HTTP 代理在 Wi-Fi 和行動數據下都對整台 iPhone 或 iPad 生效。
內容涵蓋住宅和機房代理服務商使用的 host:port:user:pass 格式,以及 UDP 會受到什麼影響。不確定該用哪種代理?請閱讀 SOCKS5 和 HTTP 代理差在哪。
iPhone 不裝 App 能用 SOCKS5 代理嗎?
不行。以下是 iOS 本身在設定 → Wi-Fi → ⓘ → 設定代理伺服器中提供的功能:
| iOS「設定」 | 代理用戶端 App | |
|---|---|---|
| HTTP 代理 | 是 | 是 |
| HTTPS 代理(以 TLS 連往代理) | 否 | 是 |
| SOCKS5 | 否 | 是 |
| 行動數據 | 否 | 是 |
| 所有 Wi-Fi 網路 | 否,需逐一設定 | 是 |
| UDP | 否 | 使用 SOCKS5 時 |
iOS 的設定也是依網路套用的,所以一切換到行動數據或另一個 Wi-Fi,就會失效。Potatso 這類用戶端 App 會加入一組 VPN 設定,擷取你所有的流量並送往代理,不論你在哪個網路上。
事前準備
- 一台 iOS 17 或以上版本的 iPhone 或 iPad。
- 你的代理資料。服務商通常以下列其中一種形式提供:
- 一行文字,例如
proxy.example.com:1080:alice:s3cret; - 一個連結,例如
socks5://alice:s3cret@proxy.example.com:1080;或 - 分開的欄位:主機、連接埠、使用者名稱和密碼。
- 一行文字,例如
- 知道該連接埠是 SOCKS5 還是 HTTP。許多服務商兩者使用不同的連接埠,請在後台確認。
步驟 1:安裝 Potatso
從 App Store 下載 Potatso 並打開。點一下開始使用,為設定檔輸入名稱(例如「住宅代理」),再點一下繼續。

步驟 2:加入代理
從 host:port:user:pass 格式加入
住宅和機房代理服務商通常每個代理給你一行文字,由冒號分成四段:
proxy.example.com:1080:alice:s3cret
| 欄位 | 值 | 在 Potatso 中填入 |
|---|---|---|
| Host | proxy.example.com |
位址 |
| Port | 1080 |
連接埠 |
| User | alice |
使用者名稱 |
| Pass | s3cret |
密碼 |
Potatso 無法直接讀取這種四段式格式。你可以照下方說明手動輸入,或把它改寫成連結後貼上:
socks5://alice:s3cret@proxy.example.com:1080#Residential
在連結中,密碼裡的特殊字元要做百分比編碼:p:ss 寫成 p%3Ass,@ 寫成 %40。有些服務商會把國家或固定工作階段(sticky session)等選項放在使用者名稱裡,例如 alice-country-us。請完整複製使用者名稱,連字號也不能漏。
IP 白名單。 有些服務商不使用密碼,只接受來自你登記之 IP 位址的連線。你的 iPhone 在 Wi-Fi 和行動數據之間切換時 IP 位址會改變,所以如果服務商提供使用者名稱和密碼驗證,請改用這種方式。
手動輸入
- 點一下手動輸入伺服器。
- 輸入名稱,並將協定選為 SOCKS5。若是 HTTP 代理,請選擇 HTTP。
- 填入位址與連接埠。
- 開啟驗證,然後輸入使用者名稱和密碼。不需要登入的代理請保持關閉。
- 只有在服務商說明代理使用 TLS(SOCKS5 over TLS 或 HTTPS 代理)時,才開啟 TLS。使用自簽憑證時,可以在 TLS 設定中設定憑證釘選(SHA-256)。
- 若是 SOCKS5,服務商有轉送 UDP 時請保持 UDP 轉送開啟,沒有則關閉。請見 UDP 轉送。
- 點一下儲存(打勾圖示)。
從連結或 QR 碼匯入
如果你有連結,請複製後點一下貼上連結,再點一下貼上。Potatso 能讀取 socks5://、socks5h://、socks:// 和 socks5+tls:// 連結,以及 http:// 和 https:// 代理連結。若是 QR 碼,請點一下掃描 QR 碼。含有 SOCKS5 或 HTTP 代理的 Clash、Surge 和 Xray 設定也能匯入。
代理加入後,點一下繼續。
在 iPhone 上讓 HTTP 代理對整台裝置生效
步驟完全相同,只要把協定選為 HTTP:Potatso 就會在任何網路上讓所有 App 經由 HTTP 代理,而不只是單一 Wi-Fi 網路。若是 HTTPS 代理,請選擇 HTTP 並開啟 TLS。
請記得 HTTP 代理只承載 TCP。網站和大多數 App 都能正常使用,但 UDP 流量無法經由它傳送。請使用代理的 CONNECT 連接埠,而不是只轉發一般網頁的連接埠。
步驟 3:選擇路由
只有一個代理時,請選擇全域讓所有流量經由它,然後點一下底部的按鈕,例如使用 Residential。如果你匯入的設定附帶規則,也可以改選規則。

步驟 4:允許 VPN 並連線
- 點一下加入 VPN 設定,iOS 詢問時點一下允許。
- 在首頁打開狀態卡片上的開關。
狀態會變成連線中…,然後是已連線。若要確認是否生效,請在 Safari 中打開「查詢我的 IP」之類的網站:它應該顯示代理的 IP 位址,而不是你自己的。
UDP 轉送:通話和遊戲會受到什麼影響
語音和視訊通話、許多遊戲和 QUIC 都使用 UDP。並不是每種代理都能轉送它:
| 代理 | 規則模式下的 UDP | 全域模式下的 UDP |
|---|---|---|
| SOCKS5,UDP 轉送開啟 | 經由代理 | 經由代理 |
| SOCKS5,UDP 轉送關閉 | 由下一條符合的規則決定,否則直接連線 | 無法使用 |
| HTTP 或 HTTPS | 由下一條符合的規則決定,否則直接連線 | 無法使用 |
有兩點要注意:
- 直接送出的 UDP 會使用你的真實 IP 位址,而不是代理的。如果你使用代理是為了隱藏 IP,請使用有轉送 UDP 的 SOCKS5 代理。
- 使用 SOCKS5 over TLS 時,只有 TCP 會加密。UDP 是在 TLS 之外傳送到伺服器的。
UDP 無法使用時,瀏覽器會改用 TCP,所以網站仍能載入,但通話和遊戲可能無法正常運作。
連不上怎麼辦
- 使用者名稱或密碼錯誤。 如果代理需要登入而驗證是關閉的,Potatso 就不會連線。請檢查使用者名稱,包括服務商加在裡面的任何選項。
- SOCKS5 和 HTTP 連接埠弄混了。 把 SOCKS5 伺服器設在 HTTP 連接埠上(或反過來),伺服器都不會回應。請確認每個連接埠對應的協定。
- IP 白名單。 向服務商登記你目前的 IP 位址,或改用密碼驗證。
- 透過 HTTP 代理只有部分網站能開。 有些代理只允許
CONNECT到 443 連接埠。請詢問你的服務商。 - 使用 TLS 時出現憑證錯誤。 請釘選代理的憑證,或僅在測試時開啟略過憑證驗證。
- 不支援的選項。 Potatso 不支援 SOCKS4、GSSAPI 驗證和 Digest 驗證。
- 某個 App 無法使用。 有些 App 會封鎖機房和代理的 IP 位址。請見 App 或網站無法使用。
所有設定都列在 SOCKS5 參考文件和 HTTP 與 HTTPS 參考文件中。其他問題請見疑難排解。
下一步
- 需要加密,或更難被辨識的流量?請在代理協定比較中,將 SOCKS5 與 Shadowsocks 等協定比較。
- 有包含很多代理的訂閱?請見 iPhone 如何匯入 Clash 訂閱。
常見問題
- iPhone 原生支援 SOCKS5 代理嗎?
- 不支援。iOS 的「設定」App 只能設定 HTTP 代理,而且一次只對一個 Wi-Fi 網路有效。要使用 SOCKS5 代理,你需要 Potatso 這類用戶端 App,由它把流量送往代理。
- iPhone 用行動數據時可以使用代理嗎?
- 用 iOS 的「設定」不行,因為它只為 Wi-Fi 網路提供代理選項。Potatso 這類代理用戶端 App 使用 VPN 設定,所以代理在 Wi-Fi 和行動數據下都能運作。
- 在 iPhone 上怎麼輸入 host:port:user:pass?
- 以冒號把這一行拆開:第一段是位址,接著依序是連接埠、使用者名稱和密碼。把它們填進 Potatso 的伺服器表單,或改寫成 socks5://user:pass@host:port 這樣的連結再貼上。
- SOCKS5 代理會加密我的流量嗎?
- 不會。一般的 SOCKS5 會以未加密的方式傳送你的密碼和造訪的網站,不過 HTTPS 網站仍然是端對端加密。如果服務商提供 SOCKS5 over TLS,請使用它來加密通往代理的 TCP 流量。
- Potatso 是免費的嗎?
- 是的。Potatso 可在 App Store 免費下載,適用於 iOS 17 或以上版本的 iPhone 與 iPad。部分選用的 Pro 功能(例如使用多個設定檔)需要訂閱。