网络请求流程学习

307 阅读2分钟

image.png

redir-host模式请求流程:
第一步:PC发送谷歌dns请求到软路由器中的留学程序克拉失。
第二步:向留学程序设置的nameserver的dns服务器同时请求谷歌的ip,谁第一个返回就用谁的结果,返回来给pc的ip,大概率是一个被污染的ip。(redir-host模式必须返回一个真实的ip给pc)这时,克拉失将返回的ip和域名存放它的映射表里。 第三步:PC用这个ip发送http请求到路由器克拉失,克拉失在映射表中找到ip相对应的域名,然后用这个域名进行规则匹配,如果匹配为代理,就将域名和其它数据加密发送给远程节点服务器,远程节点服务器对域名再进行dns请求并进行数据请求,最后将加密的数据返回给路由器中的克拉史,解密后返回给pc。

关于fallback服务器(只针对redir-host模式):
如果设置了fallback dns服务器(不会被污染的dns服务器,比如加密的dot和doh),如图片中:第二步的dns请求会同时向nameserver和fallback设置的dns服务器请求dns,如果返回的ip不是国内的,将使用fallback设置的dns服务器返回的ip以防止dns污染。

fake-ip模式请求流程:
第一步:PC发送谷歌dns请求到软路由器中的留学程序克拉失。
第二步:克拉失直接会返回来给pc一个假的谷歌ip,并没有进行dns请求,因为少了一个dns请求环节,所以速度更快。同时也将返回的假ip和域名存放它的映射表里。
第三步:PC用这个假ip发送http请求到路由器克拉失,克拉失在映射表中找到假ip相对应的域名,然后用这个域名进行规则匹配,如果匹配为代理,就将域名和其它数据加密发送给远程节点服务器,远程节点服务器对域名再进行dns请求并进行数据请求,最后将加密的数据返回给路由器中的克拉史,解密后返回给pc。