admin管理员组文章数量:1530330
实际上所谓上网这个过程分为三个大的区块,一块是客户端,一块是网络传输层,一块是服务端。
从输入网址开始,这个网址在客户端就会有一个解析,首先浏览器如果有钩子,可能会直接对这个网址做出判断和反馈,比如国内大部分第三方浏览器(IE浏览器基础上加壳的那种),都会直接把地址输入关键词后应该跳转到微软搜索页的那个url劫持掉。
所以:
第一步是浏览器对url的判断和劫持;
第二步是本地host文件的判断;在360崛起之前,host文件也是各种木马和流氓软件最爱处理修改的文件,不声不响就把你的hao123给劫持了,而且你几乎看不出来哪里改了。
逃脱本地客户端的判断后,这个域名查询请求会发到服务商的dns服务器,服务商的dns服务器会检查缓存,如果不存在你要访问的这个域名或者缓存状态已经过期,会访问根域名服务器,根域名服务器也会先检查缓存,如果无法直接返回结果,会检查这个域名是哪个dns服务器负责解析的,然后将请求转发过去,获得这个域名所对应的ip,然后返回给本地服务商的dns,本地服务商的dns就更新缓存,然后把ip返回给客户端。
当然这里本地dns服务商也可能基于某种目的劫持域名,所以有时候,有些用户会把自己电脑上网配置的dns修改为更可信赖的公共dns,而不是地方电信的dns。(地方电信的劫持能力当然不止是dns,还包括内容替换,强插。不过这是后面的内容。)
关于解析到ip,复杂点的还可以说说cdn的原理和机制,以及针对不同地区用户智能解析的机制。
到了ip这里,浏览器发出请求,去指定ip获取指定的文件,这里涉及路由寻址和报文传输。
然后到了指定ip,服务器会在80端口有一个守护进程接受这个请求,细说的话这里还有三次握手的协议,那么下面就是webserver是怎么工作的,静态页面的处理比较简单,动态脚本还需要一个解释器系统工作,执行一段代码后将返回结果输出。这里可能又涉及有服务端缓存的,数据库,负载均衡和轮询等等,也就是可能后面不是一台主机,而是一个集群。
返回的这个内容页往往又包含了大量的嵌入页面请求,比如css,比如各种小图标,小图片,这又涉及浏览器发出请求,这里也存在一些需要注意的逻辑,比如浏览器在发出请求时,对数量和排队的限制。此外,这个内容页可能还涉及了一些可执行代码,是在浏览器上执行的,这也对你看到什么有重要的影响。
在到了目标机房,以及数据返回你的电脑时,都存在一个在子网被劫持被篡改的风险,ARP欺骗,ARP协议是什么,为什么你要访问的内容会被劫持会被篡改。此外,在传输中会不会被侦听,会不会被篡改,除了GFW,还有强大的地方电信。
版权声明:本文标题:从浏览器地址栏输入网址,到网页彻底打开,中间都发生了什么? 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1726398239a1069011.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论