OFFICIAL MANUAL / REFERENCE

Shadowrocket Complete User Guide

Follow the chapters on purchase, permissions, import, routing, testing, traffic, settings, and maintenance. This guide focuses on iPhone and iPad and assumes you already have your own subscription or server details.

For your first setup, follow Getting Started to establish one connection. This page explains the steps, how settings relate to each other, and what to check when something goes wrong. Use it to review your setup or troubleshoot an issue. Interface labels follow the English names shown on your device.

  • Verify the App Store listing
  • The three Global Routing modes
  • Config rule examples
  • Test by layer and roll back

01 / APP STORE

Purchase: verify the App Store listing before buying

Where to get Shadowrocket and what to verify

Get Shadowrocket only from the App Store. Before proceeding, open the App Store link in the download guide, confirm the app name, then check the developer, official icon, and app ID. Don’t rely on the first search result, similar wording in an app name, or matching screenshot colors alone. Search results can vary by storefront, account, and device; the product page is where to verify purchase details.

The developer should be Shadow Launch Technology Limited, and the app ID is 932747118. The App Store product page URL ends with id932747118. The icon should match the official icon used on this site. Check all three: the same name does not guarantee the same developer, and a similar icon does not confirm the app ID. Once verified, review the price, compatibility, and purchase button on the product page.

If you still can’t verify the listing after opening it from search, leave the page and follow the genuine app verification steps to check each detail again. The icon is for identification only; it does not replace checking the developer and app ID. For a more detailed checklist, see How to verify the developer, icon, and app ID. Don’t use a similar name as a reason to proceed with payment.

Price, device compatibility, and what the purchase includes

Shadowrocket is a paid, closed-source commercial app sold as a one-time purchase. The US storefront price is about $2.99; other storefronts display local currency. The amount charged at checkout on the App Store is the final price. A one-time purchase describes how you buy the app; it does not buy network service or guarantee that every imported server will remain available. Access depends on the services you already have.

This guide focuses on iPhone and iPad. Check the same App Store product page for compatibility with Mac, Apple TV, and Apple Vision. System requirements, compatible devices, and whether the purchase is universal are as listed on the App Store page. Don’t assume that a purchase available on one device will work on another, and don’t infer system requirements from this guide. Check the compatibility section on your target device before buying.

Before paying, distinguish your Apple Account sign-in from server authentication in the app. Your Apple Account is used for purchases and restoring them; server credentials connect to a server you already have. They are separate credentials. Buying the app does not create a server address, password, or subscription link. If you don’t have those details yet, you can read the permissions and interface chapters first, but purchasing alone does not make you ready to connect.

Search issues, restoring purchases, and checks after purchase

If Shadowrocket doesn’t appear in App Store search, check the spelling, then review your Apple Account’s storefront region, age-rating restrictions on the device, and payment status. Don’t keep trying similar-looking apps. For a step-by-step checklist, see Troubleshooting missing App Store search results. Check storefront availability and account status separately; changing app settings won’t fix an App Store search issue.

If you’ve already bought the app, first confirm which Apple Account you used, then look for Shadowrocket in your App Store purchases. If you see a price instead of an option to redownload, pause and check the account and purchase history before paying again. Restoring the app on a new device and restoring its configuration are separate steps: after redownloading the app, restore a configuration you saved or import your existing subscription. See Restore a previous purchase.

After installation, open Shadowrocket once to confirm it launches, then review the main areas: Home, Config, Data, and Settings. You can leave it disconnected for now; there’s no need to fill in every field just to complete setup. Note the source details and required parameters for your existing subscription, then follow this guide step by step. App updates are managed through the App Store. Keep a working configuration before updating, then repeat the same tests afterward to avoid changing multiple variables at once.

02 / FIRST LAUNCH

First launch: VPN configuration and connection permissions

Learn the interface before granting system permissions

