【技术教程】超详细TinyProxy编写配置教程

一个Tiny模式,主要就是全局,dns解析+两个模块
………………………………………………………………
全局无非就是那几个mode啊,65080什么的。
随便就行
只要有uid=3004还有mode=wap或net就可以了
………………………………………………………………
uid是全免,mode是联网方式
其他看你自己任意发挥,强迫症你就全部打上去
………………………………………………………………

dns解析我也不说了,常用的那个就可以了。
最多换ip,自行发挥
………………………………………………………………
所以呢,最主要的,还是两看个模块
………………………………………………………………
首先,ip和port一般都是固定的了,10.0.0.172:80
当然,如果你用圣子ip就另外说
其次,http_others=on
还有https_connect=on这两个
后面这个https模块的比较常见,第一个http模块的不常见
………………………………………………………………
至少我写模式一般不会用http_others
假如你https模块首头是CONNECT
那你就加上https_connect=on
有什么用嘛,你就别知道太多了。。。
…………………………………………………………………
说到http_del一般常见就是
X-Online-Host、Host、x-online-host、host
不常见的有Connection、Refer等等就不说了,反正也是些废话
这些其实是他们从hap语法中移植过来的,有用吗?
………………………………………………………………
我不懂,我个人见解:
干扰│或者│不检测的字符
也就是说假如一个模式出现这个http_del=”Host,X-Online-Host,Refer”;
我就会修改成http_del=”Host,X-Online-Host”;
………………………………………………………………
另外,关于X、H大小写的问题,
因为我这里不检测x、h,所以,我也就不是懂,
我个人见解是有点区别。
因为,我看过有些模式x、h可免,
但是换X、H就不可以免。
或者x、h个别软件啥的不能用,换了X、H就可以。
………………………………………………………………
这个有三个可能原因
①不检测x、h所以起到干扰作用,为其他部分铺垫,
比如http_first=”[method] [uri] [version]\r\nx-online-host: wap.gx.10086.cn\rHost: [host]\r\nHost: wap.gx.10086.cn\r\n”;◎x-online-host干扰H真②检测!但x、h和X、H不同③检测!但x、h和X、H相同,只是优先级不同导致

%title插图%num

%title插图%num

 

1.一个正常的抓包是下图这样的

%title插图%num

 

里面的内容各自代表
HyperText Transfer Protocol(传输协议)
GET /qq_product_operations/banner/20180502liantong/wangka1242X150_7.png?mType=Other HTTP/1.1
(请求头)
User-Agent: Dalvik/2.1.0 (Linux; U; Android 5.1.1; Redmi Note 3 MIUI/V7.2.2.0.LHOCNDA)
(浏览器身份)
Host: sqimg.qq.com
(域名/IP 地址和端口号)
Connection: Keep-Alive
(保持连接,等待后续请求)
Accept-Encoding: gzip
(压缩种类和方法)

(结尾)
2.运营商是根据Host后面的域名/IP计费的,白名单域名/IP不计费
3.有一段代码可以把Host后面的正常域名/IP替换成白名单域名/IP,从而达到不计费的目的
4.这段代码就是tiny
5.tiny的原理是,把原来的域名/IP删掉,然后替换成白名单域名/IP,从而瞒过运营商的计费系统
6.可是仅仅替换掉还不行,因为这样只能瞒过计费系统,却瞒不过联网系统,联网系统只有看到真实域名/IP才给上网
7.所以,如果能做到既能让联网系统认为网络请求正常,又能让计费系统认为你访问的是白名单,那么就达到了免流量上网的目的
8.这个“如果”的实现方式是模式
9.模式是给tiny代码下达的命令,你下什么命令,tiny就输出什么结果
10.当输出的结果达成了如果的条件,也就实现了如果
11.下面用一个模式来说明,这个模式对应开头的抓包

12.不过在讲模式之前,先讲下模式里的主要字符含义,同样对应开头的抓包
[method]=[M]代表GET(也代表POST、CONNECT,都是请求方式)
[uri]=[U]代表/qq_product_operations/banner/20180502liantong/wangka1242X150_7.png?mType=Other俗称后缀
[version]=[V]代表HTTP/1.1俗称网络协议
代表回车

代表结尾

同样代表结尾
[host]=[H]代表sqimg.qq.com俗称真实域名

