域名解析举例

简介:

1,什么是DNS服务器? 
互联网是由无数台服务器和PC连接在一起组成的,每个服务器都会有一个唯一的数字标识,叫IP地址,IP地址是数字表示的,比如218.231.156.61服务器,pc之间的通信协议用的是TCP/IP协议,在底层通信里面,通信双方都是凭借IP地址和对方联系的,并没有域名参与。域名是给人记忆用的,为了能够把人记得住的名字转换成机器认识的IP地址,就需要DNS服务器来做这个“翻译”。 
简单讲,DNS服务器就是个“翻译”,或者说是个“字典”,用来把人容易记忆的域名对照翻译成机器使用的数字格式的IP地址。

2,什么是DNS记录? 
域名有千千万,怎么样才能知道每个域名对应的IP地址呢?答案当然要到DNS服务器(域名服务器)去找,可是谁知道要到哪个DNS服务器去找啊?这就是DNS记录的作用,DNS记录用来明确指明这个域名与IP地址的对应关系保存在哪台DNS服务器中。 
每个域名都要有DNS记录,最多可以有六条记录,一般用2条就足够。

3,如何更改DNS记录,或者说如何更改DNS服务器? 
域名的DNS记录保存在顶级注册机构那里,例如.com .net保存在verisign那里。顶级注册机构一般不直接接受用户注册请求,域名注册要经过他们的“代理”即注册商来购买,修改DNS记录就需要到这些注册商那里修改。

4,修改了DNS,为何没生效? 
这个问题有点儿复杂,为了说清楚这个问题,我们必须先搞清楚域名的解析过程,就是域名是如何翻译成IP地址的。

举个例子: 
当你在浏览器的地址栏输入 www.idcpcw.com 域名解析的过程就开始了:

第一步:浏览器会查询这个域名与IP的对应关系是不是已经存在于 C:\windows\system32\drivers\etc\hosts 文件中,如果有,直接使用,寻找过程结束。如果没有,进行下一步

第二步:浏览器询问本机预先设置好的域名服务器,一般用户是由ISP在联网成功后就分配好的。

第三步:这个域名服务器(称为本地域名服务器)本身并不知道任何域名与IP的对应信息,但是它知道根域服务器的IP地址,所谓根域服务器就是最根源的12个服务器,他们保存了顶级域名的管辖信息,根域服务器会告诉所要查询的域名的IP数据到哪里去找。本地域名服务器就会根据这个线索找到域名的管辖服务器,然后再根据所提供的该域名的DNS记录找到这个域名的真正域名服务器(就是常说的DNS服务器,打个比方:字典),本地域名服务器从这个服务器取得IP信息后,保存在内存中,然后把IP地址返回给浏览器,中间还有很复杂的递归过程,不再赘述。

在从“字典”取得IP数据的同时,有一个很重要的数据也一同返回,就是这个域名和IP对应关系的有效期,在这个有效期内,如果再有同样的域名请求翻译成IP地址,那这个本地域名服务器就不再到外面去找,而是直接把内存中上次就知道的IP地址返回给浏览器。直到有效期过了,它才会再次到外面去查询。

同样如果第一次域名查询就失败了,在域名设置的有效期内,该本地域名服务器也不会再去外面找,而是直接告诉你,“这个域名找不到IP地址”。 
好了,域名和IP的查找过程简单讲就是这样,那再来回答问题:修改了DNS,为何没生效? 答案很简单:再等等,就生效了

那你要问,要等多久?有两个环节决定了等待的时间有多长。

第一个环节就是DNS记录的生效时间,因为域名的DNS记录保存在顶级注册机构哪里,更新不会是实时的,以前要几个小时才会更新,现在不用这么久,顶级域名要快些,几分钟即可,国内要慢些。

第二个环节是关键,就是这个域名的A记录原来的有效期有多长?你知道吗? 可能你自己都不知道。
一般的注册商会设置成1小时,有的会几个小时。 
如果你原来的域名A记录的有效期是几个小时,那你现在的改动,也得几个小时以后才会生效,前面讲了,本地域名服务器有缓存的。不超过有效期,是不会获取最新变动的。 
所以,看清楚原来的设置,就是TTL的设置是多少(单位是秒,3600秒=1小时) ,你就知道要多久才会生效了。

5,TTL是怎么回事? 
TTL就是 Time-to-live的缩写,用来表明域名和IP对应关系在多长时间内有效,过了有效期就要重新去查询。 
TTL时间越长,缓存时间越长,更新越不容易及时生效。 
TTL设置的小一些,生效时间就会快一些。















本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/bonelee/p/7305686.html,如需转载请自行联系原作者


相关文章
|
机器学习/深度学习 人工智能 自然语言处理
阿里通义千问大语言模型在人工智能教育领域的应用探索
阿里通义千问,阿里集团的大型预训练语言模型,应用于AI教育,实现个性化教学、自适应学习系统和智能答疑。通过AIGC,它生成个性化内容,适应不同学生需求,优化教育资源配置,推动教育创新。在教育场景中,模型提供实时反馈,定制学习路径,促进教学质量提升。随着技术进步,AI在教育领域的应用将更加深入,但也需关注伦理与安全。
3883 1
|
11月前
|
存储 运维
服务器数据恢复—服务器raid5阵列中硬盘离线的数据恢复案例
某公司一台服务器中有一组多块硬盘组成的磁盘阵列。磁盘阵列中有2块硬盘出现故障离线,服务器崩溃,上层数据丢失。
|
Rust 监控 算法
Rust中的系统性能监控与调优:提升应用效能的关键实践
随着Rust在系统级编程中的广泛应用,性能监控与调优变得尤为关键。本文介绍了在Rust中实施系统性能监控的方法,探讨了Rust应用的性能瓶颈,并提供了调优策略与最佳实践,旨在帮助开发者更有效地提升Rust应用的性能。
|
JavaScript 安全 前端开发
Elasticsearch7.x学习总结
Elasticsearch7.x学习总结
|
存储 传感器 编解码
微软行星云计算planet platform中的高分辨率影像通过API接入Google Earth Engine(GEE)
微软行星云计算planet platform中的高分辨率影像通过API接入Google Earth Engine(GEE)
807 0
微软行星云计算planet platform中的高分辨率影像通过API接入Google Earth Engine(GEE)
|
算法 网络性能优化
基于simulink的WiMax通信系统仿真,包括RS编译码,卷积编译码,OFDM,输出星座图和频谱图
基于simulink的WiMax通信系统仿真,包括RS编译码,卷积编译码,OFDM,输出星座图和频谱图
308 0
|
SQL 存储 关系型数据库
数据库原理及应用——数据库的基本查询和高级查询
(一)简单查询操作 该实验包括投影、选择条件表达,数据排序,使用临时表等。 具体完成以下题目,将它们转换为SQL语句表示,在学生课程数据库中实现其数据查询操作。 (二)连接查询操作 该实验包括等值连接、自然连接、求笛卡儿积、一般连接、外连接、内连接、左连接、右连接和自连接等 (三)嵌套查询操作 该实验包括在SQL Server查询分析器中使用IN、比较符、ANY或ALL和EXISTS操作符进行嵌套查询操作。具体完成以下各题。将它们用SQL语句表示,在学生选课中实现其数据嵌套查询操作 (四)集合查询和统计查询
868 0
数据库原理及应用——数据库的基本查询和高级查询
Drools规则引擎-如果Fact对象参数为null如何处理
Drools规则引擎-如果Fact对象参数为null如何处理
451 0