Android · OpenVPN 3

Your private network. Nothing else.

DreyVPN 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.

v0.3.4 · 11.7 MB · Android 9+ · 64-bit ARM

How it works

A narrow tunnel, on purpose

01 · Split tunnel

Only private routes

DreyVPN 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. DreyVPN 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 DreyVPN

Latest release
DreyVPN 0.3.4

DreyVPN 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.

QR code linking to dreyvpn.abhishekm.work

On a computer?Scan this with your Android phone to open the download page there.

Released
27 September 2026
Size
11.7 MB
Requires
Android 9 or newer, 64-bit ARM
APK SHA-256
3839e28b1cfdb10387254d74f0abdf6f34d2339eed520964c5465943762f1c21
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 check a download on a computer, both of these should match the values above. If either doesn't, don't install it.

shasum -a 256 dreyvpn-*.apk apksigner verify --print-certs dreyvpn-*.apk
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 DreyVPN, 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, DreyVPN 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 DreyVPN refuses to connect rather than leak queries.
  • 64-bit ARM phones only. DreyVPN is an early release, tested on a small number of devices.
Changelog

Releases

0.3.4

Latest
  • ImprovedUsing host mappings without a VPN profile is now called Local mappings everywhere in the app, including its notification.
  • NewThe website has a light and dark theme switch, and remembers your choice.

0.3.3

  • ImprovedRouter is now DreyVPN, and its website has moved to dreyvpn.abhishekm.work. Install it over your current version: profiles, mappings and saved credentials are kept.

0.3.2

  • ImprovedThe button under the status button now reads Use local mappings only, while tapping the status button connects your profile.
  • ImprovedHost mappings has its own help pages for profile and Local mappings, opened from the info button, so the list screen stays uncluttered.
  • ImprovedA cleaner Home screen that looks right in both light and dark themes.

0.3.1

  • ImprovedStarting Local hosts from Home is now a proper tile, and there's one to help you set up your first Local mapping.
  • FixedWhile Local hosts is running, the selected profile no longer shows as connected.

0.3.0

  • NewLocal hosts: map names like dev.test to 127.0.0.1 or a computer on your Wi-Fi without any VPN profile. Start it from Home; only DNS goes through DreyVPN and everything else uses your normal network.
  • NewSwitch any host mapping off and on without deleting it.
  • ImprovedLocal mappings also answer while a profile is connected, but their traffic is never sent through the tunnel.
  • ImprovedDreyVPN asks for notification permission when you connect, and explains what to do if Android starts it as the always-on VPN.

0.2.1

  • NewA new app icon, with a matching themed icon on Android 13 and later.
  • NewSwitch between light and dark themes from the Home screen. DreyVPN 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.
  • NewDreyVPN tells you when a new version is available on this site.
  • NewOpen-source licenses are listed in the app under How DreyVPN works.
  • ImprovedIf the connection fails once the tunnel is up, private traffic stays blocked instead of falling back to your normal network.