Contents
From your first connection to understanding your network

CellGlide User Guide

Connect your iPhone by USB so your computer or router can use its cellular connection. Learn what each module does and how to connect, configure and troubleshoot.

iPhone · iOS 17 or laterMac · Apple silicon · macOS 13 or laterWindows / OpenWrt · manual setup

CellGlide supports Chinese, English and Spanish and follows the app’s preferred language.

01Meet CellGlide

CellGlide runs a proxy service on your iPhone. Connected devices send requests to the phone, which forwards them over its cellular connection. The companion Mac client can discover a USB-connected iPhone and use TUN to route the computer’s regular TCP and UDP connections through the proxy.

Share cellular data

Use foreground sharing or VPN background sharing with a compatible client.

Track network usage

See live speeds, usage by session, day or month, and a protocol breakdown.

Configure DNS

Choose an encrypted DNS provider, set a custom endpoint, or turn off CellGlide DNS.

Check your connection

View network exit information, run diagnostics, and test cellular speed.

A USB cable alone does not configure the proxy. Ordinary Personal Hotspot / iPhone USB and CellGlide forwarding are different paths. Only requests forwarded by CellGlide appear in its proxy statistics. Billing depends on your carrier’s plan and actual usage records.

On first launch, tap Continue on the welcome screen. To view it again, open Settings → About → Product introduction.

02First connection: iPhone + Mac

This setup uses the companion Mac client’s native USB forwarding. You do not need to run iproxy or manually enter a SOCKS port.

  1. Prepare the phone. Check that cellular data works and CellGlide has cellular data permission. Connect the iPhone to your Mac with a data-capable USB cable. Unlock the phone and complete “Trust This Computer” when prompted.
  2. Start sharing on iPhone. Open CellGlide and tap Start sharing. Allow requested permissions. Keep the app in the foreground while waiting for the running status.
  3. Open the Mac client. Install the app in Applications, launch it, and click the CellGlide icon in the menu bar. It does not show a separate Dock icon.
  4. Select the phone. A single connected phone can be discovered automatically. With several phones, choose the intended one in USB device. Wait for USB proxy connected.
  5. Authorize the helper. Click Authorize background service and allow CellGlide’s background service when macOS asks. If System Settings opens, finish the approval and return to the client.
  6. Enable computer routing. Turn on Automatically enable TUN after connecting. Wait for TUN running. “USB proxy connected” only means the local proxy is ready; TUN routes the computer’s traffic.
  7. Check real traffic. Open a website on the Mac and watch the phone’s connection count, upload / download speeds and current total. For use with the phone locked, enable VPN background sharing as described below.

With native USB forwarding, a green “iPhone USB” indicator in macOS Network settings is not the test of a working CellGlide connection. Check the Mac client’s status and a real request.

To finish, click Disconnect and restore original network on the Mac, then Stop sharing on the phone. You can also exit cleanly using Quit CellGlide at the bottom of the Mac panel.

03Home screen and network information

Use the home screen to start or stop sharing, check the phone’s internet exit, and monitor proxy activity.

Home screen fields
ItemMeaning and use
Sharing statusShows whether the service is running. Use Start sharing / Stop sharing. Controls may be temporarily disabled during startup or a mode change.
Cellular interface availableThe system has a cellular path. Tap Check beside it to test internet access. Sharing does not need to be running for this check.
Carrier / network operatorThe organization associated with the exit IP; an AS number may appear if its name is unavailable. It may differ from your SIM brand or plan name.
Exit IPThe cellular address seen by the internet during the check. Select it to copy.
IP regionCountry flag and city based on the exit IP. This may differ from the phone’s physical location.
Cloudflare nodeThe Cloudflare location code (colo) reached by the check.
Current connectionsThe number of active proxy sessions, not the number of devices attached to the phone.
Upload / downloadLive proxy speeds in KB/s or MB/s. Upload is data sent by clients through the phone; download is data returned to clients.
Network totalUpload plus download for this run of the proxy. Starting sharing again resets it. Use Traffic statistics for the persistent cumulative total.