13.完整模式
mode=wap;
listen_port=65080;
daemon=on;
worker_proc=0;
uid=3004;
#http模块
http_others=on;
http_ip=10.0.0.172;
http_port=80;
http_del=”Host,X-Online-Host”;
http_first=”[method] [uri] [version]
Host: [host]
Host: migumovie.lovev.cn
“;
#https模块
https_connect=on;
https_ip=10.0.0.172;
https_port=80;
https_del=”Host,X-Online-Host”;
https_first=”[method] / [version]
Host: [host]
Host: migumovie.lovev.cn
“;
#解析模块
dns_tcp=http;
dns_listen_port=65053;
dns_url=”114.114.114.114”;

14.这个模式的抓包图是这样的

%title插图%num

 

15.这个模式里面,除了
http模块
http_del=”Host,X-Online-Host”;
http_first=”[method] [uri] [version]
Host: [host]
Host: migumovie.lovev.cn
“;
和https模块
https_del=”Host,X-Online-Host”;
https_first=”[method] / [version]
Host: [host]
Host: migumovie.lovev.cn
“;
这两段外
其他都是固定的,不需要改,也不需要深究为什么,当成模式的固定架构就好了
16.当然是可以改的,但是要等你熟练了以后,再去试,去研究,没人能还不会走就学怎么跑
17.下面讲这两段的含义
http_del=”Host,X-Online-Host”;代表删除开头抓包里的Host: sqimg.qq.com

http_first=”[method] [uri] [version]
Host: [host]
Host: migumovie.lovev.cn
“;代表添加一行GET /qq_product_operations/banner/20180502liantong/wangka1242X150_7.png?mType=Other HTTP/1.1
,一行 Host: sqimg.qq.com

,一行Host: migumovie.lovev.cn

组合起来就是添加了下面这段内容:
GET /qq_product_operations/banner/20180502liantong/wangka1242X150_7.png?mType=Other HTTP/1.1
(完整的请求头)
Host: sqimg.qq.com

(联网系统通过,计费系统忽略)
Host: migumovie.lovev.cn
(联网系统忽略,计费系统通过)
18.为什么计费系统会忽略?因为Host前面有个 ,而计费系统只有Host前面没有任何字符时才会去读取;但联网系统只要看见完整的Host: [host]就通过,不管前后有没有字符、有多少字符

19.为什么联网系统会忽略?因为联网系统只认完整的Host: [host];但计费系统只要看见Host前面没有字符,就会以后面的域名/IP判断计费方式,后面的域名是什么?咪咕影院啊,不扣流量的域名
20.多看两遍,是否明白了,模式的精髓就是……
干扰真实
添加伪装
21. 就是干扰
migumovie.lovev.cn就是伪装
22.干扰理论上来说也可以是ac、关注我你会火等等任何字符,但是那只是理论,因为大部分字符都不被联网系统认可,一看见就直接忽略了,常用的干扰通常是/、、 、 、X-Online-/r、@、空格等等,别问我为什么,因为我不是联网系统的亲戚,只能说这是大家的经验吧,用这些干扰相对来说容易有网。

23.把 换成@*+ 后的抓包图是这样的
效果跟一个 一样,干扰只要达到让计费系统忽略让联网系统通过的目的就行了,没必要搞些乱七八糟的字符,没用,很乱不说,有时候还影响网速和网页

%title插图%num

 

24.伪装就不用说了,本身就是伪装,就再加干扰了,老老实实的用Host: 伪装/IP
就行了,无非就是换换伪装/IP
25.https模块对比http模块是一种不同的协议,除了请求头里没有后缀也就是[uri]外,其他都是一样的,不再细说
26.最后说一下tiny的用法
①用tiny请先root手机,不root开热点不免
②tiny需要配合防跳使用,防跳很多,推荐JJ8.8
③防跳内置的接入点一般是cmwap,127.0.0.1,65080
④所以模式里相应的部位要对应起来,也就是mode=wap,listen_port=65080
⑤手机APN也要对应起来,如图
⑥防跳最好用脚本版,原生、省电,一般步骤是用re浏览器放进模式(模式名字看防跳设定,一般是tiny.conf)后放到system/xbin里,然后长按右键给777权限(含子文件)后点开启模块即可,一般防跳里都有关键性的说明
⑦开启后调内网,作者习惯用iphunter,选择飞行调网后,让它自动调到http和https均通过为止
27.什么,为什么圣子模式和云代理模式不需要调内网?你连这些都知道,还看我这篇教程干嘛?
28.希望看到这篇教程的小白能通过它入门,虽然这篇只是浅显的基本功,但只有把基本功学好了,才能去研究其他的

%title插图%num

标签

发表评论