Total Pageviews

Friday, 11 September 2015

用GoAgent翻墙回国

注:其实逼格甚低,高逼格的方法在评论里
最近越来越多的视频网站不让在境外观看使用,包括很多手机apps比如虾米也是如此.
当遇到这种情况的时候,有哪些方法可以让我们“翻”回去呢?
作为技术宅屌丝,脑残果粉,第一个首先想到的当然是ssh vpn goagent 这几个关键词
现总结如下:

低逼格方法:

在PC上:
  • 如果是Chrome浏览器,那可以用 傻瓜式解决方案:Chrome Extension: Unblock-Youku (万物的起源当然都是在Github)。首先在Chrome Web Store 搜索 Unblock Youku,懒人们可以直接点击这里。然后安装,然后就没有然后了。听说原理是在HTTP包的头里添加一个“ X-Forwarded-For ××” 字段 (××是任意一个国内ip)
  • 如果是Firefox浏览器,当然也有,在Add-ons里搜Unblock Youku即可,懒人们点这里,同样万物起源自Github
在iPad或是屌丝机上怎么办呢?Unblock Youku 目前实验性地提供了一个代理自动配置 PAC 文件
在iOS上: 人肉备份自在 iPad 上使用 Unblock Youku 观看大陆网站影片
一、代理设置
简单来说,只用给浏览器或者 iOS 设备设定一个代理自动配置 PAC (proxy auto-config) 文件就可以了。PAC 文件的地址为
iOS 设备可以在当前使用的 WiFi 的高级选项里设置 HTTP 代理。如下图所示
iospc
iPad 上 Unblock Youku 中国大陆代理设置
二、检查代理设置是否成功
按照上面的步骤设置之后,可以在浏览器中打开页面 http://ipservice.163.com/isFromMainland
如果页面显示的是 true,便说明代理设置完毕,例如下图中的结果
ios_test
中国大陆IP地址检测
三、代理服务器状态监控
设置好 PAC 后,如果遇到以上测试返回 false 的情况,有可能是我们的转发服务器遇到了问题。参考下面的状态图便于查看服务器最近的运行状态,点击图片可以得到更详细的信息。
如果发现服务器长期处于下线状态,请留言通知原作者。
四、自己架设代理服务器
因为公用的代理服务器资源有限,欢迎技术达人尝试运行自己的服务器。详细教程请访问 Github Wiki 页面
本文直接转载自 Github 上的 Unblock Youku 开发者文档。
Drony 是 Android 系統上的一個 app,它支持和 iOS 一樣的 PAC 自動代理配置,使用它配合 Unblock Youku 的 PAC 文件,瀏覽影音網站以及優酷土豆等官方 app 均可解封,且不影響系統上其他 apps 正常使用,不影響上下載速度。
一、設置步驟
首先請前往 Google Play 官方下載安裝 Drony:
https://play.google.com/store/apps/details?id=org.sandroproxy.drony
1. 打開 Drony,進入 setting
在 WiFi 下,選擇你正在使用的 WiFi 網絡:
unblock-youku-android1 unblock-youku-android2
在 3G/4G 網絡環境中,則選擇 Setting for not listed networks
unblock-youku-android3
2. 修改 Script Proxy 設置,輸入 PAC 地址,並下載,測試,保存
http://yo.uku.im/proxy.pac

unblock-youku-android4 unblock-youku-android5
3. 修改 Proxy Type 為 Script
unblock-youku-android6
4. 啟動 Drony
unblock-youku-android7
5. 修改系統代理設置
WiFi 網絡環境:
unblock-youku-android8 unblock-youku-android9
3G 網絡環境:進入 APN 設置,修改代理和端口
unblock-youku-android10
二、檢查代理設置是否成功
按照上面的步驟設置之後,可以在瀏覽器中打開頁面 http://ipservice.163.com/isFromMainland
如果頁面顯示的是 true,便說明代理設置完畢,例如下圖中的結果
unblock-youku-android11
三、代理服務器狀態監控
設置好 PAC 後,如果遇到以上測試返回 false 的情況,有可能是我們的轉發服務器遇到了問題。參考下面的狀態圖便於查看服務器最近的運行狀態,點擊圖片可以得到更詳細的信息。
感謝 @grjegreagjergjerja 推薦 Drony 以及感謝 @karlcheong 的辛苦測試。

中等逼格方法:

unblock youku使用的方法虽然当前有效,而且操作相对简单,但是随时可能失效,因为他毕竟不是“真的”翻回去了,只是因为各大视频网站使用过的检测(你在哪里)法“故意”阳奉阴违的放大家一马,一旦风声紧了很可能直接挂掉。其二上述方法都没有用到代码,显得逼格甚低。
中逼格法是 经典的 goagent翻墙法的反向使用,正向翻墙法的经典方法是在goolge app engine(以下简称GAE)上安装goagent,然后在电脑上运行goagent的客户端,浏览器中填写相应代理或者使用代理规则切换插件来完成的。
而现在需要逆翻墙的话,显然得找个在国内的”云“服务商,之前试过Sina App Engine (SAE),但是作为普通随便用用的用户,哪里来那么多的访问量,自然”云豆“也是不够用的,搜了半天,现在只有京东的JAE是暂时免费的… 所以
  1. 首先去开通一个JAE的账号,新建一个php应用
  2. 用和goagent正向翻墙教程里同样的方法设置goagent, 网上教程多见提到用fetch.php,这可能是以前的老版的goagent的名字,lz测试时下的3.1版的名字是index.php(把goagent的server目录下的index.php所在目录的内容,压成一个zip文件,上传到JAE)
  3. 修改local目录下的proxy.ini, lz主要改了这几处
    • [gae]下改 enable =0 (1为启用GAE,0为不启用,这里只使用PHP代理,不启用)
    • [gae]下的appid 随便改个,这里没用到,只要不是默认的goagent就行,lz改成了xxx(这步不知道需要不需要,因为gae禁止了,就应该不会用到他了)
    • [php]下的enable改成了1, listen 从127.0.0.1 改成了 0.0.0.0 (因为后面lz想试下屌丝机和ios设备在wifi连接环境下能否通过填这个代理而逆翻墙)
  4. 然后双击goagent, 如果连接成功的话,你只需要按照低逼格里的方法设置浏览器的代理服务器或者使用代理自动切换插件即可