Tap Network for traffic statistics, Diagnostics for network checks, and Speed test for cellular speed testing. The gear in the upper-right corner opens Settings.

Exit information appears after a check; it is not continuous location tracking. The internet check verifies the phone’s cellular exit, not the Mac’s USB forwarding or TUN setup.

04Foreground and VPN background sharing

Settings → Sharing mode
Choose a mode for your connection method
ModeHow to use itSuitable for
Foreground sharingTurn off Enable VPN background sharing, start sharing, and keep CellGlide on screen. Locking the phone or switching apps may suspend the service.Initial testing and clients or routers connecting through the hotspot IP.
VPN background sharingTurn on Enable VPN background sharing, allow the VPN configuration on first use, and confirm sharing is running. You can then switch apps or lock the phone.The companion Mac client and other clients that support USB port forwarding.

The phone’s VPN configuration runs the background sharing service; it does not require an external VPN server. The computer still needs a client or proxy setup. Enabling the phone VPN does not automatically redirect all ordinary USB hotspot traffic into CellGlide.

Background mode listens on local USB-forwarded ports, not on hotspot / LAN IP addresses. For connections such as 172.20.10.1:9876, use foreground sharing. Background mode requires a client with the corresponding USB forwarding support.

Changing modes interrupts existing connections, which clients must reopen. Another VPN can conflict with background sharing; stop the other VPN and check again. System conditions can also interrupt background operation, so check the phone and client status if a connection drops.

05Traffic statistics and reset

Home → Network

Live speeds and chart

The top of the page shows upload and download speeds. The chart covers the last two minutes: red upload above zero, blue download below zero. Download is drawn below zero to separate the directions; it is not negative traffic. Press and hold the chart to inspect a point.

Cumulative usage and three periods

Cumulative usage is the upload and download stored in local history. It survives stopping sharing and restarting the app. Switch between Session / Day / Month:

  • Session: select the current or a previous sharing session. Choose a row in Sharing history; Current / latest returns to the newest session. Load older records at the bottom of the list.
  • Day: use the arrows or select a date in the history chart. Back to today returns to the current day.
  • Month: use the arrows or select a month in the chart. Back to this month returns to the current month.

One statistics session can continue across foreground / VPN mode changes and a DNS configuration restart. Manually stopping and starting sharing creates a new session. Dates use the device’s current time zone.

Protocol breakdown

The breakdown follows the selected session, day or month. Classification uses handshake and packet features:

Protocol categories
CategoryMeaning
HTTPSA TLS connection identified as negotiating an HTTP protocol.
TLSTLS encryption detected, but not confirmed as HTTPS.
QUICPackets matching QUIC features; not necessarily HTTP/3.
HTTPAn ordinary HTTP request was identified.
DNSForwarded traffic matching DNS features. This is not the query count in DNS settings.
Other TCP / UDPTCP or UDP traffic not identified as one of the above.

Clear all records

  1. Scroll to the bottom and tap Clear all records.
  2. Read the confirmation. Cancel keeps the records; the destructive confirmation clears them.
  3. Cumulative totals, all sessions, daily and monthly history, protocol totals and the live chart are reset. Active sharing briefly stops, then resumes with a new statistics session.

This reset cannot be undone. History is stored locally on the iPhone in SQLite. Counters measure TCP / UDP payload forwarded by CellGlide, excluding USB framing. They are not the phone’s total cellular usage or your carrier’s bill.

History is written about every five seconds, with a final write on a normal stop. An abnormal exit can lose the last few seconds. Direct speed tests and internet checks are excluded; the local proxy test in Diagnostics adds a small amount of forwarded traffic.

06DNS settings and checks

Settings → DNS → DNS settings and diagnostics

DNS turns domain names into network addresses. CellGlide DNS handles the phone proxy’s domain resolution and ordinary DNS requests from the current Mac TUN client.

