博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
web盲区(DNS,http)网站术语分析
阅读量:6324 次
发布时间:2019-06-22

本文共 6245 字,大约阅读时间需要 20 分钟。

1.访问网站流程。(以访问http://12042068.blog.51cto.com/为例)

    第一步:从浏览器输入网址http://12042068.blog.51cto.com/,会车后,系统先查找hosts文件和本地的DNS缓存。
确定是否存在http://12042068.blog.51cto.com/这个域名对应的IP地址。一般hosts都是局域网做测试用(ip
 域名),第一次访问一般不会有DNS缓存。
    第二步:由于本地hosts和DNS缓存没有http://12042068.blog.51cto.com/域名对应的解析记录,那么。系统把浏览
        器需要解析的内容发送给本地配置的DNS服务器。(LDNS即local DNS)如果没有,会继续请求别的DNS服务器。
    第三步:LDNS服务器会从DNS系统的(".")根服务器查找,但是根服务器没有12042068.blog.51cto.com域名对应的解析
        记录。但是,根下面有12042068.blog.51cto.com对应的顶级域.com的的解析记录,根会把.com的服务器的地址返回给
    LDNS服务器。
    第四步:LDNS获取.com对应的DNS服务器地址后,会请求.com服务器解析12042068.blog.51cto.com域名。不过,.com服务
        器没有12042068.blog.51cto.com域名的解析记录。但是,.com会包含51cto.com域名所对应的域名,并返回给LDNS。
    第五步:LNDS获取51cto.com的对应的域名地址,去请求51cto.com解析12042068.blog.51cto.com。51cto.com对应的
        域名DNS服务器是授权DNS服务器(一般这个域名服务都是购买域名时,用于域名解析的服务器。)如果,没有解析成功
    可能是该域名没有被授权(没有被购买使用)或是网站没有假设好。
    (也又可能接着向51cto.com请求.blog.51cto.com的解析记录。就这样。从后向前逐级发起请求,直到找到)
    第六步:51cto.com域名DNS服务器把12042068.blog.51cto.com对应的IP解析发送给LDNS
    第七步:LDNS把来自授权域名服务器51cto.com对应的ip解析记录发送浏览器,并且把该域名和ip缓存起来,(这些缓存有NDS TTL
        控制在指定TTL内不过期)
    第八步:浏览器获取到12042068.blog.51cto.com对应的ip,对改ip发起请求,网站服务器响应请求并处理。将客户请求内容返回
        给浏览器。
    (第一次访问是这样:连续访问后,本地系统和LDNS层级都会有缓存,再次访问的话,就直接读取缓存记录)
2.所谓的登录外网,访问Google等网站。
      一般免费的都是直接写入hosts文件。把ip和对应的域名做号本地解析。访问的时候直接读取本地解析。不用查询LNDS服务器
  巧妙的躲过DNS防火墙(防火长城)。还有我们访问的Google不可能是官网。大多是和官网有关联的镜像站点。
3.关于根DNS服务器
    根域名服务器(root name server) 是互联网域名解析中最高级的域名服务器。返回顶级域名的地址。截至,2014年10月全球共有
504台服务器,被编号为A-M共13个编号大部分借由任播(Anycast)技术(根据路由拓扑图,开决定最快,最好的路线),
编号相同的根服务器使用同一个IP,504台根服务器总共只使用13个IP。其中A-M这13台服务器大都在美国(军方,互联网
及相关权威部门,大学)荷兰和瑞典及日本各有一台。
前面提及的504,只有13台是独立的。余下的都是镜像站点。(也就是拷贝13台主机的内容共享)。
    中国大陆在北京有三台编号为L的镜像,编号为F、I、J的镜像各一台,共6台;
    香港有编号为D、J的镜像各2台,编号为A、F、I、L的镜像各一台,共8台;
    台湾则有编号为F、I、J各一台,共3台。
4.下面是chrome浏览器解析出来的访问http://12042068.blog.51cto.com/的HTTP协议的请求头部信息和返回的头部信息
返回头部的主要信息:
    Request URL:http://12042068.blog.51cto.com/
    Request Method:GET
    Status Code:200 OK
    Remote Address:120.55.238.29:80
