Go-Agent原理分析及FQ介绍
作为一个程序员,相信大家是极度依赖google/stackoverflow/github的,可是国内有强大的GFW存在,以至于编程少了很多乐趣。
最近闹GFW狂潮,很多Chrome插件被封,连Shadow-Socks/Go-Agent的github主页都下线了,又得花心思找各种VPN,关键还不靠谱。
翻不了墙这件事激起我搞清楚Go-Agent的兴趣,以及自己重新来部署Go-Agent的动力。
文章中没有给出纯手工部署Go-Agent并动态更新google ip的具体操作步骤,但其中原理还是会介绍的,具体步骤可以参考go-agent-crack和小白教程。
首先来说说Go-Agent的原理。先看图,通过图示相信大家了解大致的FQ过程。

上图基本说明了FQ的过程,红线是直连外网,当然这是不被允许的。那么Go-Agent大神出现了,依赖google提供的gae服务,解决了我等程序员小屌丝的苦恼。
简单说明一下,Go-Agent其实是在本地建立了代理服务器,代理了本地上网的功能,不直接走网络请求。
主要分为两个部分来实现,其一是Go-Agent server,用来部署到google appengine,实现真实的FQ过程。
其二是Go-Agent local,用来代理本地网络请求,并将其发往Go-Agent server,由server去请求墙外数据,然后再返回给local,最后local将数据返回给客户端。
根据Go-Agent的配置项,其中比较重要的两项是appid和google ip,appid即google appengine上申请的应用id,而google ip则是local将数据发往appengine的ip。
现在网络上流传的关于Go-Agent 配置FQ的文章,大多数是国内还未封杀google的时候写的,主要步骤涉及上面重要项之一appid。
而现在虽然能成功部署server到appengine,也能本地开启Go-Agent 代理服务器,但就是无法FQ,其原因主要是重要项之二google ip。
如果没有有效的google ip,Go-Agent local无法将请求转发到部署在appengine上的Go-Agent server。
那么如何获取有效的google ip,gogo-tester大神又出现了,为我们扫清了获取google ip的障碍,可以参照gogotester项目,获取到有效后更新Go-Agent local配置文件iplist项,在此基础上运行local代理,即可实现FQ。
其中,省略很多细节,关于如何申请appid,如何部署Go-Agent server,如何在Go-Agent local中配置appid和iplist,可参考小白教程。
最后,为了让大家免于手动配置Go-Agent的麻烦,推荐大家使用go-agent-crack或者XX-Net项目。
go-agent-crack是一个内置了appid和google ip的开源项目,无须自己部署go-agent server到google gae,下载后启动本地local/goagent即可。具体可参考小白教程。
XX-NET基于Go-Agent ,将所有的配置自动化、可视化,其操作和部署流程非常简单。如果大家在部署XX-Net的过程中遇到任何问题,可查看项目提问区,实现不行可留言。
以上记录自己纯手工部署Go-Agent的过程,以及探索自动化部署Go-Agent的结果。
注释:文章本就是与FQ有关,其中提到的网络连接有可能被墙,如果疑问可以留言。另外,FQ不易,且翻且珍惜。
Go-Agent原理分析及FQ介绍的更多相关文章
- (转)Android 系统 root 破解原理分析
现在Android系统的root破解基本上成为大家的必备技能!网上也有很多中一键破解的软件,使root破解越来越容易.但是你思考过root破解的 原理吗?root破解的本质是什么呢?难道是利用了Lin ...
- synchronized 原理分析
synchronized 原理分析 1. synchronized 介绍 在并发程序中,这个关键字可能是出现频率最高的一个字段,他可以避免多线程中的安全问题,对代码进行同步.同步的方式其实就是隐 ...
- 知识点:synchronized 原理分析
synchronized 原理分析 1. synchronized 介绍 在并发程序中,这个关键字可能是出现频率最高的一个字段,他可以避免多线程中的安全问题,对代码进行同步.同步的方式其实就是隐式的加 ...
- Android 系统 root 破解原理分析 (续)
上文<Android系统root破解原理分析>介绍了Android系统root破解之后,应用程序获得root权限的原理.有一些网友提出对于root破解过程比较感兴趣,也提出了疑问.本文将会 ...
- 转载:AbstractQueuedSynchronizer的介绍和原理分析
简介 提供了一个基于FIFO队列,可以用于构建锁或者其他相关同步装置的基础框架.该同步器(以下简称同步器)利用了一个int来表示状态,期望它能够成为实现大部分同步需求的基础.使用的方法是继承,子类通过 ...
- AbstractQueuedSynchronizer的介绍和原理分析(转)
简介 提供了一个基于FIFO队列,可以用于构建锁或者其他相关同步装置的基础框架.该同步器(以下简称同步器)利用了一个int来表示状态,期望它能够成为实现大部分同步需求的基础.使用的方法是继承,子类通过 ...
- Servlet过滤器介绍之原理分析
zhangjunhd 的BLOG 写留言去学院学习发消息 加友情链接进家园 加好友 博客统计信息 51CTO博客之星 用户名:zhangjunhd 文章数:110 评论数:858 访问量:19 ...
- Hadoop数据管理介绍及原理分析
Hadoop数据管理介绍及原理分析 最近2014大数据会议正如火如荼的进行着,Hadoop之父Doug Cutting也被邀参加,我有幸听了他的演讲并获得亲笔签名书一本,发现他竟然是左手写字,当然这个 ...
- AbstractQueuedSynchronizer的介绍和原理分析
简介 提供了一个基于FIFO队列,可以用于构建锁或者其他相关同步装置的基础框架.该同步器(以下简称同步器)利用了一个int来表示状态,期望它能够成为实现大部分同步需求的基础.使用的方法是继承,子类通过 ...
随机推荐
- 树状数组+STL FZU 2029 买票问题
题目传送门 题意:中文题面 分析:隔了一个考试周再做,开始没有什么思路,感觉能用线段树/树状数组维护,树状数组维护最小值不会去写线段树,结果超时.后来发现只要维护前缀几个人以及用优先队列/set维护最 ...
- Codeforces 611C New Year and Domino(二维前缀和)
题目大概说给一个n*m个格子,格子'.'表示可以放东西,多次询问矩形区域(x1,y1)-(x2,y2)有几种放一张1*2的骨牌的方案数. 分别考虑横着竖着放,预处理出二维的前缀和,即sum[x][y] ...
- 【转】Xcelsius2008 水晶易表问题 部分汇总
要使用 Xcelsius 2008,需要安装 Adobe Flash 吗? 若要正常运行 Xcelsius 2008,必须安装 Adobe Flash Player 版本 9.如果在安装过程中没有安装 ...
- unity 解析tmx 2
using UnityEngine; using System.Collections; using System.Collections.Generic; using System.IO; usin ...
- 【BZOJ3531】[Sdoi2014]旅行 树链剖分+动态开点线段树
[BZOJ3531][Sdoi2014]旅行 Description S国有N个城市,编号从1到N.城市间用N-1条双向道路连接,满足从一个城市出发可以到达其它所有城市.每个城市信仰不同的宗教,如飞天 ...
- Storm on Yarn :原理分析+平台搭建
Storm on YARN: Storm on YARN被视为大规模Web应用与传统企业应用之间的桥梁.它将Storm事件处理平台与YARN(Yet Another Resource Negotiat ...
- HDU 3333 & 主席树
题意: balabala SOL: 这题用主席树怎么做呢...貌似一模一样...一个一个建n棵的线段树.先把上一棵树复制下来,当a[i]出现过,就把这棵树里的那个位置去掉------一模一样的思维.. ...
- ACM 蛇形填数
蛇形填数 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 在n*n方陈里填入1,2,...,n*n,要求填成蛇形.例如n=4时方陈为:10 11 12 19 16 1 ...
- SpringMvc出现No mapping found for HTTP request with URI的终极解决办法
No mapping found for HTTP request with URI 出现这个问题的原因是在web.xml中配置错了,如: <servlet> <servlet-na ...
- POJ 1473 There's Treasure Everywhere!
题目链接 小小的模拟一下. #include <cstdio> #include <cstring> #include <string> #include < ...