tiny教程很多,这篇教程,只是小白写给小白的。
先从一张抓包图讲起吧。
1.一个正常的抓包是下图这样的
里面的内容各自代表
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.这个模式的抓包图是这样的
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.把换成@*+后的抓包图是这样的
效果跟一个一样,干扰只要达到让计费系统忽略让联网系统通过的目的就行了,没必要搞些乱七八糟的字符,没用,很乱不说,有时候还影响网速和网页
24.伪装就不用说了,本身就是伪装,就再加干扰了,老老实实的用Host: 伪装域名/IP就行了,无非就是换换伪装域名/IP
25.https模块对比http模块是一种不同的协议,除了请求头里没有后缀也就是[uri]外,其他都是一样的,不再细说
26.最后说一下tiny的用法
①用tiny请先root手机,不root的请用fugue、fmns3、ssx、ssr、openvpn、注射器、eproxy、kpn等
②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.希望看到这篇教程的小白能通过它入门,虽然这篇只是浅显的基本功,但只有把基本功学好了,才能去研究双首、三首、前缀、后缀、彩伪、虾米酷狗代码、云代理、圣子、net、无伪等等
29.欢迎留言,一起交流!!!