java - 在 Android +14 上实现 PPTP/L2TP 协议(protocol)

标签 java android vpn pptp l2tp

我正在使用 Android Studio v 1.4 开发一个 Android 应用,最低 sdk 版本是 14,我想做的是构建一个简单的 VPN 客户端实现 PPTP 和 L2TP 协议(protocol)。

我在 Stack Overflow 中进行了谷歌搜索,我查看了名为 toyvpn 的 Android sdk VPN 示例,还查看了 VPN 服务类的官方文档。

如何在Android平台上用VpnService实现PPTP或L2TP? 是否有任何代码示例、库甚至是此类实现的起点。

最佳答案

这个问题很有趣。尽管它的措辞方式存在一个根本性缺陷。我觉得这个问题太笼统了。但是,我仍然认为它对方向有用。

首先,正如其他人所说的 VPN 非常复杂,我相信很多其他人会建议不要采用它。但是,有许多解决方案可以满足您的需求。你提到PPTP。

“不要使用 PPTP。点对点隧道协议(protocol)是一种常见的协议(protocol),因为自 Windows 95 以来,它已在 Windows 中以各种形式实现。PPTP 有许多已知的安全问题……”摘自此 article .

目前的建议是使用 OpenVPN。现在,如果您访问他们的网站,他们通常已经以一定的价格构建了软件。我认为这不是您最终想要的。

您可以利用 OpenVPN 库自行构建。由于它是开源的,您可以为了自己的利益使用这些库,但您必须进行实现工作。我为您找到的是在 Android 中利用 OpenVPN 的 GitHub 存储库。

Source

我肯定会在这里看看。它可能是一个有用的示例,您可以从中构建。这样,如果您碰壁了,就可以回来询问有关代码的具体问题。

最后,VPN 是双向的。将它放在 Android(客户端)端仍然需要服务器端实现。所以我也会认为这个article将是学习过程中有益的一部分。

希望对您有所帮助。

关于java - 在 Android +14 上实现 PPTP/L2TP 协议(protocol),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33928707/

相关文章:

java - 带 selectitem 的 richface 树(复选框)

java - 连接到 Mpos 设备抛出 java.nio.channels.IllegalBlockingModeException

android - 字幕在小部件中经过一段时间后停止

dns - 如何让 docker 容器与 sshuttle 一起工作?

azure - 访问虚拟机的成本

ios - 如何在应用程序运行时知道 vpn 是否打开?

java - 返回键关闭任务中注册的所有 Activity

java - 从另一个设备获取数据

Java - 打开包含超过 65535 个文件的 zip 文件

android - Google Developer Console 中的 'updates pending' 是什么意思