iOS 本身没有 Trojan 设置,所以要在 iPhone 上使用 Trojan,你需要一个支持该协议的客户端 App。本文介绍如何把 Trojan 服务器添加到免费的 iPhone 和 iPad 代理客户端 Potatso 中:通过 trojan:// 链接、二维码、订阅或手动添加,包括 WebSocket、gRPC 和 REALITY 服务器。
还不了解这个协议?建议先读 Trojan 协议是什么?
准备工作
- 一台运行 iOS 17 或更高版本的 iPhone 或 iPad。
- 一台 Trojan 服务器。服务商通常会给你以下其中一种:
- 一条
trojan://链接,例如trojan://secret@trojan.example.com:443?sni=trojan.example.com#Tokyo; - 这条链接的二维码;
- 一个包含多台服务器的订阅 URL;
- 或原始参数:地址、端口(通常是 443)、密码,以及传输方式或 REALITY 设置(如果有)。
- 一条
先确认传输方式。 如果服务商提到了 WebSocket(
ws)、gRPC、路径、服务名称或 REALITY,你还需要这些参数。用链接或订阅导入时,这些参数会一并带上。
第 1 步:安装 Potatso
从 App Store 下载 Potatso 并打开。轻点开始使用,为配置输入一个名称(例如“个人”),然后轻点继续。配置中包含你的服务器、规则和 DNS 设置。

第 2 步:添加 Trojan 服务器
添加你的服务器这一步提供四种添加方式。按服务商给你的内容选择对应的一种。
通过 trojan:// 链接或订阅 URL 添加
- 复制
trojan://链接或订阅 URL。 - 在 Potatso 中轻点粘贴链接,再轻点粘贴。
Potatso 会从链接中读取传输方式、服务器名称、REALITY 密钥等设置。它还能导入 trojan-go:// 链接、Clash 和 Mihomo 订阅,以及 Xray、V2Ray 和 Surge 配置。如果某台服务器用到了 Potatso 不支持的功能,导入时会说明原因,而不是添加一台连不上的服务器。
通过二维码添加
轻点扫描二维码,把摄像头对准二维码。如果二维码是相册里的截图,请轻点扫描器角落的照片按钮,然后选取那张图片。
手动添加
- 轻点手动输入服务器。
- 输入名称,并将协议选为 Trojan。
- 填写地址和端口。
- 按服务商提供的内容原样输入密码。
- 按下文说明设置传输、TLS 设置和 UDP。
- 轻点存储(对勾)。
Trojan 始终启用 TLS,所以不需要另外打开。
传输方式:WebSocket 和 gRPC
纯 Trojan 服务器的传输保持 TCP 即可。否则请选择服务器使用的那一种:
| 传输方式 | 需要填写的字段 | 示例 |
|---|---|---|
| WebSocket | 主机、路径 | cdn.example.com、/ws |
| gRPC | 服务名称 | TrojanGun |
| HTTP/2 | 主机、路径 | cdn.example.com、/h2 |
| HTTPUpgrade | 主机、路径 | cdn.example.com、/up |
路径和服务名称必须与服务器完全一致,包括大小写。像 /ws?ed=2048 这样的 WebSocket 路径还会开启 early data,连接时可以省去一次往返。
服务器名称(SNI)和 TLS 设置
轻点 TLS 设置查看 TLS 选项:
- 服务器名称:在 TLS 握手中发送的名称,也叫 SNI。留空则使用地址。当证书的域名与地址不同时需要设置,例如连接的是 IP 地址或经过 CDN 时。
- 客户端指纹:让握手看起来像浏览器发出的,例如
chrome或safari。服务商列出了指纹时填写。 - ALPN:除非服务商给出了值,否则留空。
- 证书固定(SHA-256):用于使用自签名证书的服务器。固定后只接受这一张证书。
- 跳过证书验证:接受任何证书。请避免使用,因为你和服务器之间的任何人都可能因此读取你的流量。请改用证书固定。
REALITY
REALITY 服务器借用另一个网站的 TLS 握手。请填写:
- Reality 公钥和 Reality Short ID,按服务商提供的内容填写。
- 服务器名称(在 TLS 设置中):服务器借用的网站,例如
www.example.com。 - Reality 指纹(如果服务商列出了)。不填时,Potatso 使用
chrome。
REALITY 可以不使用传输方式(TCP),也可以搭配 gRPC。
UDP 转发默认关闭
语音和视频通话、很多游戏以及 QUIC 都使用 UDP。和 Clash 一样,Trojan 服务器的 UDP 转发默认关闭。如果你的服务器转发 UDP,请把它打开。Xray、sing-box 和 trojan-go 服务器都会转发 UDP。Clash 订阅中用 udp: true 来开启它。
服务器添加好后,这一步会变为已添加服务器。轻点继续。
第 3 步:选择路由
在你选择的同时,Potatso 会测试每台服务器的延迟:
- 全局:所有流量都经过你选择的服务器。只有一台服务器时,这是最简单的选择。
- 规则:由配置中的规则决定哪些流量走代理、哪些直连。导入内容带有规则时才会提供,大多数 Clash 订阅都带有规则。
选好服务器后,轻点底部的按钮,例如使用 Tokyo。

