1.DNS简述
DNS就是域名系统,是因特网中的一项核心的服务,是用于实现域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用记住能够被机器直接读取的IP数串。通过主机名,得到该主机名对应的IP地址的过程就是域名解析(或者叫主机名解析)。
总结一点就是IP地址是面向主机的,而域名则是面向用户的。
域名和IP的对应关系保存在host文件中。
2.DNS系统
一个组织的系统管理机构,维护系统内的每个主机的IP和主机名的对应关系。
用户输入域名的时候,会自动查询DNS服务器,由DNS服务器检索DNS数据库,得到对应的IP地址。
在域名解析的时候会优先查找hosts文件的内容。
3.DNS域名结构
域名系统必须要保持唯一性。
为了达到唯一性的目的,因特网在命名的时候采用了层次结构的命名方法:
- 每一个域名(英文域名)都是一个标号序列,用字母(A-z,a-z,大小写等价),数字(0-9)和连接符(-)组成。
- 标号序列总长度不能超过255个字符,它由点号分割成一个个的标号。
- 每个标号应该在63个字符之内,每个标号都可以看成一个层次的域名。
- 级别最低的域名写在左边,级别高的域名写在右边。
域名服务主要是基于UDP实现的,服务器的端口号是53。
DNS端口:53/tcp,53/udp。
例如:www.baidu.com
- com:一级域名,表示这是一个企业域名。当然还有net(网络提供商),org(非盈利组织)等
- baidu:二级域名,指公司名。
- www:习惯用法。
4.域名的分级
域名可以划分为各个子域名,子域名还可以继续划分为子域名的子域,这样就会出现顶级域名、二级域名、三级域名等。
国家顶级域名 | 中国:cn,美国:us,英国:uk…. |
通用顶级域名 | com公司企业,edu教育机构,gov政府部门,mil军事部门,net网络,org非盈利组织….. |
反向域名 | arpa,用于PTR查询(IP地址转换成域名) |
5.域名服务器
域名是分成结构,域名服务器也是对应的层级结构。
域名需要由遍及全世界的域名服务器去解析,域名服务器实际上就是装有域名系统的主机。
由高到低进行层次划分,可以分为以下几个大类:
分类 | 作用 |
根域名服务器 | 最高层次的域名服务器,本地域名服务器解析不了的域名就会向其求助 |
顶级域名服务器 | 负责管理在该顶级域名服务器下注册的二级域名 |
权限域名服务器 | 负责一个区的域名解析工作 |
本地域名服务器 | 当一个主机发出DNS查询请求的时候,这个查询请求首先会发给本地的域名服务器 |
一个域名服务器所负责的范围,或者说有管理权限的范围,就成为区。
需要注意的是:
- 每个层的域名都有自己的域名服务器,最顶级的是根域名服务器。
- 每一级域名服务器都知道下级域名服务器的IP地址。
- 为了容灾,每一级至少设置两个或以上的域名服务器。
6.域名解析过程
域名解析总体可以分为下面的过程:
- 输入域名后,会首先查找自己主机对应的域名服务器,域名服务器先查找自己的数据库中的数据。
- 如果没有,就向上级域名服务器进行查找,依次类推。
- 最多回溯到根域名服务器,肯定可以找到这个域名的IP地址。
- 域名服务器自身也会进行一些缓存,把曾经访问过的域名和对应的IP地址缓存起来,可以加速查找过程。
具体的描述如下:
- 主机先向本地域名服务器进行递归查询。
- 本地域名服务器采用迭代查询,向一个根域名服务器进行查询。
- 根域名服务器告诉本地域名服务器,下一次应该查询的顶级域名服务器的IP地址。
- 本地域名服务器向顶级域名服务器进行查询。
- 顶级域名服务器告诉本地域名服务器,下一步查询权限服务器的IP地址。
- 本地域名服务器向权限服务器进行查询。
- 权限服务器告诉本地域名服务器所查询的主机的IP地址。
- 本地域名服务器最后把查询的结果告诉主机
递归查询:本机向本地域名服务器发出一次查询请求,等待最总的结果。如果本地域名服务器无法解析,自己会以DNS客户端机器的身份向其他域名服务器查询,直到得到最终的IP地址告诉本机。
迭代查询:本地域名服务器向根域名服务器查询,根域名服务器告诉本地域名服务器下一步应该去哪里进行查询,然后它再去进行查询,每次它都是以客户端的身份去各个服务器进行查询。
7.DNS服务器的分类
常见的DNS服务器就是两种:权威解析服务器和递归解析服务器。递归解析服务器也可以叫localDNS。
权威解析服务器:
DNS权威服务器保存域名空间中部分区域的数据。如果DNS服务器负责管辖一个或者多个区域时,称此DNS服务器为这些区域的权威服务器。
根权威DNS或者二级权威服务器中的资源记录标记被指定为区域权威服务器的DNS服务器。通过资源记录中列出服务器,其他服务器就认为它是该区域的权威服务器。这意味着在 NS 资源记录中指定的任何服务器都被其他服务器当作权威的来源,并且能肯定应答区域内所含名称的查询。
递归服务器:
递归服务器在正常情况下,初始的时候里面没有任何域名解析数据,里面所有的域名解析数据都来自于它到权威解析服务器的查询结果,一旦查询完毕,递归服务器就会根据TTL时间在本地形成一条缓存记录,并为用户提供DNS解析的查询服务,这是递归服务器的功能。
原文链接:https://www.cnblogs.com/coffeeakai/p/15127023.html
原创文章,作者:优速盾-小U,如若转载,请注明出处:https://www.cdnb.net/bbs/archives/16016