IT技术博客大学习 共学习 共进步

让安卓手机通过代理翻墙的方法

外刊IT评论 2014-12-04 13:51:39 浏览 8,801 次

   最近谷歌的所有服务几乎都被封杀,造成的后果就是我的小米3手机上的Google Play商店无法连接到服务器,即不能通过Google Play商店下载新的应用,也不能更新现有应用升级。

   在我的桌面电脑上没有这种问题的,因为我一直使用国外的site5虚拟主机做SOCKS代理。看YouTube视频,使用谷歌搜索,浏览被墙的网页都没问题,而且速度很快。

   于是我就有个想法,能否让我的手机也连接上我的桌面电脑上的代理服务?

   我的桌面电脑上的翻墙代理使用PuTTY连接site5虚拟主机里提供的SSH做成的。这种代理是SOCKS v5代理,是功能最强的一种代理。我起初的想法很简单,以为只需要将PuTTY里的“Local ports accept connections from other hosts”这个选项选上,然后进入小米3手机里的系统管理 > WLAN > 已连接的网络的“网络详情” > 代理设置,输入我的电脑的局域网IP地址和PuTTY Tunnels端口号。

   proxy putty

   我的小米3手机里安装了火狐浏览器、谷歌浏览器、Dolphin浏览器。我设置完成后验证效果是发现,只有Dolphin浏览器可以翻墙成功,火狐浏览器、谷歌浏览器都连接不上。最重要的是,谷歌Play商店仍然无法连接。

   经过网上搜索一番,初步感觉是有些应用无法识别SSH Tunnel代理的原因,需要将SOCKS v5代理变成HTTP代理。可是PuTTY没有这种转换功能。于是又用谷歌搜索,发现了DeleGate这款开源软件。

   delegate

   这是一款命令行软件,我研究了半天,最终是用了下面一行命令:

win32-dg9_9_9.exe -P8080 SERVER=http SOCKS=localhost:7070 ADMIN=your@email.com

   win32-dg9_9_9.exe 就是DeleGate的主程序。

   localhost:7070 是我的SOCKS v5代理,

   -P8080是通过DeleGate转化的HTTP代理端口。

   ADMIN=your@email.com 这个参数必须要有,是Admin的邮件地址,胡编一个就行了。

   还有一点,我的电脑是Windows7,执行上面的命令需要管理员权限才能成功的建立起代理服务。所以,启动命令行窗口时需要使用“以管理员身份运行”。

   然后是再次验证可行性。进入小米3手机里的系统管理 > WLAN > 已连接的网络的“网络详情” > 代理设置,输入我的电脑的局域网IP地址和DeleGate提供的HTTP代理端口号。

   结果是让人欣慰的,谷歌Play商店终于正常显示信息并能下载&更新应用了,手机上的所有需要联网的应用都正常联网,都能翻墙,还有DropBox也能正常连接了。

   上面这个过程看起来很容易,几分钟就看完了。但我实际用各种方法研究了整整一天。也许我是太笨,不知道大家有没有更简单的方法,请告诉我,谢谢。

   另外,在研究的过程中还发现了My WIFI Router这个小软件,它能将你的笔记本转变成一个WiFi热点,其它的电脑、手持设备能通过这个热点共享你的笔记本的网络连接。这个软件在你只有有线网络连接时非常有用。

建议继续学习

  1. Chrome和goagent的配置方法,你懂的 (阅读 16,622)
  2. sshd+chrome+switchsharp翻墙 (阅读 8,621)
  3. 代理的加密部分 (阅读 8,243)
  4. 别得瑟了,你很可悲! (阅读 7,802)
  5. 关于 SOCKS 代理的远端 DNS 解析 (阅读 7,742)
  6. HTTP 正向代理与反向代理 (阅读 4,980)
  7. 关于不得不在python中使用代理访问网络的方法 (阅读 4,940)
  8. nginx.conf控制指定的代理ip和ip访问的设置手记 (阅读 4,622)
  9. 关于http代理 (阅读 4,522)
  10. 使用 Perl 实现 HTTP 代理 (阅读 4,001)