域名解析举例

简介:

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在教育领域的应用将更加深入,但也需关注伦理与安全。
2863 1
|
10月前
|
自然语言处理 数据挖掘 BI
数据标注工具 doccano | 文本分类(Text Classification)
数据标注工具 doccano | 文本分类(Text Classification)
331 1
|
11月前
|
关系型数据库 MySQL 数据库
Mysqlbug-Could not create or access the registry key needed for the MySQL applicationto, TIMESTAMP w
Mysqlbug-Could not create or access the registry key needed for the MySQL applicationto, TIMESTAMP w
|
10月前
|
Java 关系型数据库 MySQL
|
11月前
|
存储 JavaScript 前端开发
JavaScript进阶 - 浏览器存储:localStorage, sessionStorage, cookies
【7月更文挑战第8天】Web开发中的客户端存储技术,如`localStorage`, `sessionStorage`和`cookies`,用于保存用户设置和跟踪活动。`localStorage`持久化存储,`sessionStorage`随页面会话消失。两者提供基本的增删查改操作,但有大小限制和安全风险。`cookies`适合会话管理,可设置过期时间并能跨域。使用时注意存储量、安全性和跨域策略,选择适合场景的存储方式。
449 0
|
安全 数据挖掘 网络安全
电子商务网站建设的关键技术
移动端适配是电子商务网站建设中越来越重要的关键技术。综上所述,电子商务网站建设涉及多个关键技术,包括网站设计与用户体验、安全性、性能与可扩展性、搜索引擎优化、移动端适配以及数据分析与营销。掌握这些关键技术,企业可以建设一个安全、高效、用户…
657 0
|
Rust 监控 算法
Rust中的系统性能监控与调优:提升应用效能的关键实践
随着Rust在系统级编程中的广泛应用,性能监控与调优变得尤为关键。本文介绍了在Rust中实施系统性能监控的方法,探讨了Rust应用的性能瓶颈,并提供了调优策略与最佳实践,旨在帮助开发者更有效地提升Rust应用的性能。
|
网络协议 数据安全/隐私保护 iOS开发
使用mac自带VNC公网远程控制macOS
macOS系统自带有VNC远程桌面,我们可以在控制端上安装配置VNC客户端,以此来实现远程控制macOS。但通常需要在不同网络下进行远程控制,为此,我们可以在macOS被控端上使用cpolar做内网穿透,映射VNC默认端口5900,通过所生成的公网地址,来实现在公网环境下远程控制VNC。
|
机器学习/深度学习 人工智能 运维
机器学习PAI-EAS基础
机器学习PAI-EAS基础
572 0
|
运维 Kubernetes Cloud Native
OAM 深入解读:OAM 为云原生应用带来哪些价值?
OAM 是阿里巴巴联合微软在社区推出的一款用于构建和交付云原生应用的标准规范,旨在通过全新的应用定义、运维、分发与交付模型,推动应用管理技术向“轻运维”的方向迈进,全力开启下一代云原生 DevOps 的技术革命。
OAM 深入解读:OAM 为云原生应用带来哪些价值?