DNS解析流程
DNS简单来说就是进行域名和IP的转换,那该如何转换呢?既然要转换,肯定有转换表,那表应该存
哪个服务器上,怎样去请求域名服务器来进行转换,所以,这个转换的过程都是什么。而面试的时
经常会有这道题:当在浏览器输入网址按下回车之后,到浏览器回显网页,详细描述一下中间发生了神马?
一般来说,在windows里面的网络配置可以设置DNS地址,比如谷歌的8.8.8.8
如果没有手动设置的话,可能就是运营商提供的ISPDNS域名解析。那这种服务器该属于哪一层?
一般来说,域名解析服务器分为两种:
一种是只负责缓存的解析服务器:如谷歌的8.8.8.8,还有运营商提供的ISPDNS解析。
一种是专门负责某个域的解析,com域的服务器,org域的服务器等等。
当在浏览器敲下回车,
本机-->浏览器查看本地缓存
本机-->查看本地的host文件
本机-->本地的DNS缓存
本机-->ISPDNS ISPDNS首先会在缓存中查找是否之前有相同的记录
ISPDNS-->根域名服务器 ISPDNS会去请求根域名服务器,而全球有13个IP
根域名服务器-->ISPDNS 根域名服务器会返回对应顶级域名的NS记录,比如com的域名
ISPDNS-->com域的服务器 请求com域的权威服务器
com域的服务器-->ISPDNS com域的服务器就会发送IP给ISPDNS
ISPDNS-->本机 ISPDNS服务器就发送给本地。

在域名设置中,有多种解析方式,最常用的就是A记录,还有CNAME
A就是一个域名一个IP,这里的域名属于二级域名
而CNAME是一个域名指向另一域名,百度就是这样,如下所示:
先解析www.baidu.com得到www.a.shifen.com.
然后解析www.a.shifen.com.
[root@linux ~]# dig www.baidu.com
...
www.baidu.com. 571 IN CNAME www.a.shifen.com.
www.a.shifen.com. 229 IN A 61.135.169.125
www.a.shifen.com. 229 IN A 61.135.169.121
...
DNS解析流程的更多相关文章
- 用户访问网页流程、DNS 解析流程
一.用户访问流程 二.DNS解析流程 DNS( Domain Name System)是“域名系统”的英文缩写,是一种组织成域层次结构的计算机和网络服务命名系统,它用于 TCP/IP 网络,它所提供的 ...
- 简单理解DNS解析流程(一)
0x0 简单理解dns DNS服务器里存着一张表 表中放着域名和IP地址,域名和IP地址以映射关系保存,即一对一 浏览器访问某个域名,实际上是访问它的ip地址 所以浏览器需要知道域名对应的ip地址 如 ...
- DNS 解析流程
DNS( Domain Name System)是“域名系统”的英文缩写,是一种组织成域层次结构的计算机和网络服务命名系统,它用于TCP/IP网络,它所提供的服务是用来将主机名和域名转换为IP地址的工 ...
- DNS解析流程原理(图例)
13台根服务器的dns: 1.root-servers.net198.41.0.4美国2.root-servers.net192.228.79.201美国(另支持IPv6)3.root-servers ...
- 被动信息收集1——DNS基础 + DNS解析工具 NSLOOKUP使用
被动信息收集 特点: 基于公开渠道 与目标不直接接触 避免留下一切痕迹 标准參考--OSINT: 美国军方 北大西洋公约组织 名词解释 DNS--Domain Name System 域名系统 因特网 ...
- bind域名dns解析及主从服务的配置
bind域名dns解析及主从服务的配置 1.dns解析介绍 人们习惯记忆域名,但机器间互相只认IP地址,域名与IP地址之间是多对一的关系,一个ip地址不一定只对应一个域名,且一个域名只可以对应 ...
- 踩了个DNS解析的坑,但我还是没想通
hello大家好,我是小楼. 最近踩了个DNS解析的小坑,虽然问题解决了,但排查过程比较曲折,最后还是有一点没有想通,整个过程分享给大家. 背景 最近负责的服务要置换机器.置换机器可能很多小伙伴不知道 ...
- DNS解析原理和流程
DNS解析原理和流程 DNS解析其实就是将IP地址(202.96.134.133)变成域名(www.xxxxx.com) 网络通讯大部分是基于TCP/IP的,而TCP/IP是基于IP地址的,所 ...
- DNS的解析流程
一.简单理解 DNS服务器里存着一张表,表中放着域名和IP地址,域名和IP地址以映射关系保存,即一对一 浏览器访问某个域名,实际上是访问它的ip地址 所以浏览器需要知道域名对应的ip地址,由此产生dn ...
随机推荐
- python习题 (1):login
#!/uer/bin/env python # _*_ coding: utf-8 _*_ import sys retry_limit = 3 retry_count = 0 account_fil ...
- Ruby多行字符串,begin/end语句、注释
#!/usr/bin/ruby #puts "Hello ,Ruby!"; print <<EOF #多行字符串 以<<开头 紧接着为结束字符串标识声明 并 ...
- October 22nd Week 43rd Saturday, 2016
Beware the barrenness of a busy life. 当心忙碌的生活荒芜了人生. Recently I was busy in debugging an equipment, I ...
- Swift - 进度条(UIProgressView)的用法
1,创建进度条 1 2 3 4 var progressView=UIProgressView(progressViewStyle:UIProgressViewStyle.Default) progr ...
- VR技术的系统化实现阶段
转载请声明转载地址:http://www.cnblogs.com/Rodolfo/,违者必究. 从20世纪80年代至80年代中期,虚拟现实技术的基本概念开始逐渐形成和完善.这一时期出现了一些比较经典的 ...
- sqlserver 中row_number,rank,dense_rank,ntile排名函数的用法
1.row_number() 就是行号 2.rank:类似于row_number,不同之处在于,它会对order by 的字段进行处理,如果这个字段值相同,那么,行号保持不变 3.dense_rank ...
- mysql多表联合查询
转自:http://www.cnblogs.com/Toolo/p/3634563.html 多表连接,小分三种(笛卡尔积.内连接.外连接),多分五种 (笛卡尔积.内连接.左连接.右连接.全连接(my ...
- Codeforces Round #367 (Div. 2)
A题 Beru-taxi 随便搞搞.. #include <cstdio> #include <cmath> using namespace std; int a,b,n; s ...
- jQuery插件(拖拽)
拖曳插件draggable的功能是拖动被绑定的元素,当这个jQuery UI插件与元素绑定后,可以通过调用draggable()方法,实现各种拖曳元素的效果,调用格式如下: $(selector). ...
- BZOJ 1260&UVa 4394 区间DP
题意: 给一段字符串成段染色,问染成目标串最少次数. SOL: 区间DP... DP[i][j]表示从i染到j最小代价 转移:dp[i][j]=min(dp[i][j],dp[i+1][k]+dp[k ...