First, prepare valid server details; handle system authorization when you start a connection. Home shows servers and connection controls, Config manages routing rules, Data shows traffic information, and Settings contains common options. Layouts can vary between devices, so look for the item name rather than relying on fixed button coordinates. An empty list on first launch just means no connection details have been added yet.

The first time you connect, the system may ask to add a VPN configuration and confirm the action using your device passcode or another authentication method provided by the device. This grants the app permission to create a network extension. It is not a subscription sign-in page or a service provider password field. Confirm that the prompt follows an action you initiated and names the correct app before allowing it. If you cancel, return to the app and check your server details first.

Allowing a VPN configuration grants connection permission on the device; it does not verify that the remote server is available. Even after authorization succeeds, a connection can fail because of an incorrect address, port, credentials, or network conditions. Don’t treat authorization as proof that the connection works. You still need to test the server connection, domain resolution, and access to your destination separately; none of these checks replaces the others.

Troubleshoot permission issues

If you denied authorization earlier, check whether the system prompt appears again the next time you connect. If there’s no prompt and the connection fails immediately, look for the VPN configuration in system settings and check whether the Shadowrocket entry exists or the device is subject to management restrictions. The names and locations of system settings vary by version; follow what your device shows instead of repeatedly changing unrelated permissions to find a fixed path.

If the device already has another VPN configuration, first check which one is actually connected. Disconnect any other active VPN before testing Shadowrocket, so a system-level connection switch isn’t mistaken for a server failure. Keeping a configuration is not the same as keeping it connected; you usually don’t need to delete every configuration to test. Disconnect, verify the state, then make one deliberate connection attempt to pinpoint the failing step.

Camera access is only needed for scanning. If you use Scan QR Code to import existing server details, allow camera access when prompted. If you don’t scan a code, use another import method available in the app. Denying camera access does not deny VPN access or mean the server can’t connect. For each permission, first check whether the current feature needs it, then decide whether to grant it.

Keep a rollback point before your first connection

Before configuring anything, confirm that the device can already reach the ordinary pages you plan to test. Note whether you’re on Wi-Fi or cellular, and whether the network requires a web sign-in. Complete any required sign-in before connecting Shadowrocket. Otherwise, the app may have permission but still fail because the underlying network hasn’t granted access. Repeatedly changing protocol settings would only hide the real cause.

For your first setup, connect manually and leave complex On Demand conditions disabled for now. Complete the flow—select a server, choose a routing mode, connect, visit your destination, then disconnect—and note what happens at each step. Automatic connection depends on a working base configuration. Enabling it too early can cause the app to reconnect after you disconnect, making it hard to tell whether the cause is permissions, a triggering condition, or an unstable server connection.

If you need screenshots to review your settings or troubleshoot, hide passwords, subscription links, authentication identifiers, and QR codes that could reveal recoverable sensitive information. System prompts and app settings can help document the steps, but review every detail before sharing. To troubleshoot permissions, it’s enough to say whether the prompt appeared, whether you allowed it, and where the failure occurred. Never share service credentials. Once you’ve prepared, move on to importing server details.

03 / ADD SERVER & SUBSCRIBE

Import: servers, subscriptions, and Config are different

Choose an import method based on the details you have

First identify whether your details are server parameters, a server share link, a QR code, or a subscription link, then choose the matching import option. An individual server represents one connection; a subscription retrieves and updates a server list; Config manages rules and related settings. They can be used together, but they are not interchangeable. Importing a server list successfully does not mean you’ve selected suitable routing rules.

To add a server manually with Add Server, choose the correct protocol, then enter the server address, port, and authentication fields required by that protocol. Enter the hostname or address itself—not a full webpage URL with a path. Use the port provided by the service; don’t substitute a familiar-looking port. Choosing the wrong protocol can’t be fixed just by changing the port.