Choose a provider or custom endpoint

  1. Turn on Use CellGlide DNS.
  2. Choose Cloudflare, Google or Custom DoH under Service. Cloudflare is the default.
  3. For custom DoH, enter a full HTTPS endpoint such as https://1.1.1.1/dns-query. Include a path. Credentials, query parameters and URL fragments are not supported.
  4. Optionally enable Cache results. The in-memory cache respects DNS lifetimes and is cleared when sharing stops.
  5. Tap Save and apply. Editing an option without saving does not change the active configuration.
  6. Tap Check current DNS to view resolution results and timing. This check uses the saved configuration.

Applying a change restarts active sharing and briefly interrupts connections. The Mac reconnects after detecting the new phone session. If it remains waiting, click Check again.

Turn off CellGlide DNS

Turn off Use CellGlide DNS and tap Save and apply. The phone proxy delegates domain resolution to the system, and the companion Mac client stops CellGlide DNS interception, using its existing resolver configuration. Use a current Mac client that supports this switch. DNS availability then depends on the current network’s resolvers.

Read query statistics

Queries counts queries received by the current sharing process. Cache hits counts replies from the phone cache. Valid cache entries counts entries that have not expired. Query failures counts failed queries. Mac-side cache hits do not create phone queries, so these are not counts of all app requests.

These settings apply to CellGlide and its temporary Mac DNS resolver. They do not modify saved Wi-Fi, iPhone USB or other network-service DNS settings. They do not replace the system DNS used by other iPhone apps, or forcibly override encrypted DNS used independently by an app.

When enabled, upstream queries use cellular data and do not automatically fall back to Wi-Fi or another provider. An upstream specified by hostname needs an initial system lookup. SOCKS-only clients may still resolve locally; curl’s socks5h option sends destination hostnames to the phone.

07Network diagnostics

Home → Diagnostics

Tap Start diagnostics and review each result. Stop diagnostics cancels the run. Leaving the page or moving the app to the background also cancels it.

What each diagnostic tests
ModuleScope
Cellular interface and gatewayChecks the cellular path and shows gateway information exposed by the system. It does not ICMP-ping the gateway. Missing information may result in a skipped item.
DNSTests the saved CellGlide encrypted DNS and Cloudflare / Google public UDP DNS. The CellGlide item is skipped when disabled. Public-server tests do not mean those servers are the system’s current DNS.
Internet connectivityRequests Cloudflare, Apple and Google HTTPS sites directly over cellular data.
ProxyMakes a request through the phone’s local SOCKS5 service. Skipped when sharing is off. It does not validate the Mac’s USB or TUN setup.
SystemShows memory used by the CellGlide app, excluding the VPN extension. This is not overall system memory pressure.

A green check means passed, a red cross means failed, and a gray minus means skipped. One failed DNS server or site does not prove the entire internet connection is down. HTTPS timing includes lookup, connection, TLS and response; it is not ICMP ping latency.

08Cellular speed test

Home → Speed test
  1. Keep the page in the foreground and tap Start speed test.
  2. Wait for latency checks, warmup, and upload / download sampling. Each direction is sampled for about 20 seconds, so the full test takes longer. Reaching the data cap may end sampling early.
  3. Review download, upload, HTTPS latency and Data used this test. Tap Stop speed test to end early. Leaving the page or switching to the background cancels the test.

The Cloudflare test measures the phone’s cellular exit directly, not the computer’s speed through the USB proxy. It samples a single connection and may report less than a multi-connection peak test.

Speed testing consumes cellular data. A complete run can transfer up to roughly 281 MB of payload, plus protocol overhead. Usage varies with speed and progress. This traffic is excluded from CellGlide’s proxy statistics.

Mbps means megabits per second; MB/s means megabytes per second (1 MB/s is about 8 Mbps). HTTPS latency is the median of three request timings, excluding connection establishment; it is not ICMP ping.

09Other iPhone settings

Home → top-right gear → Settings

Device connection settings

Phone USB / LAN IP is used to display proxy addresses and generate PAC. Editing it does not change the iPhone’s IP. The default is 172.20.10.1; hotspot-IP clients should use the actual USB network gateway.

