前言
本文梳理DNS服务
DNS是什么
DNS(Domain Name System,域名系统,也称为域名解析系统)是一种把计算机主机名称解析为对应的IP地址的服务。
从网络通信原理上来讲,DNS并不是必需的,因为可以直接通过IP地址进行访问,而且事实上网络通信时最终所采用的寻址方式也是网络层的IP地址寻址。
为什么需要DNS
因为直接使用IP地址来运行各种网络应用的不足:
- 不便记忆
- 不方便变更
- 不安全
为了解决以上host文件名称解析方案中的不足,人们开发了基于域(这里的“域”是指“域名”)的分层命名方案—DNS。
域名
域名(Domain names)是互联网基础架构的关键部分。它们为互联网上任何可用的网页服务器提供了方便人类理解的地址。
- 例如
www.baidu.com.
整个DNS名称空间像一棵倒过来的树,最顶端称为互联网的“根域”,以一个小圆点(.)表示,接下来是顶级域,再接下来是二级域、三级域,依此类推(域名是不区分大小写的,但通常是小写的)。
其中,顶级域名和二级域名必须是由对应的互联网域名管理机构颁布的。
目前,互联网上注册的DNS域名主要有以下3个级别:顶级域名、二级域名和三级域名;其中只有二级及其以下级别的域名才可由用户自己申请,用户不能直接申请顶级域名。
-
顶级域名
国家顶级域名:cn、us、uk
通用顶级域名:com、net、org、gov、int、aero、museum、travel
基础结构域名/反向域名:arpa -
二级域名
在顶级域名之下,我国的二级域名又分为类别域名和行政区域名两类。
类别域名:ac、com、edu、gov、mil、net、org
行政区域名:用于我国各省、自治区、直辖市等行政区域 -
三级域名
三级域名也是可以由用户自己申请注册的,可以采用字母( A~Z、a~z、大小写组合等)、数字(0~9)和连接符(-)等, 各级域名之间用小圆点(.)连接,三级域名的长度不能超过20个字符。
DNS域名服务器
DNS系统仅是从服务器命名角度来讲的一项技术,但真正担当DNS域名解析任务的还是那些配置了DNS服务的服务器,就是DNS服务器,专业名称为“名称服务器”(或者“域名服务器”)。
为了提高每台DNS名称服务器的运行效率和利用率,在DNS技术中为此专门提出了“区域”(zone)的概念,就是可以让一台或多台DNS名称服务器负责一个区域的计算机域名解析,而这个“区域”可以包括一个DNS域名树(或者说“DNS域名空间”)的一部分(通常是包括多级域名)或全部,但是绝对不可能大于一个域名树,也就是不能把几个完全不同的域配置为一个区域,如不能把gz.lycb.com和sh.lycb.net划分为一个DNS区域。
DNS区域名是对应区域中公共的域名树部分。
-
层次划分
所有DNS名称服务器自高到低分成4个级别:根名称服务器、顶级名称服务器、权威名称服务器和本地名称服务器。 -
“根名称服务器”(root name server)
它是由互联网管理机构配置建立的,是最高层次的名称服务器,负责对互联网上所有“顶级名称服务器”进行管理,有全部的顶级名称服务器的IP地址和域名映射。
全球共有13套(不是13台)根名称服务器。但每套根名称服务器都只有1个主根名称服务器(也就是说,总共只有13台主根名称服务器),其中10台放置在美国,两台在欧洲,1台在日本。这13台主根名称服务器主机名分别为字母A~M,即完整DNS名称为a.rootserver.net~m.rootserver.net。
-
顶级名称服务器(top level name server)
它是各顶级域名自己的名称服务器,负责它们各自所管理的二级域名解析。 -
权威名称服务器(authoritative name server)
它是针对前面所说的DNS区域提供名称解析服务而专门配置、建立的名称服务器,可为用户提供最权威的DNS域名解析。每一个域名在互联网上都可找到一台权威名称服务器,ISP(Internet Service Provider,互联网服务提供商)也可为用户的每一个DNS域名区域配置一台权威名称服务器。 -
本地名称服务器
这里所说的“本地名称服务器”不是指用户局域网中的名称服务器,而是用户端操作系统所配置的、由本地ISP(Internet Service Provider,互联网服务提供商)提供的名称服务器(也就是本地DNS服务器)。
它是离用户最近的互联网名称服务器。用户发出的DNS域名解析请求,首先到达的就是本地名称服务器。
当一个主机发出DNS查询请求时,这个查询请求报文就发给本地域名服务器。
域名解析过程
DNS有两种名称解析方式:一种称为递归查询(Recursive Solution,RS),另一种称为迭代查询(Iterative Solution,IS)。
结语
本文梳理DNS相关知识,以对网络有更整体的了解。
参考:
DNS 原理入门