DNS协议
目的:将便于记录的域名转换成IP地址,该映射可以是一对一的或是多对一的
域名解析服务通过网络中的DNS服务器完成,DNS服务器中记录域名到IP的映射。当我们通过域名访问网络中的某台主机时,先通过查询DNS服务器得到域名对应的IP地址,然后再使用IP地址访问。
层次结构#
下面是DNS服务器的层次结构,根DNS服务器记录了每个顶级DNS服务器(TLD服务器),顶级DNS服务器由顶级域名提供商提供,比如.com
、.org
、.jp
等。TLD服务器难以记录如此之多的域名和查询访问量,所以,各种接入网络的权威机构也需要提供DNS服务器。
另外一种不在层次结构中的DNS服务器是由ISP提供的本地DNS服务器,它的作用是将你的DNS请求转发到DNS服务器层次结构中,可以理解为层次结构外部和内部的一个桥。
如上图,你的电脑想访问gaia.cs.umass.edu
,它会:
- 先向本地DNS服务器发起请求,本地服务器访问根DNS服务器。2. 根DNS服务器注意到访问到顶级域名是
.edu
,它会将.edu
的顶级域名服务器的IP返回给本地DNS - 本地DNS再去访问TLD服务器,TLD服务器负责找到域名
gaia.cs.umass.edu
的权威DNS服务器 - 并把它返回给本地DNS服务器,之后本地DNS服务器再去它的权威DNS服务器中请求
- 权威DNS服务器将
gaia.cs.umass.edu
的IP返回给本地DNS服务器,本地DNS再返回给你的主机。
还可能是这样的:
缓存#
为了映射一个IP要走很多服务器,这肯定会带来网络延迟,所以DNS服务器中会有缓存。
当某个DNS服务器向上级请求,并接到返回地址后,它会缓存到本地,下次便不会再请求。一段时间后该缓存会被清除。
DNS记录#
DNS记录格式如下:
(Name, Value, Type, TTL)
- A记录:记录域名到地址的映射,如
(bar.foo.cn, 145.37.93.126, A)
- NS记录:记录域名到该域名权威域名解析服务器的映射,如
(foo.cn, dns.foo.cn, NS)
- CNAME记录:记录一个主机的规范主机名,如
(foo.com, relay1.foo.com, CNAME)
- MX记录:记录一个主机的邮件服务器的规范主机名,如
(foo.com, mail.foo.com, MX)
作者:Yudoge
出处:https://www.cnblogs.com/lilpig/p/15989912.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
欢迎按协议规定转载,方便的话,发个站内信给我嗷~
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· winform 绘制太阳,地球,月球 运作规律
· 上周热点回顾(3.3-3.9)