Skip to content
← Field notes
GuidesJuly 28, 2026· 11 min read

How to use Shadowrocket with Trump Proxies on iPhone

The exact Shadowrocket SOCKS5 setup for a Trump Proxies mobile line, including global routing, remote DNS, UDP and STUN leak controls, connection testing, and the settings that should stay off.

Trump Proxies · Network operations

USNEW YORK40.71°N · 74.00°WATVIENNA48.21°N · 16.37°EDEBERLIN52.52°N · 13.40°ETRUMP PROXIES // CARRIER REGIONSREAL SIMS · MATCHED GEO · DNS IN-COUNTRY

Shadowrocket is the strongest mainstream iPhone client for a proxy you already own. It accepts raw host, port, username and password details, creates an iOS Network Extension tunnel, and can route the whole phone through one SOCKS5 node. It does not include proxy servers: the app is the client and your Trump Proxies line is the connection.

Install the genuine Shadowrocket by Shadow Launch Technology Limited. There are similarly named apps in some stores, but this guide follows the paid iPhone/iPad utility with bundle ID id932747118. Its App Store description identifies it as a rule-based client for HTTP, HTTPS, TCP and DNS traffic.

Have these four values ready

  • Address — the proxy hostname from your customer portal, without https:// or socks5://.
  • Port — the exact numeric port attached to that line.
  • User — the proxy username, preserving capitalization.
  • Password — the proxy password, not your Apple ID or Trump Proxies portal password.

The ideal Shadowrocket settings

Recommended settings for a standard Trump Proxies SOCKS5 endpoint.
Shadowrocket fieldSet it toWhy
TypeSocks5The general TCP proxy mode; it is the best fit for whole-phone app traffic.
Address / PortPortal host and portEnter them in separate fields with no protocol prefix.
User / PasswordProxy credentialsThe node is authenticated; anonymous mode will fail.
PluginnonePlugins are for other server protocols and will break a plain SOCKS5 line.
TCP Fast OpenOffIt needs end-to-end support and can behave badly through middleboxes; normal TCP is more predictable.
PaddingOffA plain SOCKS5 line does not need Shadowrocket protocol padding.
UDP RelayOffThe standard endpoint does not support SOCKS5 UDP ASSOCIATE.
Proxy PassNone / blankProxy chaining adds another hop and another failure point.
RemarksTP – country – accountA clear label prevents the wrong identity from using the wrong line.
Global RoutingProxyEvery captured connection uses the selected node instead of a ruleset silently sending some traffic direct.
HTTPS DecryptionOffIt is unnecessary for proxying and would install a local interception certificate.

Add the SOCKS5 node

  1. 01Open Shadowrocket and tap Add Server or the + button.
  2. 02Tap Type and select Socks5. Do not choose Shadowsocks: despite the similar name, it is a different encrypted protocol and a standard SOCKS5 username/password will not work in it.
  3. 03Paste the portal hostname into Address and enter the supplied numeric Port.
  4. 04Paste the proxy User and Password.
  5. 05Leave Plugin at none, TCP Fast Open off, Padding off and Proxy Pass empty.
  6. 06Switch UDP Relay off. If the switch is already grey, leave it that way.
  7. 07Add a specific Remarks label and tap Save.
  8. 08Back on Home, tap the node so its selection indicator is active.

Set routing and UDP to fail closed

A correct node can still leak if Shadowrocket's global rules send some traffic direct. On the Home screen, set Global Routing to Proxy for the first clean setup. Config obeys a ruleset and is useful later, but any DIRECT rule becomes an intentional path around the mobile line.

  1. 01Open Settings → UDP and leave Enable Forwarding off.
  2. 02Turn Disable STUN on. STUN is the WebRTC mechanism commonly used to discover a public address over UDP.
  3. 03If your version shows an unsupported-UDP behaviour or fallback, choose REJECT, never DIRECT. An unsupported packet should fail, not leave through your real IP.
  4. 04Keep the node-level UDP Relay off as well. The global and node switches control different parts of the path; both should agree.

The maintained Shadowrocket manual documents Proxy as the all-traffic global route, exposes the separate global and node UDP forwarding switches, and supports rejecting UDP when a policy cannot carry it. That is the right shape for a standard Trump Proxies TCP line: carry TCP, block unsupported UDP and let QUIC-capable apps fall back to HTTP/2 over TCP.

Keep DNS on the proxy path

With Global Routing: Proxy, proxy-class domains are resolved through the selected proxy. For the first setup, leave DNS overrides at their defaults and do not add your home router, mobile carrier or a direct-only resolver. If you already maintain a custom Shadowrocket config, use its DNS-over-PROXY form so the resolver request itself follows the selected node.