此法lz已测试,确实可行,只是不知道何时JAE会停止试用,或者有流量限制等等,麻烦之处就是ios设备和屌丝机设备都需要手填代理或者 装代理切换软件(在家里的wifi环境下,在外面的4G环境下依然可以,只是屌丝机需要root,这样你才可以用GAE Proxy 这个apps, 同样ios设备也需要越狱,这样你才能装goagent客户端,教程1教程2
综上一下,网上经常看到如下的goagent简易教程,和上述的“逆”翻墙法的主要不同在
  1. 申请Google Appengine并创建appid。(显然这一步是去JAE)
  2. 下载goagent最新版 https://code.google.com/p/goagent/
  3. 修改local\proxy.ini中的[gae]下的appid=你的appid(多appid请用|隔开)(这里随便改个就行)
  4. 双击server\uploader.bat(Mac/Linux上传方法请见FAQ),上传成功后即可使用了(地址127.0.0.1:8087)(这步是你自己根据具体你用的云服务的不同而定,比如京东我是自己上传了个zip文件)
  5. chrome请安装SwitchySharp插件,然后导入这个设置https://goagent.googlecode.com/files/SwitchyOptions.bak,或备份下载地址
  6. firefox请安装FoxyProxy,Firefox需要导入证书,方法请见FAQ

高逼格方法:

虽然上面的中等逼格方法里,我们用到了代码,略微提升了逼格,但作为一个梦想是进ILM的屌丝男而言,我们不能止步于此!
中等逼格方法的缺陷是,用之前电脑上要双击goagent.exe,当然你可以放在自动启动里,但是你的ios和屌丝机设备依然需要越狱和root才能“自动翻”,不然你就得每次手填代理
为了提升逼格,我们在此可以使用能够刷dd-wrt 或者 tomato 固件的路由器,lz在此推荐 asus的 rt-n16(此乃经典之作)和前几年的rt-n66u ( 虽然现在已有新的rt-ac66u,土豪可以直接入手此款),这个思路就是把goagent直接装在你的路由器里,不过这要视你的路由器刷完tomato等自制空间后的剩余空间而定(在dd-wrt官网数据库可以查询),一般来说会不够空间,但是有些路由器可以插TF(micro sd)卡(教程),比如rt-n66u,当然你得拆开它才能插进去(因为厂商没打算让你自己乱插),这是最高逼格法,次高法则是直接插个优盘得了.
最高逼格法由于操作步骤较复杂,这里只列出大致步骤,详细步骤见各位达人先辈的总结纸.
  1. 在rt-n66u路由器上刷tomato固件,拆机后插入16GB micro sd卡(或者直接插个优盘如果不想追求极致逼格)
  2. 对“新”增加的空间分区,设置自动挂载
  3. 升级ipkg 安装optware
  4. 安装BusyBox
  5. 划分SWAP交换空间
  6. 复制GoAgent客户端复制进opt\ect\goagent文件夹 并且修改INI文件设置APPID
  7. 如果想高逼格就自行编译安装gevent,需要安装python2.7 greenlet cython pyOpenSSL
  8. 设置GoAgent自动启动
在最高逼格下,你得到了一个只要连上他的wifi,就能自动翻墙,对国外网站自动使用goagent的代理,对国内网站不使用代理,ios和屌丝机无需做任何设置,当然,如果你在外面4g移动上网的时候,你还是得需要低逼格法中提到的越狱或root之后的那些自动切换系统proxy的apps,不过已经算是自动了(当然在此我们这的逆翻墙法讨论里,结果就是得到了一个 只要连上他的wifi,就能自动“逆”翻墙的路由器,对于国外网站直连,但是对于国内网站就自动goagent翻回去,结果就是各种国内视频网站的限制都被跳过了,手机上的虾米apps也可以用了)

超高逼格法

关键词 MikroTik, RouteOS & RouteBoard
lz没体力折腾了…

人肉高逼格法

在国内家里放个tomato路由器,或者Raspberry Pi,反正费电少,把goagent的server放上面,当然你也可以在上面来个VPN server,那你在国外的之后之接连到那个VPN就行了,tomato路由器里直接就有设置,当然ios或者屌丝机设备上也有,不过这个逼格略低,土豪可以放个QNAP或者Synology的NAS在国内家里….(反正上面都带SSH server, VPN server,厂商都给你配好了,点个钮就启用了,就算你不装goagent在上面,你也可以用网上随处可见的SSH或者VPN翻墙法,这其实就相当于你买了个独享的VPN … 如果你是屌丝,那你可以用tomato路由器当 SSH server 或者VPN server,虽然这也是装好的,但是屌丝气质立显…. )

极致高逼格法

我是土豪我怕谁!直接Taobao买个国内VPN包终身!(orz 你不用看上面的一大段了其实 …..)
edit:
近年来流行的是 shadowsocks 法,不过需要买vps。
-----------
GoAgent的逼格远没有Unblock Youku高啊, 完全可以运行Unblock Youku的Nodejs服务器 + Privoxy。