Refresh local addresses reads available addresses again; Choose detected address fills the selected address. Foreground mode offers Copy SOCKS5 address. The Mac client’s native USB discovery does not depend on this field.

Runtime and background options

Runtime switches
OptionBehavior
Start sharing when app opensAllows foreground sharing to start on app launch. Initially off.
Minimum brightness in foregroundDims the display while foreground sharing is active, then restores brightness on stop or leaving the foreground. Initially off; not used in VPN mode.
Keep screen awakePrevents automatic lock during foreground sharing. Initially on; not used in VPN mode.
Resume on return to foregroundResumes foreground sharing suspended after background time expires. A manual Stop sharing is respected and does not resume automatically.

Other clients and About

Other clients lists the HTTP / HTTPS CONNECT port and PAC URL. Stop sharing when finished. Foreground proxies have no username or password and should only be used by trusted devices. About → Product introduction opens the welcome screen again.

10Mac menu bar client

Click the menu bar icon to open the panel. Closing the panel does not disconnect sharing.

Mac controls
ControlUse
USB deviceChoose the iPhone to use. The choice is remembered; the client does not silently switch to another phone.
Automatically connect when plugged inAutomatically discovers and checks the selected phone. Sharing still needs to start on the phone.
Launch at Mac loginStarts the menu bar client when you sign in.
Authorize background serviceAllows the helper to manage TUN. Authorization is needed before routing can start.
Automatically enable TUN after connectingStarts routing after the phone’s exit check passes. Another VPN taking over public routes may need to be disconnected first.
Local proxyShows socks5h://127.0.0.1:port. The client allocates the port dynamically; it may change on reconnection.
Check againRebuilds USB forwarding and checks the phone’s exit. Useful after reconnecting the phone or changing mode or DNS.
Disconnect and restore original networkStops TUN, removes the temporary CellGlide DNS resolver and releases forwarding resources.
Quit CellGlideCleans up the network and exits the menu bar app.

Status: Waiting for phone sharing means no usable service is ready. USB proxy connected means the local proxy is ready. TUN running means routing has started. If Network recovery failed appears, handle the background-service message and retry before reconnecting.

When a disconnect is detected, the client cleans up this session’s TUN and forwarding ports. Reconnecting the phone creates a fresh connection after the handshake and exit check. Detection and cleanup may take a short time.

After a normal disconnect or USB cleanup, the computer can use its original network again. The client is not permanent internet blocking: if Wi-Fi or another connection is available, apps may use it after cleanup.

11Windows, OpenWrt and manual proxies

The current companion automatic client is for Mac. Windows and OpenWrt can connect over an established iPhone USB hotspot network using SOCKS5-capable software or a router proxy plugin. This example uses foreground sharing with the hotspot IP.

  1. Enable Personal Hotspot on iPhone and connect it to the computer or router over USB. Check that the receiving device has a working USB network and an assigned address.
  2. Find the USB network gateway, usually 172.20.10.1. Replace all example phone addresses if yours differs.
  3. Turn off VPN background sharing on iPhone, start sharing, and keep CellGlide in the foreground.
  4. Select SOCKS5 in the client, enter the phone IP and port 9876, and leave username and password empty. Use remote DNS resolution if available.
  5. For more apps or all home devices, configure TUN / transparent routing on the receiving device. Adding a proxy node alone does not route every device.
Foreground connection parameters
InterfaceExample addressNotes
SOCKS5172.20.10.1:9876TCP and UDP. The client must support SOCKS5 UDP; no authentication.
HTTP / HTTPS CONNECT172.20.10.1:9877Enter in the HTTP proxy field; supports HTTPS tunnels.
PAChttp://172.20.10.1:8088/wpad.datOnly affects requests made by applications that follow PAC.

Verify one request first

On a connected device with curl installed, run:

curl --proxy socks5h://172.20.10.1:9876 --connect-timeout 10 --max-time 30 https://www.cloudflare.com/cdn-cgi/trace

