Android · OpenVPN 3

Your private network. Nothing else.

Router imports your .ovpn profile and sends only private IPv4 ranges through the tunnel. Everything else stays on your normal connection. Give private hosts a name, and apps like Termius reach them by that name.

Android 9 or newer · 64-bit ARM

How it works

A narrow tunnel, on purpose

01 · Split tunnel

Only private routes

Router installs routes only for RFC 1918 ranges your profile pushes, plus hosts you map. Public traffic never enters the VPN.

02 · Host mappings

Names for private hosts

Map vm.internal to 10.0.20.15. Router answers that name from inside the tunnel, even if your profile has no DNS server.

03 · On-device only

Nothing leaves the phone

Profiles and saved passwords are encrypted with a key from Android Keystore. No account, no analytics, no cloud sync.

Download

Get Router

Latest release
Router

Router is distributed here, not on Google Play. Every release is signed with the same key, so new versions install over old ones and keep your profiles.

Released
—
Size
—
Requires
Android 9 or newer, 64-bit ARM
APK SHA-256
—
Signing certificate SHA-256
84:1A:72:E6:38:6C:96:7F:8F:62:9A:A8:CD:BC:74:8F:95:24:B9:6A:92:44:16:78:5B:43:98:DC:6C:0A:EA:CC

To verify on a computer: shasum -a 256 router-*.apk should match the APK hash, and apksigner verify --print-certs router-*.apk should show the signing certificate above. If either doesn't match, don't install it.

Install

Installing from outside Google Play

  1. Download on your phoneOpen this page in Chrome on the phone and tap Download. Chrome warns that the file can be harmful; it says that for every APK. Tap Download anyway.
  2. Allow your browser to install appsWhen you open the file, Android asks to allow installs from this source. Tap Settings, turn on Allow from this source, then go back.
  3. Install past Play ProtectIf Play Protect says the app is unrecognised, tap More details → Install anyway. Google hasn't scanned it because it isn't on the Play Store.
  4. Import a profile and connectOpen Router, import a self-contained .ovpn file, enter your credentials and tap the orb. Android asks once to allow the VPN.
  5. UpdatesWhen a new version is published, Router shows an Update available banner. Download it the same way and install it over the current app.
Know before you install

Current limits

  • Profiles must be self-contained .ovpn files with certificates inline. The compress and allow-compression directives are rejected; legacy comp-lzo is accepted.
  • Only private IPv4 destinations are routed. IPv6 and public ranges are never sent through the tunnel.
  • Host mappings answer standard DNS over UDP only. If Android's Private DNS is set to a provider hostname, apps may bypass mappings; set it to Automatic or Off.
  • A DNS server pushed by your profile must be a private IPv4 address, or Router refuses to connect rather than leak queries.
  • 64-bit ARM phones only. Router is an early release, tested on a small number of devices.
Changelog

Releases

0.2.1

Latest
  • NewA new app icon, with a matching themed icon on Android 13 and later.
  • NewSwitch between light and dark themes from the Home screen. Router remembers your choice.
  • NewGive a profile a nickname with Profiles → Rename. The original file name stays visible on the profile card.
  • ImprovedYour username and password stay filled in while connecting and after you cancel. To forget saved credentials, press and hold Forget.

0.2.0

First release here
  • NewHost mappings work even when your VPN profile doesn't provide a DNS server.
  • NewRedesigned app: tap the status button to connect, with separate Profiles, Host mappings and help screens.
  • NewRouter tells you when a new version is available on this site.
  • NewOpen-source licenses are listed in the app under How Router works.
  • ImprovedIf the connection fails once the tunnel is up, private traffic stays blocked instead of falling back to your normal network.