【问题标题】:Android http Tunnel using VpnService使用 VpnService 的 Android http 隧道
【发布时间】:2019-12-18 14:04:50
【问题描述】:

我正在尝试通过 HTTP 隧道重定向整个 android 网络流量,并且没有关于如何做到这一点的教程或 Github 存储库。

只需从用户那里获取主机、端口、用户名和密码,然后以编程方式将整个设备连接到该主机。

我已经用 squid 配置了一个 HTTP-Proxy 服务器,只需要一个客户端来连接它。

我不想要 Open-VPN 解决方案或 StrongSwan,这个名为 TOOFAN Tunnel 的 app 正在做我所需要的,但它仅在某些国家/地区可用,而且它不是开源项目。

只需要有人给我指路或指引我正确的方向,我提前感谢。

我知道 Android 的 VpnServise,以及它如何重定向流量,但我只是不知道实现一个套接字以通过具有凭据的 HTTP 代理传输数据包。

我已经构建并测试了 20 多个存储库,但没有一个可以工作。他们之中有一些是: SSLSocksTunProxyVpnProxySmartProxyNetDroidProxyLocalVPNxSocks-androidprox

【问题讨论】:

  • 对于测试,您可以在 Firefox Android 应用程序上使用network.proxy.ssl(必须使用CONNECT)配置(尽管不是系统范围的测试)。 SSLSocks 是stunnel,而 xSocks-android 看起来像 SOCKS5,两者都不适用于 squid。其余的呢?您能否分享您的经验如何/为什么不适合您,尤其是 TunProxy?注意:我不是开发人员,但正在寻找类似的解决方案。

标签: java android http proxy vpn


【解决方案1】:

您可以尝试使用我制作的这个库,它应该允许您使用代理或不使用代理进行任何操作。我知道这是一个很晚的回复,但我希望它会帮助某人......

https://github.com/DrBrad/Android-VPN-to-Socket

https://github.com/DrBrad/JTun2Socks

最简单的方法是为 UDP 数据包创建一个 DNS 代理,为 TCP 数据包创建一个 TCP 服务器。您必须操纵 TCP 数据包以指向新的 TCP 服务器。您可以通过创建一个简单的 nat 会话来拉取主机和端口。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-04-07
    • 1970-01-01
    • 2011-06-24
    • 1970-01-01
    • 2013-01-05
    • 2021-06-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多