Connect and grant iOS permission

  1. 01Return to Home, confirm the intended node is selected and Global Routing says Proxy.
  2. 02Switch the main connection toggle on.
  3. 03The first time, iOS asks whether Shadowrocket may add VPN configurations. Tap Allow, then approve with Face ID, Touch ID or the device passcode.
  4. 04Wait for the iOS VPN indicator and Shadowrocket's connected state. That proves the local tunnel started, not that the remote node is correct—run the checks below.

iOS allows one active personal VPN/Network Extension tunnel. Temporarily disable iCloud Private Relay for the Safari test, and disconnect commercial VPN clients or any other app using the VPN slot. Competing routes can replace Shadowrocket or make the result impossible to interpret.

Run a real connection test

  1. 01Before connecting, open api.ipify.org in Safari and note the current IP.
  2. 02Connect Shadowrocket, open a new Private tab and load the same URL. The public IP should change.
  3. 03Confirm the country matches the purchased line. The exact mobile IP may change after a rotation; the expected country and carrier path are what matter.
  4. 04Run Shadowrocket's connectivity test if you like, but treat it as a preliminary check. A green latency number does not prove the intended app is following the route.
  5. 05Open the actual approved platform and complete a normal page load. On a destination-restricted plan, unrelated sites may be rejected by design.
  6. 06Run a WebRTC/DNS leak test. Your normal public IP should not appear, and a failed STUN test is expected with UDP/STUN blocked.

Global Proxy or Config mode?

ModeUse it whenRisk
ProxyA dedicated phone or one identity should use the mobile line everywhereLowest configuration risk; all captured traffic uses the selected node.
ConfigYou deliberately maintain reviewed routing rulesAny DIRECT or bad rule can expose the real connection for that destination.
DirectYou are intentionally disconnected from the proxyTraffic uses the phone's normal connection.
SceneYou have tested separate Wi-Fi/cellular behavioursA scene can silently select another route when the network changes.

Start with Proxy. Only move to Config or Scene after you can explain every direct rule and have tested both Wi-Fi and cellular. For account work, simplicity is a security feature: one phone, one selected node, one clear route.

Troubleshooting by symptom

SymptomLikely causeFix
Node test times outWrong host/port/type or credentialsRe-paste all four values and confirm Type is Socks5, not Shadowsocks.
Connected, but real IP remainsGlobal Routing is Config/Direct or a different node is selectedSelect the intended node and set Global Routing to Proxy.
Browser works, one app stallsUDP/QUIC retry or cached direct connectionKeep UDP off, force-close the target app and reopen it after Shadowrocket connects.
WebRTC shows the real public IPSTUN is not blocked or UDP fallback is DirectEnable Disable STUN and set unsupported UDP to Reject.
DNS country looks wrongDirect/custom DNS overrideRemove the local override or use DNS-over-PROXY, then reconnect.
Google shows a CAPTCHAThe proxy can be live while Google challenges that exit IPDo not diagnose it as an outage; rotate between sessions, reconnect and retry privately.
Approved app works but generic test failsDestination-restricted lineTest the approved platform or the explicitly allowed IP-check endpoint.

Rotate between sessions, not inside one

Use your portal rotation control only after closing the target app or ending the account session. Wait for the line to return, reconnect Shadowrocket if necessary, verify the new public IP, then begin the next session. The Shadowrocket node remains unchanged: rotation happens behind the same host and port.

Should I choose Socks5 or Shadowsocks?

Choose Socks5. Shadowsocks is a different protocol with a cipher and server password; it is not another spelling of SOCKS5 and it will not accept a standard Trump Proxies profile.

Why are both UDP Relay and UDP Forwarding off?

They control different scopes in Shadowrocket. A standard Trump Proxies proxy is TCP-only, so the node should not request SOCKS5 UDP and the app should not forward unsupported UDP globally.

Should I enable HTTPS Decryption?

No. It is a debugging/interception feature that requires trusting a local certificate. It is not needed to route HTTPS through SOCKS5.

Can I use per-app routing in Shadowrocket?

Yes, through reviewed Config rules, but start in Global Routing: Proxy. Per-app/direct rules deliberately create traffic outside the mobile line, so test every target and leak path before using them for a live account.

Run it on real hardware

Ready to try real mobile proxies?

Assigned real-SIM mobile endpoints in the USA, Austria and Germany. 7-day trial, unlimited data, self-serve portal.