This guide answers the practical question, “How do I use Shadowrocket?” It covers how to import nodes or a subscription after installing the app on an iPhone or iPad, choose a proxy mode, and check that your IP, DNS, and browser environment are consistent—helping you avoid issues such as connecting successfully but being unable to open webpages, your IP not changing, or DNS leaks.
1. Before you use Shadowrocket
Shadowrocket is a popular proxy client for iOS and supports various node formats, including Shadowsocks, VMess, VLESS, and Trojan. You’ll need a working node or subscription link. This site also provides free nodes for testing, but their stability may vary, so they’re best used for temporary testing and troubleshooting.
- Check your network connection: turn off the proxy first and test whether Safari can access a regular website.
- Get your node details ready: these may be a QR code, a single node link, or a subscription URL.
- Grant system permissions: the first time you connect, you’ll be prompted to add a VPN configuration. Tap Allow and enter your device passcode.
2. Import nodes and connect
- Open Shadowrocket and tap “+” in the top-right corner.
- For a subscription link, select “Subscribe/订阅,” paste the URL, save it, and tap Update.
- For a single node link, copy it and return to Shadowrocket. The app will usually detect and import it automatically. You can also scan a QR code to import it.
- Select a node from the list, return to the home screen, and turn on the connection switch at the top.
- The first time you use the app, follow the prompts to add a VPN configuration. When the VPN icon appears in the status bar, the client is routing your traffic.
We recommend choosing a recently updated node with low latency. If the connection fails, don’t repeatedly toggle the switch. Try another node or update your subscription first.
3. Choosing a routing mode
Shadowrocket commonly offers Global, Config/Rule, and Direct modes. Most users should choose Rule mode: domestic websites connect directly, while overseas websites use the proxy, balancing speed and compatibility. If you just want to check whether your IP has changed, you can use Global mode briefly, then switch back to Rule mode when you’re done.
If you imported a rule configuration file, avoid deleting the default rules. If certain apps aren’t using the proxy, check the logs to see which rules match their domains, then decide whether to switch nodes or adjust the rules.
4. How IP, DNS, and your browser environment are related
Many people assume that connecting to Shadowrocket automatically makes them secure, but you should also check that your IP, DNS, and browser environment are consistent. After connecting, visit an IP-checking site to confirm that your exit IP shows the node’s region. Then check whether your DNS still shows your local provider. If your IP has changed but your DNS is still local, you may have a DNS leak. Try enabling DNS proxying in the client or switching to a trusted DNS provider.
Your browser environment can also affect the results. For example, browser cache, location permissions, language, time zone, and WebRTC can all reveal information about your original environment. If you’re signing in to an account or testing a webpage, consider disabling location permissions and clearing cookies if necessary. Make sure your browser language doesn’t obviously conflict with the node’s region.
5. Troubleshooting connection issues
- Subscription won’t update: Check that the subscription link is complete, then try again after switching networks.
- Connected, but webpages won’t load: Try another node, or switch from Global to Rule mode or from Rule to Global to test.
- IP hasn’t changed: Make sure the selected node is enabled and Direct mode isn’t turned on.
- A particular app won’t connect: Check the Shadowrocket logs to determine whether the rules aren’t matching or the node itself is unavailable.
In short, the basic Shadowrocket workflow is to import a node or subscription, select a node, turn on the VPN, confirm Rule mode is selected, and then check your IP and DNS. If something goes wrong, troubleshoot in this order: node, subscription, rules, DNS, and browser environment. This will usually help you identify the cause quickly.