A text response verifies this request through the phone proxy. The h in socks5h sends the hostname to the proxy. This command does not change the entire computer’s proxy settings. With the native Mac client, replace the proxy URL with Local proxy from its panel.

Windows

Enter the parameters in a SOCKS5-capable application, or use a TUN-capable client for broader routing. A Windows HTTP proxy / PAC setup using port 9877 or the PAC URL only affects apps that follow those settings; it does not automatically route all software or ordinary UDP. Disable the configured routing or proxy when finished.

OpenWrt / OpenClash

Prepare the router’s iPhone USB drivers and network interface first. Add a SOCKS5 node to the plugin. This is a node fragment, not a complete router configuration:

proxies:
  - name: iPhone-CellGlide
    type: socks5
    server: 172.20.10.1
    port: 9876
    udp: true

Select the node, configure LAN, DNS and IPv6 routing, check the plugin’s connection list, and watch the phone’s usage. The router’s own DNS configuration does not automatically follow the phone’s DNS switch; manage it on the router.

Drivers, interfaces, plugins and firewall rules vary. A working node does not prove whole-home routing is configured. Stopping the plugin may return clients to the ordinary USB network. To prevent fallback, configure rules appropriate to the receiving device’s network.

12Frequently asked questions

The phone says the cellular interface is available, but the computer cannot load pages.

Run Check on the phone first, then confirm sharing is active. On Mac, look for TUN running. USB proxy connected alone needs TUN or per-app use of the local proxy. With manual clients, check the phone IP, port and routing scope.

The Mac keeps waiting for phone sharing.
  1. Use a data-capable cable, unlock and trust the Mac, and select the correct phone.
  2. Start sharing; keep the app visible in foreground mode.
  3. Click Check again on Mac. Mode or DNS changes may need reconnection time.
  4. For helper errors, authorize the background service and review the system approval.
Only some websites fail. How can I troubleshoot?

Run Network diagnostics and compare cellular HTTPS, DNS and local proxy results. Change the DNS provider or disable Use CellGlide DNS, save, reconnect, and retry the page. If an explicit proxy curl works but the browser fails, check the browser’s own proxy, encrypted DNS and existing connections. Account, regional and server-side restrictions are also possible; a failed page alone is not evidence of a DNS bug.

Hotspot-IP proxy stops connecting after enabling phone VPN.

VPN background mode exposes local USB forwarding, not a hotspot-IP listener. Use the companion Mac client or another compatible USB-forwarding client, or switch back to foreground mode for hotspot-IP access.

Sharing drops when the phone locks.

Foreground mode is not intended for continuous locked-screen use. With the Mac client, enable VPN background sharing, allow the VPN configuration, and confirm sharing is running. Check other VPNs for conflicts, reopen the phone app to review status, and check again on Mac.

Can I use it with Wi-Fi turned off?

Yes, when cellular data, USB forwarding and Mac TUN are working. Turning Wi-Fi off alone does not establish a proxy. A page loading with Wi-Fi on is not proof of CellGlide use either. Check client status, an explicit proxy request and phone traffic activity.

Why do the counters differ from my carrier’s bill?

CellGlide counts its own forwarded payload. Direct speed tests, some checks, other phone apps, ordinary hotspot traffic and protocol overhead have different accounting. Carrier totals may also be delayed. App statistics do not replace billing records.

Will QUIC, games and video calls always work?

Ordinary UDP is supported, but performance also depends on cellular service and client routing. Mac USB UDP is carried in TCP frames, so congestion or retransmission can add latency. SOCKS UDP fragmentation is unsupported; oversized packets may be dropped. UDP support does not mean every real-time application has been validated.

My original network did not recover, or the helper cannot be reached.

Use Disconnect and restore original network and review the result. Follow any helper message, retry, and check that the helper and client belong to the same current version. Reopen the client if needed. Check CellGlide and other VPN / proxy conflicts first rather than changing Wi-Fi DNS without a diagnosis.

Can I share the proxy address with everyone?

The foreground proxy has no username or password. Use it only on a trusted personal hotspot or LAN. Do not expose its ports to the public internet; stop sharing when finished.