【问题标题】:How to use the VPN API on Android? [closed]如何在 Android 中使用 VPN? [关闭]
【发布时间】:2012-10-25 08:52:21
【问题描述】:

我正在探索 Android 中的 VPN 连接。我是这个部分的新手。

  1. 我想知道如何使用应用程序在 Android 中设置 VPN 连接?

  2. 我遇到了一个示例代码,即 ToyVpn。我运行了该应用程序,但我不知道我需要以该应用程序显示的形式提供哪些数据,考虑我有一个带有 IP 地址的 VPN 服务器(比如 10.162. 1.2),我需要在该应用程序中做什么才能使该应用程序正常工作?

  3. 如果我尝试使用任何公共 VPN 服务器,我需要做什么?

  4. 我从here 下载了Openvpn 源代码并在我的ICS 设备中编译并运行,但我不知道如何配置需要输入的数据。请提供使用此应用的确切方式。

【问题讨论】:

  • ToyVpn 你可以阅读这篇文章stackoverflow.com/questions/13228834/…;在这篇文章中有一条评论说“ToyVPN有自己的服务器;它不使用任何传统的VPN服务器。”这意味着我们应该运行ToyVpn的服务器,但是运行它的步骤需要添加路由等,我无法没有root....不幸的是我无法root我的手机......:(但理想情况下,这个示例ToyVpn也应该连接到其他服务器......
  • 我也在尝试创建一个 VPN 客户端几天......如果有人发布一些 sudo 代码(即基本步骤)将非常有帮助,因为 ToyVpn 的客户端似乎并不完整客户端,因为它没有将我连接到 VPN 服务器......并且没有用户名选项,而几乎所有服务器都需要用户名......
  • @user1204089 我还检查了你分享的链接。现在我测试了 toyvpn 应用程序,使用 pptp 测试值,它没有工作。我需要知道是否有任何测试值来测试 toyvpn 应用程序。你也听说过 abt openvpn 应用程序吗?
  • 根据我上面分享的链接,我们需要运行ToyVpn的服务器,在8000端口创建serevr,文件中提到“设置地址并调出接口”。所以给它一个IP地址,这样你的服务器地址就是你给那个接口的IP地址,8000是端口,共享密钥是“测试”,但我没有测试过,因为我不能像提到的那样添加路由等在没有 root 访问权限的 serevr 文件中...
  • @user1204089 我对 cpp 文件注释有一点疑问。在编译 ToyVpn.cpp 文件(根据this 链接)后,我需要知道它足以运行 ./a.out ......并且在 cpp 文件评论中它提到了 ./ToyVpnServer tun0 8000 test - m 1400 -a 10.0.0.2 32 -d 8.8.8.8 -r 0.0.0.0 0 其中 ./ToyVpnServer 应替换为 ./a.out

标签: java android android-4.0-ice-cream-sandwich vpn openvpn


【解决方案1】:

我想知道如何使用应用程序在 Android 中设置 VPN 连接?

Android SDK 附带一个示例;请参阅 android-16 示例目录中的 ToyVpn。另请参阅 VpnServiceVpnService.Builder 的文档。

我遇到了一个示例代码,即 ToyVpn。我运行了该应用程序,但我不知道我需要以该应用程序显示的形式提供哪些数据,考虑我有一个带有 IP 地址的 VPN 服务器(比如 10.162.1.2) , 我需要在该应用程序中执行哪些操作才能使该应用程序正常工作。

您的 VPN 需要创建一个新套接字,使用 VpnService.protect(Socket) 保护该套接字不被路由回 VPN,并将该套接字连接到 10.162.1.2。建立到 VPN 服务器的隧道连接后,您应该继续将 VpnService 接口的输入流写入隧道的输出流,然后将隧道响应写回接口输出流。

如果我尝试使用任何公共 VPN 服务器,我需要做什么?

没有用于建立与 VPN 服务器的连接的标准机制。 ToyVpn 只是使用原始 TCP 数据包通过套接字进行通信。您可以像 OpenVPN 一样实现现有协议(参见 RFC 4026),也可以自己编写一些东西。

【讨论】:

    猜你喜欢
    • 2016-08-28
    • 1970-01-01
    • 2013-09-28
    • 2012-10-22
    • 2012-09-29
    • 2016-11-18
    • 2014-03-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多