celzero / rethink-app

DNS over HTTPS / DNS over Tor / DNSCrypt client, WireGuard proxifier, firewall, and connection tracker for Android.
https://rethinkfirewall.com/
Apache License 2.0
2.62k stars 133 forks source link

Integrate OpenVPN #64

Open ignoramous opened 3 years ago

ignoramous commented 3 years ago

A lot of users complain that they want to be able to use their VPN endpoints along with BraveDNS. There's only one VPN app that can run on Android at any given point in time which makes this necessary.

Probably will bloat the codebase up, and there's likely a gazillion OpenVPN configurations that would need to be carefully supported. Worth a try.

See: #52

howtologinquickwiththirtyninecharacters commented 3 years ago

I don't have experience with Android apps but today I discovered this is possible and has been done by a DNS-based adblock app. The main app (personalDNSfilter) can be configured to work only as a local DNS server (disabling its built-in local VPN mode) and a modified OpenVPN for Android can be configured to send queries to that local DNS server while connecting to a remote VPN. The code for both apps is on GitHub so it may be useful as a reference.

The downside of implementing something like this on Rethink would be losing the ability to work as a firewall, it would only work for DNS adblocking. For the moment I'll keep using Rethink because I need the firewall + adblocking and it's the only good app I found that can do both but supporting OpenVPN would be a welcome addition.

ignoramous commented 3 years ago

Does WireGuard work for you? If so, that is almost a guarantee to go in the app versus OpenVPN.

howtologinquickwiththirtyninecharacters commented 3 years ago

Sorry for replying so late, I didn't get a notification for the mail. Unfortunately the only option is OpenVPN. Right now I keep a work profile where I run personalDNSfilter + OpenVPN and I run Rethink on the main profile. It's not ideal but works well so it's not a problem for me if this isn't going to be implemented (or can't be implemented), I just wanted to comment on how a similar app implemented a solution because I thought it may be useful.

ignoramous commented 2 months ago

A user writes,

Ich fand eure App RethinkDNS.

An sich perfekt, mir fehlt eine Firewall nun da ich Android nicht mehr roote.

Problem nun, ich nutze OpenVPN.

Kann man euerer App auch noch das OpenVPN Protokoll als VPN hinzufügen, damit man auch noch diese Auswahlmöglichkeit hat? Dann wäre die App Perfekt. Nicht alle nutzen Wireguard und nicht alle guten VPN Anbieter unterstützen Wireguard bereits...

Vielen Dank, über eine Rückmeldung würde ich mich freuen :)

gabriel20xx commented 2 months ago

Any progess on this, in implementing OpenVPN in Rethink?

ignoramous commented 2 months ago

No progress, yet. I don't see us working on this anytime in the next 6-12 months, to be fair (note: how it took us 3 years to deliver WireGuard ;). Welcome community contribution though.

freebrowser1 commented 4 weeks ago

Indeed OpenVPN will be nice. Most commercial VPN services do offer both Wireguard and OpenVPN, but do not share the Wireguard client profiles, but do the OpenVPN profiles like PIA, Surfshark or NordVPN. Moreover for VPN-ing home, setting up Wireguard server on a local server (router / Raspbarry Pi) is a nightmare, but deploying an OpenVPN server on such devices is simple.