请求头部;
    GET / HTTP/1.1
    Host: 12042068.blog.51cto.com
    Connection: keep-alive
    Pragma: no-cache
    Cache-Control: no-cache
    Upgrade-Insecure-Requests: 1
    User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36
    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
    Accept-Encoding: gzip, deflate, sdch
    Accept-Language: zh-CN,zh;q=0.8
    Cookie: _ourplusFirstTime=117-1-17-16-7-31; www51cto=D9E6C415373C4981F6F5E2778D62624BABwY; _ourplusReturnCount=7; _ourplusReturnTime=117-1-18-9-38-32; pub_cookietime=864000; refreshlimit=1484800933%09%2Fuser_index.php%3Faction%3Daddblog_new; Hm_lvt_2283d46608159c3b39fc9f1178809c21=1484964849,1484964919,1484970898,1484971967; Cto_lvt_d2cb9d6ccefce8d1e89582c2a2a24cc0=1484964850,1484964919,1484970898,1484971967; lastvisit=0%091484971964%09%2Fmod%2Fedu_void.php%3F
响应头部的详细信息
    HTTP/1.1 200 OK
    Date: Sat, 28 Jan 2017 09:02:43 GMT
    Content-Type: text/html
    Transfer-Encoding: chunked
    Connection: keep-alive
    Set-Cookie: aliyungf_tc=AQAAAC36Jk9mLAoAUihGei5+IG/9P2ni; Path=/; HttpOnly
    Set-Cookie: acw_tc=AQAAAFI79XO2LgoAUihGeuYewiNEfQa3; Path=/; HttpOnly
    Set-Cookie: PHPSESSID=40e4c04395327fe99a6362caff1ee99f; path=/
    Expires: Thu, 19 Nov 1981 08:52:00 GMT
    Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
    Pragma: no-cache
    Set-Cookie: lastvisit=0%091485594163%09%2Findex.php%3F; expires=Sun, 28-Jan-2018 09:02:43 GMT; path=/; domain=.blog.51cto.com
    If-Modified-Since: Sat, 21 Jan 2017 16:00:00 GMT
    Vary: Accept-Encoding
    Content-Encoding: gzip
    Vary: Accept-Encoding
    Load-Balancing: web06
    Load-Balancing: web06
5.浅谈HTTP协议
    HTTP协议,全称(HyperText Transfer Protocol 超文本传输协议)该协议主要是:发布和接收HTML页面的。
    目前广泛用于:web浏览器和web服务器之间的通信。目前版本是HTTP/1.1.HTTP协议的重要应用WWW服务的
    端口号80.还有另一个加密的web服务https的端口号443(主要用于支付)。
    HTTP报文一般分为2种:requset message 请求报文 和 response message 响应报文
    1.请求报文。
        包含一系列的动作:以前面的举例说明:
        GET / HTTP/1.1
        请求的方法  和http的版本
        Host: 12042068.blog.51cto.com
        请求的主机
        Connection: keep-alive
        发送本次连接后,返回信息后继续链接。如果参数:close 则关闭连接
        Pragma: no-cache
        Cache-Control: no-cache
        缓存的机制  no-cache 一般就是不缓存。(包括上面的)
        Upgrade-Insecure-Requests: 1
        (这个是W3C最新的修订。原本是HTTPS :1  为了支持https 的。这里更名为Upgrade-Insecure-Requests)
        User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36
        发起请求的客户端浏览器的信息
        Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
        请求的内容
        Accept-Encoding: gzip, deflate, sdch
        请求支持的内容:比如gzip 压缩传输
        Accept-Language: zh-CN,zh;q=0.8
        请求支持的语言。
        Cookie: 
        服务器生成的代码,服务器会回收的。cookie(一般会在本地缓存。有些需要用户名密码的网站。我们输入一次。点击记录密码
        再次进入的时候就不需要再次输入了。就是cookie起到的作用)便于服务器和浏览用户交互。
    2.响应报文。
        HTTP/1.1 200 OK
        http协议 返回的状态码和 状态信息
        Date: Sat, 28 Jan 2017 09:02:43 GMT
        时间
        Content-Type: text/html
        传输文件的类型
        Transfer-Encoding: chunked
        Connection: keep-alive
        响应连接并传输信息后,继续保持连接
    当然,只有头部信息是不可以。这些头部信息是浏览器读取的。我们看到的页面才是主体内容。
6.HTTP的响应状态码:HTTP status code 由三位数字组成。用于判断请求的是否成功,和不成功的原因。
总体来判断:500的代码多与服务器相关。
  

状态码

简单描述

200-OK

代表访问成功

301

永久跳转。一般是网站更换域名或者输入baidu.com (省去www)

403-Forbidden

禁止访问,可能是服务器预先配置了策略

404-not  Found

服务器上找不到页面(可能服务器的路径有问题)

