XVPN
A split-tunnel VPN client that just takes your .conf.
XVPN is a config client for Windows, Linux and Android. You import your
own WireGuard (.conf), OpenVPN (.ovpn) or Hysteria2
(share link / config.yaml) profile; the app
translates it for the core, decides which traffic goes direct and which goes through
the tunnel, and tells you why a site fails when it does.
It ships no nodes, servers, subscriptions or accounts, and it implements no cryptography — that comes from sing-box. You bring your own config.
What it does
- Automatic split tunnelling — bundled
geosite-cnandgeoip-cnrule sets; domestic domains and IPs go direct, everything else goes through the tunnel. No rules to write. - Dual-resolver DNS — domestic domains resolve via a domestic resolver, everything else inside the tunnel, so poisoned answers never drive routing.
- Failure attribution — "judged direct but failed" (a rule gap), "went through the tunnel but failed" (a node problem), and "direct itself is down" (a local network problem) look identical to a user but need opposite responses. XVPN tells them apart.
- DNS cross-validation — the same domain is resolved via the domestic resolver and via the core, the answer sets are compared, and geolocated against a China IP prefix index to distinguish dual deployment from suspected poisoning.
- Self-correcting routing — a domain judged direct that keeps failing is switched to the tunnel at highest priority. Counter-evidence is respected: one successful direct connection resets the failure streak, and two revoke a learned rule.
Privacy
XVPN collects nothing. No accounts, no analytics, no ads, no trackers, no crash reporting, no backend. Configs and credentials stay on your device; split records live in memory and are gone when the app closes. Every outbound network connection the app can make is enumerated in the privacy policy — and because the app is open source, each claim can be verified against the code.
Read the full privacy policy →
License
GPL-3.0-or-later. This is not a preference but a consequence of the dependency: the Android build links the GPL-licensed sing-box core into the same process, forming a combined work. Third-party components and the upstream additional terms are listed in NOTICE.md.