第 4 步:允许 VPN 并连接
Potatso 通过设备上的 VPN 配置把流量发往代理,iOS 会请你批准一次。
- 轻点添加 VPN 配置,iOS 询问时轻点允许。
- 在首页,打开状态卡片上的开关。
状态会先变为正在连接…,再变为已连接,状态栏中会出现 VPN 图标。打开一个网站,确认能正常加载。

连不上怎么办
Trojan 的问题通常是某一项设置与服务器不一致造成的:
- 密码错误。 Trojan 服务器不会报告密码错误,而是像普通网站一样回应,所以连接就是一直不通。请先检查密码。
- 证书错误。 证书必须对服务器名称有效;服务器名称留空时,则须对地址有效。如果通过 IP 地址连接,请把服务器名称设为证书的域名。对于自签名证书,请设置证书固定(SHA-256)。
- 传输参数不对。 WebSocket 服务器的路径或主机不一致,或 gRPC 服务器的服务名称不一致,都会被拒绝连接。请与服务商提供的设置核对,或重新导入链接。
- REALITY 不匹配。 公钥、短 ID 和服务器名称都必须与服务器一致。不支持 REALITY 搭配 WebSocket 或 HTTP/2。
- 服务器不受支持。 Potatso 不支持 XHTTP、mKCP 和 QUIC 传输,不支持 trojan-go 的 Shadowsocks 加密,也不支持套在 Trojan 外层的 ShadowTLS、Restls 和 JLS。
- 只有通话或游戏不通。 开启 UDP 转发,并确认服务器转发 UDP。
支持的传输方式、TLS 选项和链接参数的完整列表见 Trojan 参考。遇到其他问题,可以使用 Potatso 中设置 > 故障排除下的引导式检查,详见故障排除。
下一步
- 订阅里有很多服务器?把它们分组,让 Potatso 自动选最快的:见 iPhone 如何导入 Clash 订阅。
- 服务商也提供 VLESS?可以对照 iPhone 怎么用 VLESS + REALITY 和代理协议对比比较两者。
常见问题
- iPhone 不装 App 能用 Trojan 吗?
- 不能。iOS 只内置了按无线局域网设置的 HTTP 代理,以及 IKEv2 等 VPN 类型。要使用 Trojan 服务器,你需要 Potatso 这样支持 Trojan 协议的客户端 App。
- 为什么我的 Trojan 服务器 UDP 不通?
- 和 Clash 一样,Trojan 服务器的 UDP 转发默认关闭。如果你的服务器转发 UDP(Xray、sing-box 和 trojan-go 服务器都会),请在 Potatso 中打开该服务器的设置,开启 UDP 转发。
- 服务器名称(SNI)该填什么?
- 通常不用填:Potatso 会使用服务器地址。只有当证书的域名与地址不同时才需要设置服务器名称,例如通过 IP 地址连接时;使用 REALITY 时,它是服务器借用的那个网站。
- Potatso 支持 trojan-go 链接吗?
- 支持。Potatso 可以导入不带传输方式或使用 WebSocket 的 trojan-go:// 链接。需要 trojan-go 的 Shadowsocks 加密的链接无法导入,也不支持 trojan-go 自己的多路复用。
- Potatso 免费吗?
- 免费。Potatso 可在 App Store 免费下载,支持 iOS 17 或更高版本的 iPhone 和 iPad。部分可选的 Pro 功能(如使用多个配置)需要订阅。