如何仅对单个应用程序进行VPN?


13

假设您只想通过VPN路由单个应用程序的流量。

(因为该应用程序缺少适当的加密支持,或者仅在合作网络上提供了远程服务。)

其他诸如Web浏览之类的内容也应通过常规数据连接进行。

如何在最新的Android设备(> = Android 4.0)上进行配置?

具体动机:不幸的是,相当多的VoIP网关提供商不提供数据加密(语音和信令)-因此必须使用VPN(至少在通过WLAN连接时)。一个提供程序(sipgate.de)甚至提供了自己的VPN(没有其他SIP / RTP加密方法)。


有关您专门尝试传输的应用程序的更多信息可能会有所帮助。他们支持SOCK5代理吗?SSH隧道可能是一个好的开始。
EarthmeL12年

1
@ earthmeLon,VoIP应用程序,支持SIP的VoIP应用程序-cf. 问题的最后一段-例如CSimple。
maxschlepzig 2012年

Answers:


6

免费且开源的Android OpenVPN应用程序支持此功能。

在配置文件配置对话框中,有一个“允许的应用程序”选项卡,可让您选择被排除在使用已建立的VPN之外的应用程序列表:

  • “ VPN用于所有应用程序,但不包括选定项”
  • 'VPN仅用于选定的应用程序'(原文如此)

然后,列表包含所有可以选择/取消选择的可用应用程序。

这不需要植根设备。例如,它可以在带有Android 8.1的Nexus 5x设备上正常运行。

一个简单的测试是安装另一个类似Firefox的浏览器,仅在列表中包含Chrome和Firefox中的一个,然后切换浏览器并访问https://wtfismyip.com

一个陷阱是当您使用双协议栈IPv4 + IPv6网络但VPN仅是IPv4时。在这种情况下,需要禁用“路由”选项卡中的“绕过本地网络的VPN”。否则,除了VPN之外,IPv6流量还将未经加密地传输。


0

android上的每个应用程序都在不同的用户上运行,因此iptables应该能够使用-m owner --uid-owner,BUT识别给定的应用程序。像Android中的许多东西一样,可能没有用户前端可以轻松地做到这一点。(例如,到目前为止,没有选择使用ext4作为外部SD卡的格式)。如果您对路由表和iptables有一定的了解,则可以尝试这种方式。

另一种方法是将VPN设置为仅通过您的sip提供程序的ip地址通过它进行路由(而不是默认路由)。尽管还有另一个不相关的问题-SIP不喜欢NAT,所以您可能需要在VPN服务器上设置一些流量转发。


-3

尝试使用较旧的Hola Better Internet而非Hola Free VPN,它使您有权选择VPN服务的唯一应用程序。


1
您能否弄清楚这些“ Hola”应用程序是什么,可以链接到您推荐的特定应用程序,并提供有关用户如何使用它来解决问题的说明?
TurboFool
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.