44netclientRU

4net · iOS

4net on your iPhone

Add your subscription, choose a server and connect from one screen. Provider information and appearance stay with their subscription.

1. Add a subscription

  1. Copy the complete subscription link from your provider. Open 4net and tap + → Link. The link field can read the clipboard when you choose this import method; approve the iOS paste prompt if shown.
  2. Keep the Automatic format unless your provider gives specific instructions. You can also scan a subscription QR code.
  3. Check the preview, provider message and server count, then confirm Add. Importing a subscription does not start VPN automatically.

Supported alternatives within an imported node, such as TCP, XHTTP and gRPC, remain behind one server row. They are not expanded into separate subscription folders. Supported Hysteria 2 profiles can also be imported. Compatibility depends on the actual configuration; an Xray JSON import does not imply support for every Xray-core DNS, routing, balancing or Mux option.

Use the refresh arrow on the subscription card to receive changed servers, notices and provider appearance. If import reports skipped profiles, keep the error text and ask the provider about the unsupported parameters.

2. Connect and switch servers

One connection control

The large circular power control stays fixed while subscriptions and servers scroll. Tap it to connect or disconnect. Connection duration appears inside the circle.

Choose from the list

When disconnected, tapping a server only selects it. While VPN is connected, tapping another server disconnects the current session and connects to the selected one. Calls and downloads can be interrupted during this switch.

On the first connection, allow iOS to add the VPN configuration. A Connected status confirms that the tunnel started; also open an HTTPS page to check that the selected server provides Internet access.

3. Measure latency

Tap the speedometer beside the server list. Checks are available with VPN on or off. Choose the method in Settings → Latency check; a subscription with enabled provider ping preferences can use its own method.

MethodWhat it checks
TCPThe server port’s TCP connection time. This is the default method, but it does not verify authentication, the full VPN protocol or Internet access.
HTTPSAn HTTPS test request through the selected profile. Use this for Hysteria 2 and other UDP-based transports, including XHTTP over HTTP/3, where a TCP port check is not applicable.

A dash can mean that the chosen method does not apply to this profile. A timeout or DNS error describes the measurement, not the entire subscription. If a server connects, check an ordinary site as well; the test destination or a particular address can be unavailable.

4. Provider information and device limits

  • The provider announcement is shown on its subscription card. Expand it to read the full message.
  • When supplied by the provider, Account appears above Provider support. These links open only when tapped.
  • Expiry and renewal notices depend on subscription metadata. A renewal button appears when the provider has supplied the relevant notice and link.

4net sends x-hwid on the first subscription request and on updates. It is a stored app identifier scoped to the provider’s origin, not the iPhone serial number. No manual header setup is required in the app. If the provider reports a device limit, contact its support or manage devices in its account page; reinstalling the app is not a way to clear the provider’s limit.

5. Automatic provider appearance

In Settings → Appearance, Automatic applies the only branded subscription even when other, unbranded subscriptions are present. If several subscriptions have their own appearance, the selected server determines the brand; when no matching appearance is available, 4net is shown. An explicit choice of 4net or a provider keeps priority.

Light and dark themes follow the system by default and can be selected manually. Each subscription keeps its own logo and support links. Appearance changes do not choose another VPN server or change its routing. The iOS Home Screen app icon and app name remain 4net.

Logo and palette instructions →

6. Show servers for your current network

If a provider marks a server name with only WiFi or only Mobile, the list can show it only on the matching network. A filter above the subscriptions offers By network or Show all servers. An ordinary name without a marker stays visible on both networks.

Selected, active and switching-target servers remain visible. If iOS cannot identify the access network, all servers are shown. Filtering only changes the list: it does not delete profiles or switch VPN automatically.

One HTTPS link for Telegram and websites

Android · iPhone · iPad
https://vps-tech.ru/open#url=<percent-encoded HTTPS subscription URL>
JavaScript
const subscriptionUrl = "https://provider.example/sub/DEMO_ONLY?plan=demo&device=any";
const openIn4net = "https://vps-tech.ru/open#url=" + encodeURIComponent(subscriptionUrl);

Use this shared 4net page for iPhone, iPad and Android. It detects the platform in the browser, including iPad desktop mode, or offers a manual choice. Tap Open in 4net to open the app, then Continue and Add to confirm import. Neither the page nor the deep link starts VPN automatically.

For a Telegram button, use the complete HTTPS link. If the in-app browser prevents handoff, open the same link in Safari and tap Open in 4net again. The subscription stays in the fragment after #; the page does not fetch, log or send it to another service. Telegram button example →

Direct iOS deep link

iOS format
fournet://add-proxy?link=<percent-encoded subscription URL>
Fictional example
fournet://add-proxy?link=https%3A%2F%2Fprovider.example%2Fsub%2FDEMO_ONLY%3Fplan%3Ddemo%26device%3Dios
JavaScript
const subscriptionUrl = "https://provider.example/sub/DEMO_ONLY?plan=demo&device=ios";
const deepLink = "fournet://add-proxy?link=" + encodeURIComponent(subscriptionUrl);

Encode the complete inner URL once. The iOS parser removes the outer encoding once and preserves the original path, query parameters and plus signs. Do not add an extra /sub/ path or re-encode the provider’s key. The parser also accepts a raw inner URL, but encoding the whole parameter is the recommended integration format.

DEMO_ONLY is not a working key. Keep real subscription URLs out of public pages and logs. The Android format fournet://import?url= is not this iOS contract.

The app can receive a deep link on launch or while already open, then downloads and adds a valid subscription automatically. If some servers are unsupported, the supported servers are added. An error is shown when import fails; repeated links do not create duplicates. A deep link does not connect VPN by itself. The shared HTTPS page uses this iOS format after the user taps its button; it does not depend on automatically opening the app as a Universal Link.

If something goes wrong

First check ordinary Internet access, the complete subscription link and its expiry. For an import error, send support the error text, app version and whether you are on Wi-Fi or mobile data. Do not send the subscription key in a public message. When reporting a latency problem, mention separately whether the server connects and opens websites.

4net guides for Android and iOS. Updated October 29, 2026.

Need help? →