For a QR code, use Scan QR Code. For a share link, use the corresponding import option in the app. After importing, open the entry and check its type, address, and port. Don’t assume it’s correct just because a name appears in the list. Names help identify entries and may be chosen by the provider; they don’t prove the region, protocol settings, or actual exit location.

Check protocol parameters together

For Shadowsocks, check the encryption method and password. For VMess and VLESS, check the relevant authentication ID and transport settings. For Trojan, verify the password and related TLS parameters. With Hysteria2, also check authentication, TLS, and transport requirements against the server instructions. Don’t apply one protocol’s field requirements to another, and don’t assume a field needs to be filled in just because the app displays it.

DetailWhat to checkCommon mistake
Basic connectionProtocol, server address, and portUsing the management page address as the server address.
AuthenticationPassword or protocol-specific authentication IDIncluding spaces or line breaks, or omitting characters when copying.
TLSThe name and certificate verification requirements specified by the serverAssuming the connection address and certificate name must match.
Transport settingsType, path, and any additional fields required by the serverChecking only the password and overlooking transport settings.

The name used for certificate verification in TLS may differ from the connection address. Enter it as specified by your existing service. If you see a certificate error, first check the device time, the name, and the server certificate status; disabling verification is not a routine fix. Check transport paths, request headers, and other values exactly as provided, paying attention to capitalization and slashes. If details are missing, confirm them rather than trying random combinations.

Update Subscribe and review imported entries

If you have a subscription link, paste the complete link into an import screen that supports Subscribe and confirm the type matches the instructions you received. Subscription links may contain personal access credentials; don’t share or store them in shared notes. After saving, update the subscription and check whether a server list appears. If the update fails, distinguish between an unreachable link, an unexpected response, and expired details; each requires a different fix.

After a successful subscription update, check whether the number of entries changed significantly and whether your previously selected server is still there. An update may rebuild the list or rename entries, so your previous selection may no longer be valid. If entries are duplicated, compare their subscription source and server parameters before deleting them. Entries with the same name may come from different sources, while differently named entries may point to the same server.

After importing, choose one server and test it on its own before organizing the rest. Connectivity Test can help with an initial check, but a response does not prove that every protocol setting or real-world request is correct. See How to compare latency, region, and protocol type for help choosing a server. Keep the original details and a currently working entry as a reference before cleaning up the list.

Manage configuration files in Config and server subscriptions in their respective server lists. If the supplied details include both, import each separately and confirm how they’re linked. Updating a subscription does not update rules, and successfully importing a rules file is not a reason to delete server details. For the shortest setup path, return to Getting Started and follow the steps in order: import, select, connect, and test.

04 / GLOBAL ROUTING

Routing: understand Config, Proxy, and Direct

Choose one of three modes based on how requests should be handled

For everyday rule-based routing, use Config. To test the selected server as a whole, use Proxy. To compare with a direct local connection, use Direct. Global Routing is the app’s overall routing mode—not a service provider protocol or a system permission switch. Check the current mode before investigating why a request went through a server or connected directly. The server name alone doesn’t show which path was used.

ModeTypical useWhat to check
ConfigRoute traffic according to the rules in the selected configuration.Whether the correct configuration is selected, rule order, and final policy.
ProxyCompare results with all traffic using the selected proxy route.The selected server, authentication, and access to the actual destination.
DirectCompare results using a direct connection.Whether the local network can reach the destination.

In Config, rules are generally checked in order, and the first matching rule determines how a request is handled. Put specific exceptions before broader rules that could override them. FINAL is the fallback when no earlier rule matches. The example below illustrates matching behavior; it is not a complete configuration you can safely use to replace your existing settings. Before making changes, copy the current working file and preserve its server and policy definitions.

