wgtunnel icon indicating copy to clipboard operation
wgtunnel copied to clipboard

[FEATURE] - Local HTTP/SOCKS5 proxy mode for use with other VPNs

Open Dondrejohnson5 opened this issue 5 months ago • 4 comments

Is your feature request related to a problem? Please describe. For quite a long time now I've always been torn between using the best ad blocker for Android, AdGuard, and using Cloudflare Warp via WireGuard for faster internet (no video buffering, less ping in video games, etc). I can't use both because Android only allows one VPN active at a time. AdGuard does have an automatic proxy mode for rooted devices to allow using WireGuard with it though, but ad filtering will not work if an ipv6 address is specified in the WireGuard config, which must result in me essentially connecting to ipv4 only, in order to continue experiencing the best of both AdGuard and Cloudflare Warp.

Describe the solution you'd like A mode in WG Tunnel that allows exposing configs to other compatible VPNs, like AdGuard, in a form of a local (127.0.0.1:xxxx) HTTP and/or SOCKS5 inbound proxy. In this manner, AdGuard, in it's regular VPN mode can filter ads in both ipv4 and ipv6 connections like normal, but through the proxy, so that I may also experience the benefits of Cloudflare Warp.

Describe alternatives you've considered

  • Kernel userspace mode in WireGuard: with that enabled, whether AdGuard is in VPN mode or automatic proxy, the same undesirable results occur so long as an ipv6 config is specified in the WireGuard config.
  • SagerNet (depreciated; based on v2-ray) & successor, sing-box (based on sing-box): both SagerNet and sing-box cannot refresh its proxy connection automatically, so when the Android device regains cell service or connects/disconnects from Wifi, all apps not excluded from AdGuard filtering in VPN mode will not connect to the internet until the responsible proxy app is manually stopped and restarted.
  • SagerNet fork, Matsuri (depreciated; based on v2-ray) & successor, NekoBoxForAndroid (based on sing-box): Matsuri, like SagerNet, did not well support WireGuard configs, as the app's base arch, v2-ray, does not support WireGuard configs at all, so connections were often unstable; NekoBoxForAndroid, like both Matsuri and SagerNet, 1): have a lot more settings that I deem unnecessary, unappealing, and just confusing for my use case, that, if tampered with, with limited proper knowledge of them, can drastically affect the connection for better or worse, and 2): are simply battery drainers compared to sing-box and WireGuard itself.

Additional context I recently found another GitHub project called Wireproxy. I haven't tried it, but, given the description of the project, it seems to present the solution related to my issue, it's just not made for Android. Hopefully it's content helps though.

Dondrejohnson5 avatar Jan 09 '24 18:01 Dondrejohnson5