域名系统是帮助我们将域名转为IP地址的命名系统
域名的结构
从右向左
- com为顶级域名
- baidu为二级域名
- www为三级域名
1、顶级域名
(1)国家顶级域名
如cn表示中国,us表示美国
(2)通用顶级域名
如com表示公司企业,org表示非盈利组织
2、二级域名
国家顶级域名下的二级域名均由该国家自行确定,每个国家的命名不一样,我国的二级域名主要有:edu表示中国教育机构,com表示企业
域名的解析过程(重要)
1、首先熟悉几个概念
(1)、根域名服务器
根域名服务器是最高层级和最重要的域名服务器,所有的根域名服务器都知道所有的顶级域名服务器的域名和IP地址。
(2)、顶级域名服务器
该域名服务器管理在该服务器注册的所有二级域名
(3)、权限域名服务器
负责某个区的域名服务器
(4)、本地域名服务器
当一个主机发出DNS查询请求时,这个请求报文就发送给本地域名服务器
2、域名的解析过程
(1)、本地域名服务器采用迭代方式查询ip地址
迭代查询的特点是:本地域名服务器向根域名服务器的查询一般采用迭代查询,当根域名服务器收到本地域名服务器发出的迭代查询请求报文后,要么给出ip地址,要么告诉本地域名服务器下一步应向哪个顶级域名服务器查询,顶级域名服务器同样类似,收到本地域名服务器发出的查询请求后,要么给出ip地址,要么告诉本地域名服务器下一步应向哪个权限域名服务器查询,最后,本地服务器查询到结果,并将其返回给发起请求的主机。假设主机m.xy.com打算发邮件给主机y.abc.com,则本地域名服务器的迭代查询流程如下:
- 主机m.xy.com先向其本地域名服务器进行递归查询,(递归查询:主机向本地域名服务器的查询一般是递归查询,如果主机所查询的本地域名服务器不知道被查询的域名ip地址,则本地服务器就会以DNS客户的身份,向其他根域名服务器继续发出查询请求,而不是让主机自己进行下一步的查询)
- 本地域名服务器采用迭代查询,他先向根域名服务器发送查询请求。
- 根域名服务器告诉本地域名服务器,下一次应查询的顶级域名服务器dns.com的ip地址。
- 本地域名服务器向顶级域名服务器dns进行查询
- 顶级域名服务器dns.com告诉本地域名服务器,下一次应该查询的权限域名服务器dns.abc.com的ip地址。
- 本地域名服务器向权限域名服务器dns.abc.com进行查询。
- 权限域名服务器dns.abc.com告诉本地域名服务器,所查询的主机的ip地址。
- 本地域名服务器最终把查询结果告诉主机m.xyz.com。
(2)本地域名服务器采用递归查询
- 主机m.xy.com先向其本地域名服务器进行递归查询
- 本地域名服务器向根域名服务器发送查询请求
- 根域名服务器向顶级域名服务器发送查询请求
- 顶级域名服务器向权限域名服务器发送请求
- 权限域名服务器将查询到的ip地址返回给顶级域名服务器
- 顶级域名服务器将结果返回到根域名服务器
- 根域名服务器将结果返回给本地域名服务器
- 本地域名服务器将结果传给发出请求的主机
这两种查询方式都需要8个步骤,并且会消耗8个UDP用户数据报的报文。