500

可能服务器的安全策略没有关闭。如selinux在作怪

501

通常是代理服务器的节点问题

503

服务器宕机或是代理节点有问题

504

网关超时,多半是服务器过载,没有在规定时间内把数据传给前端

7.网址(学名 URL uniform resource location 统一资源定位符)

    一般有3部分组成:协议 ip地址 资源目录地址

协议

分隔符

Ip地址或域名

分隔符

资源目录地址

http

://

12042068.blog.51cto.com

/

12032068/1894334

8.静态网页VS动态网页

    本质区别是否需要后端数据库的支持。
    从URL形式上看。动态的一般含有 ?或 & 之类的特殊符号。
    https://www.kernel.org/这个网站页面就是静态的
    http://12042068.blog.51cto.com/12032068/1894334就是典型的动态网站
    在用浏览器查看加载元素的时候,发现好多这样的引用
    https://tongji.51cto.com/frontend/index?cc=0&ck=1&cl=24-bit&ds=1366x768&ep=44&et=3&fl=24.0&ja=0&ln=zh-CN&lt=1485594167&nv=0&rnd=788547715&si=d2cb9d6ccefce8d1e89582c2a2a24cc0&st=3&su=http%3A%2F%2F12042068.blog.51cto.com%2F&v=1.1.0&lv=3&ft=1485599898&u=http%3A%2F%2F12042068.blog.51cto.com%2F12032068%2F1894334&fft=1485599943
    但是,为什么这个看起来像是静态的呢。
    这个是伪静态技术。大多网站靠访问量生存。而带来访问量的源头是互联网引擎(百度就是考引擎成暴发户的)的收录
    搜索引擎对静态网页的收录十分友好。所有,大家就把动态网站伪装成静态。
9.网站流量术语
    IP(独立IP)指独立ip数。国内大多是通过局域网共享上网。即路由器NAT地址转换上网,每个计算机在局域网的ip都独立,但是
    在公网上,必须把每个私网地址转换成路由器接口的固定公网ip。所有,公用一个公网ip上网的人数无论多少。在统计IP时,都
    算作一个ip。
    PV (page view) 即页面浏览。只要打开一个页面就算一个PV。一般逛个淘宝。几百个PV(页面)都不止吧。
    UV(Unique visitor 独立访客)是指访问的浏览器的客户端媒介(如笔记本,手机)比如你电脑手机都访问一个网站。就算2个UV。
    举个例子:你们宿舍6个人,都拿一个笔记本电脑浏览同一个电影网站。一小时内都看了30个网页。
    那么该网站的数据是:IP为1 (你们宿舍只能有一个公网ip出入)UV 为 6X1=6  PV 6X1X30=180.

本文转自 swallow_zys  51CTO博客,原文链接:http://blog.51cto.com/12042068/1894369,如需转载请自行联系原作者
你可能感兴趣的文章
Mac OS X 数据库 管理工具 无需破解navicat 用Valentina Studio
查看>>
TensorFlow 与 Apache Spark 结合:雅虎开源“TensorFlowOnSpark”
查看>>
HDS以乐高积木思路构建其超融合型解决方案
查看>>
融合数据保护产品评估三要素
查看>>
MySQL向GraphQL迁移
查看>>
猎豹移动任命范承工为CTO 加速在硅谷扩张计划
查看>>
通信基础设施正日趋完善 通信网络安全面临更大挑战
查看>>
php中处理汉字字符串长度:strlen和mb_strlen
查看>>
那个做投票社交的“纠纠”开始推出双人CP直播
查看>>
《规范敏捷交付:企业级敏捷软件交付的方法与实践》——1.7 是IT解决方案,而不只是软件...
查看>>
微软CEO纳德拉:我们不会因脱欧而撤出英国市场
查看>>
详解如何用 LSTM 自动识别验证码
查看>>
《工业控制网络安全技术与实践》一一2.4 工业控制系统现场设备的种类
查看>>
《云计算:原理与范式》一2.3 迁移到云的七步模型
查看>>
诺基亚瞄准物联网、智能城市市场,推大量解决方案
查看>>
IDC将在赞比亚建500MW太阳能电站
查看>>
《代码之殇》(原书第2版)——第1章 项目管理失当
查看>>
微软准备再次裁员2850人 一年之内完成
查看>>
Cignal半年报称云公司和中国运营商采购撑起光设备市场增长
查看>>
《MonoTouch开发实践指南》一3.5 实现自定义UIView
查看>>