[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.0.2.0/24,REJECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY

Understand rule types, policies, and order separately

DOMAIN matches a complete domain, DOMAIN-SUFFIX matches a domain suffix, and DOMAIN-KEYWORD matches a keyword in a domain. A suffix rule suits a domain and its subdomains; keyword rules have a wider scope and can match unrelated domains containing the same text. Before adding a rule, define exactly what it should cover. Don’t use an overly broad rule in place of checking the target domains individually.

IP-CIDR and IP-CIDR6 match their respective address ranges. GEOIP uses the location associated with an address in the database. Domain requests may involve DNS resolution, and IP rules may also depend on how resolution works. In the example, no-resolve prevents the rule from triggering an additional lookup; it is not a general speed boost. Whether a rule matches depends on the actual request, not just the name shown on a webpage.

PROXY, DIRECT, and REJECT are handling policies, not the modes shown in Global Routing. If a Config rule matches DIRECT, that doesn’t switch the entire app to Direct. If it matches PROXY, check the policy reference and selected server in the current configuration. When a file uses a custom policy group name, the rule must reference an existing name with the exact same spelling.

Make the smallest change needed to check a rule

Before editing a configuration, make sure you’re changing the selected file, not a copy with the same name. After saving, follow the app’s prompt to reconnect or reload the configuration, then send a new test request. Existing long-lived connections and webpage or app caches may retain previous behavior, so don’t rely on a page that was already open. Make one clear new request and check its record to confirm which policy matched.

If a destination works in Proxy but not Config, first compare the matching rule, policy group reference, and DNS result; don’t rebuild the server immediately. If it works in Direct but not Proxy, check the server and protocol settings. These three modes help narrow down the cause; they are not interchangeable repair switches. When testing is complete, restore the mode you normally need so a temporary test setting doesn’t become permanent.

A rules file may also include DNS settings, policy groups, or remote rule references, so a single FINAL line doesn’t tell you how the whole file behaves. Start with a few clear rules to establish a testable baseline, then add exceptions gradually. After each addition, note the target, expected policy, and actual match. For further troubleshooting, bring these three details to Troubleshooting; they’re more useful than saying only that routing is wrong.

05 / CONNECTION CHECK

Connection: test the switch, server, and destination separately

A complete connection check has three layers

Turning on the connection is only the first step; also verify the selected server and the actual destination. First check the selected entry in Home and the Global Routing mode, then connect. After system authorization, confirm that the app stays connected. If the switch turns off immediately, check permissions and configuration errors first. If it stays on but access fails, investigate the server, resolution, and routing instead of treating everything as one problem.

Connectivity Test provides an initial indication of how an entry responds to a particular test; it doesn’t replace a real access test. Different test methods measure different parts of the connection, so interpret results in context. A quick response doesn’t guarantee fast downloads, and one timeout doesn’t prove that all access is failing. Test a destination you actually need, with a few runs under the same conditions, rather than ranking entries by one number and deleting the rest.

Keep the destination, network, and steps as consistent as possible during an access test. For example, send one new request to the destination over the current Wi-Fi and record the result, then change only the server and repeat. Don’t switch cellular networks, routing modes, and protocol settings all at once; even if the result improves, you won’t know why. Changing one variable at a time turns an apparent improvement into a result you can reproduce and verify.

Troubleshoot based on where the failure occurs

If no entries can be tested, first check the device’s basic connection and whether the subscription updated successfully. If only one entry fails, compare its address, port, authentication, and transport settings. If the server uses a domain name, check that it resolves correctly. If your provider changed the address or credentials, there’s no point testing the old entry; first confirm that your details are still valid.

For an authentication error, check the complete credentials and protocol type. For a TLS error, check the device time, certificate name, and server certificate requirements. For a connection timeout, check the address, port, and whether the current network supports the transport. Don’t blame every failure on the password or hide a name mismatch by weakening certificate verification. Save the exact error text rather than summarizing it from memory.

Hysteria2 uses QUIC-based transport, so how a network handles UDP can affect the result. If it fails on one network but works on another, check the network differences before assuming the import went wrong. See Hysteria2 and QUIC explained for protocol details and parameter considerations. Check protocol suitability in practice; a protocol name alone does not guarantee speed.

Connected, but access or speed is poor

If the app stays connected but only one destination fails, check whether the destination itself is having an issue, then compare results in Proxy and Config. A webpage usually requests content from several domains. If the page loads only partially, one resource domain may be using a different policy; that doesn’t necessarily mean the whole connection failed. Check the failed resource, matching rule, and error in the request record, then adjust the relevant rule. Don’t add a broad match based only on the page title.

For slow speeds, check server load or the remote path, protocol settings, Wi-Fi or cellular conditions, and the destination’s own response separately. A latency test measures waiting time, not sustained transfer speed; lower latency doesn’t prove faster downloads. Compare the same destination at roughly the same time. For a step-by-step approach, see Troubleshoot a slow connection after connecting.

After testing, restore the routing mode you want to use long term and remove temporary test conditions. If the issue remains, note the network type, protocol, Global Routing mode, failure stage, and results of your comparison tests. You don’t need to share the full subscription link. A useful issue report explains what you expected, what happened, and what changed the result; that makes it possible to follow the same diagnostic path.

06 / DATA

Data: distinguish traffic stats, request logs, and service usage

Check what a number measures before judging its size

Data traffic information helps you see how the client is handling traffic; it is not the final usage figure for a service you already have. Before interpreting a number, check its label, reporting period, and connection status to see whether it describes uploads, downloads, the current connection, or a cumulative record. Numbers with different scopes aren’t directly comparable. A discrepancy alone doesn’t prove the client or server is counting incorrectly.

Upload and download describe data direction from the device’s perspective. Opening a page can generate upload requests, and downloading content also involves protocol exchanges, so uploads don’t necessarily mean you sent a file. Traffic figures show data transfer, not whether every item displayed successfully. Retries, background refreshes, and failed requests may also use data; interpret the figures in context.

Local statistics may differ from server records because of reporting periods, protocol overhead, retry handling, or the server’s own calculation method. Some requests may connect directly according to the rules, so the server will show only the portion that passed through it. To compare usage, align the time period and connection scope, then check the documentation for your existing service. Don’t treat Data as a billing statement.

Use request details to troubleshoot rules and resolution

When checking request records, first find the action you just initiated and verify its time, destination, and policy. The device makes other background connections, so the top entry isn’t necessarily the webpage you’re troubleshooting. Stop unrelated activity and run one clear test to narrow down the records. For repeat tests, keep the destination the same so you don’t mistake different requests for changing results from the same one.

If a record shows a matching rule, read both the rule type and the final policy. A domain rule match only tells you which part of the matching process applied; also check whether its referenced policy is what you expect. A DIRECT record doesn’t mean the server failed, and a REJECT record isn’t necessarily a connection error; either may be exactly what the configuration specifies. Compare the result with your expectation before deciding it’s a problem.

Interpret domain and address records separately. A webpage may contact several domains, and a domain may resolve to different addresses. Results can also change when you switch networks. The location of one address doesn’t determine how the whole webpage should be routed. When troubleshooting DNS, consider the resolution result, matching policy, and destination access together. Don’t change a broad GEOIP or IP-CIDR rule based on a single address.

Unexpected traffic, clearing records, and privacy

If traffic keeps increasing while you’re not actively using the device, first check background sync, media playback, system updates, and other running network tasks. Then see whether they’re related to your test. Reduce background activity during a clearly defined short observation and compare results before and after connecting or switching routing modes. Don’t assume a rising figure means your subscription has a problem; background requests handled by the client also appear in its statistics.

If the app offers an option to clear statistics or records, first save any details and observations you need for troubleshooting. Clearing local displays usually does not clear server-side usage or change the connection state. It won’t restore service capacity. After resetting, run a short test under the same conditions to observe changes. Note the new starting point; don’t compare the new total directly with the old cumulative figure.

Request records may contain domains, server addresses, timestamps, and other sensitive details. Review them before exporting or taking screenshots. When sharing a problem, you can include the rule type, policy name, and failure stage while hiding personal credentials and unrelated browsing details. Even a partially shown subscription link may contain authentication information. Don’t assume trimming its beginning makes it safe; review everything that remains visible.

Use Data as evidence, not as a conclusion on its own. Recording the network environment, routing mode, matching policy, and result for one request is usually more useful than collecting many screenshots. If the records don’t match what you observed, first confirm they refer to the same request, then check caches and long-lived connections. Once you’ve gathered the evidence, adjust relevant Settings; don’t make sweeping changes based only on a change in the traffic figures.

07 / SETTINGS

Settings: adjust for your connection needs, not by enabling everything

Set up On Demand only after manual connections work

Adjust Settings one item at a time as needed; enabling every option is not a setup goal. First confirm that manual connections, routing, and access to your destination all work, then configure automation. The options available and their locations depend on what the app shows. If you can’t find an item, don’t substitute a similarly named option or copy every setting from another device.

On Demand triggers connection behavior based on configured conditions; it does not fix server authentication or protocol settings. Before enabling it, decide which network conditions should connect, which should not, and what should happen after a manual disconnect. Conditions should have clear boundaries. If they overlap, switching networks may produce unexpected behavior, so verify each trigger in practice.

To test On Demand, choose a network condition you can reproduce and observe three stages: entering the condition, leaving it, and entering it again. If the connection returns shortly after you disconnect manually, check whether the condition still applies before assuming the feature is malfunctioning. To temporarily stop automatic connections, check the On Demand state before using the connection switch, so automated behavior doesn’t interfere with troubleshooting.

Test DNS, IPv6, and transport settings together

For DNS settings, first establish which component performs resolution and whether the current Config already includes relevant settings. A domain resolution failure and a server authentication failure are different problems; changing DNS won’t fix a wrong password. Record the original value before adjusting it, then test with a new request. Existing connections and cached results can delay visible changes, so check both resolution and actual access.

For IPv6, consider together whether the local network provides IPv6 connectivity, what addresses DNS returns, and whether the rules cover the destination. Enabling or disabling an option isn’t a universal recommendation because reachability varies between networks. If a problem occurs only after switching networks, compare their addressing and resolution first, then decide whether to adjust anything. A reproducible test destination is more useful than searching for one switch that fixes everything.

Understand UDP-related options in the context of the protocol and server capabilities. Allowing an option doesn’t mean the current network can carry that traffic or that the server supports the feature. Transports such as Hysteria2 have their own underlying network requirements; check the protocol documentation when issues arise. Transport settings are not universal speed boosters. Don’t change DNS, the protocol, and routing all at once and judge the result from a single test.

Certificates, logs, and configuration precedence

Certificate features and the VPN configuration permission requested on first connection are different things. You don’t need to install an unfamiliar certificate just to complete a routine server import or rule-based setup. Before using an advanced certificate setting, understand which requests it affects, its trust scope, and how to undo it. If you don’t know the source or purpose of a configuration, stop before applying it; don’t weaken verification just to dismiss a warning.

Use logs or detailed records temporarily while troubleshooting. Before enabling them, check what they capture, reproduce the problem once, and save only the details you need. Keeping extensive logs indefinitely makes them harder to manage and retains more sensitive information. Logs don’t automatically explain the cause; consider the failure stage, server parameters, and matching policy instead of searching for one error word.

Some behavior may be affected by both Settings and the current Config. If a change has no effect, check whether the configuration file contains a related setting before toggling options repeatedly. Consult the in-app documentation for scope and precedence. If there’s no clear guidance, test the smallest change using a copy of your configuration. Don’t delete large sections from a working file just to guess which setting takes precedence.

After changing a setting, note why you changed it, the original value, the result, and whether you plan to keep it. If it doesn’t help, roll it back before checking the next layer so you don’t leave several uncertain variables in place. If you still need help, document the setting’s scope and steps to reproduce the issue, then visit Troubleshooting. A good setup isn’t one with the most options enabled; every change should have a clear purpose and a way back to a known-working state.

08 / MAINTENANCE

Maintenance: keep working configurations and manage updates and restores separately

The app, subscriptions, and rules have separate update paths

Handle App Store app updates, Subscribe list updates, and Config rule maintenance separately. An app update changes the client, a subscription update changes server details, and a rules update changes how requests are routed. They can happen at different times, so when something changes, first check which layer you updated most recently. A successful subscription refresh doesn’t mean the app was updated, and updating the app doesn’t validate expired details.

Before updating through the App Store, save your working configuration and make sure you can recover your subscription details. After updating, retest with the same server, routing mode, and destination. Don’t import new rules at the same time. If something changes, note the feature and failure stage before checking whether the cause is configuration compatibility, network conditions, or server status. You can check app update history in the store; there’s no need to keep your own version list.

After a subscription update, check for added or removed entries, name changes, and whether your current selection still works. Test at least one server you actively use; don’t rely only on a success message. If the list suddenly becomes empty, keep the existing details and check the link before repeatedly deleting and rebuilding. The validity and access period of an existing service depend on your service provider; app updates can’t extend or change them.

A backup is more than a saved file

Back up rule files, manually added server details, and subscription links separately. A Config file may not contain all server information, and a screenshot of the list can’t restore authentication fields. Before using an export or backup option in the app, check what it actually includes, then save the necessary details somewhere you control. Backup files may contain credentials; avoid public links, shared folders, or unchecked chat histories.

A backup is only useful if it can be restored. Without disturbing your working configuration, check the export contents and restore option to make sure the file opens, the rules are complete, and policy references still point to existing items. You don’t need to clear all your settings to test a backup. Keep the original and check a copy instead, so maintenance doesn’t turn into troubleshooting every connection again.

On a new device, restore Shadowrocket from the App Store first, then handle your server details and Config. Confirm purchase restoration and local data restoration separately; getting the app with the same account doesn’t guarantee that every setting will reappear automatically. For Family Sharing, use across devices, and compatibility, follow the details on the App Store page. After restoring, connect manually and verify it works before turning On Demand or other automatic behavior back on.

Remove obsolete entries and keep reusable notes

When organizing the server list, distinguish a temporary test failure from an entry you’ve confirmed you no longer use. A single timeout caused by network fluctuations isn’t enough reason to delete an entry. Update the subscription, verify the parameters, and retest under the same conditions. Keep source details for manually added entries, and remember that the next update may rebuild subscription entries. Organizing by source is safer than bulk cleanup based only on names or one test result.

Keep a clearly identified working baseline for configuration files. Before making a change, copy the file and state the goal—for example, adding an exception for one domain or adjusting the final policy. Once you’ve verified the result, decide whether to replace the original. Don’t let several copies with the same name all serve as the current configuration; it’s easy to select the wrong one next time. Reserved addresses and domains in examples are illustrative, not usable server details.

Keep troubleshooting notes concise but include the network type, source of the selected server, Global Routing mode, approximate time of the issue, failure stage, and most recent change. Don’t include full passwords or subscription credentials. If the issue recurs, compare it with the last known-working state, check recent changes, then review permissions, server settings, resolution, rules, and destination access in order. This is more effective than rebuilding everything from scratch each time.

For routine use, follow this order: confirm the underlying network works, verify your details are still valid, select the correct configuration, check that routing matches your expectations, and confirm access to the destination. Get this sequence working before adding automatic connections and complex rules. To repeat the shortest setup, read Getting Started. For purchase and restore checks, see the App Store guide. For a specific symptom, continue with the relevant steps in Troubleshooting.