DNS域名解析
一、DNS域名系统
域名管理系统DNS(Domain Name System)是域名解析服务器的意思,应用层协议,是互联网的一项服务。它在互联网的作用是:把域名转换成网络可以识别的ip地址,在通过IP地址访问主机。 种由文字组成的名称,显而易见要更容易记忆。
1.1 DNS作用
- 正向解析: 根据域名查找对应的IP地址
- 反向解析: 根据IP地址查找对应的域名
- 53端口,tcp(域名传送)/udp(域名解析)
1.2 DNS系统的类型
1)主域名服务器:
负责维护一个区域的所有域名信息,是特定的所有信息的权威信息源,数据可以修改。构建主域名服务器时,需要自行建立所负责区域的地址数据文件。
具有唯一性
2)从域名服务器:
当主域名服务器出现故障、关闭或负载过重时,从域名服务器作为备份服务提供域名解析服务。从域名服务器提供的解析结果不是由自己决定的,而是来自于主域名服务器。构建从域名服务器时,需要指定主域名服务器的位置,以便服务器能自动同步区域的地址数据库。
3)存域名服务器:
只提供域名解析结果的缓存功能 目的在于提高查询速度和效率,但没有域名数据库。
它从某个远程服务器取得每次域名服务器查询的结果,并将它放在高速缓存中,以后查询相同的信息时用它予以响应。缓存域名服务器不是权威性服务器,因为提供的所有信息都是间接信息。构建缓存域名服务器时,必须设置根域或指定其他DNS服务器作为解析来源。
4)转发域名服务器:
负责所有非本地域名的本地查询。转发域名服务器接到查询请求后,在其缓存中查找,如找不到就将请求依次转发到指定的域名服务器,直到查找到结果为止,否则返回无法映射的结果。
DNS系统的分布式数据结构:
1.3 DNS系统的查询方式
- 递归查询: 一般客户机和本地DNS服务器之间属于递归查询,即当客户机向DNS服务器发出请求后, 若DNS服务器本身不能解析,则会向另外的DNS服务器发出查询请求,得到最终的肯定或否定的结果后转交给客户机。此查询的源和目标保持不变,为了查询结果只需要发起一次查询。(不需要自己动手)
- 迭代查询: 一般情况下(有例外)本地的DNS服务器向其它DNS服务器的查询属于迭代查询,如:若对方不能返回权威的结果,则它会向下一个DNS服务器(参考前一个DNS服务器返回的结果)再次发起进行查询,直到返回查询的结果为止。此查询的源不变,但查询的目标不断变化,为查询结果一般需 要发起多次查询。(需要自己动手)
二、DNS的域名结构
2.1 域名结构
http://www.sina.com.cn.
主机名 子域 二级域 顶级域 根域
2.2 域名分布式结构
类型 | 原理 |
---|---|
根域 | 位于树状结构最顶层,用"."表示 |
顶级域 | 一般代表一种类型的组织机构或国家地区;如.net(网络供应商)、.com(工商企业)、.org(团体组织)、.edu(教育机构)、.gov(政府部门)、.cn(中国国家域名) |
二级域 | 用来标明顶级域内的一个特定的组织,国家顶级域下面的二级域名由国家部门统一管理 |
子域 | 二级域下所创建的各级域统称为子域,各个组织或用户可以自由申请注册自己的域名 |
主机 | 主机位于域名空间最下层,就是一台具体的计算机 |
- 一级DNS服务器:专门负责一级域名的解析(一般代表一种类型的组织机构或国家地区):
一级域名 | |
---|---|
.com | (工商企业) |
.net | 网络供应商 |
.edu | (教育机构) |
.cn | 中国国家域名 |
.org | 团体组织 |
.gov | 政府部门 |
- 二级DNS服务器:专门负责二级域名的解析
二级域名 | |
---|---|
.net | .cn |
.edu. | cn |
.com. | cn |
- 子域名DNS服务器:专门负责子域名的解析也称为三级域名
三级域名 |
---|
ina.com.cn |
.pku.edu.cn |
- 主机站点
主机名 |
---|
tts9 |
tts6 |
www |
2.3 DNS服务器类型
2.5 DNS正向解析查询原理过程
先查本机的缓存记录
查询hosts文件
查询dns域名服务器,交给dns域名服务器处理以上过程成为递归查询:我要一个答案你直接会给我结果
这个dns服务器可能是本地域名服务器,也有个缓存,如果有直接返回结果,如果没有则进行下一步
求助根域服务器,根域服务器返回可能会知道结果的顶级域服务器让他去找顶级域服务器
求助顶级域服务器,顶级域服务器返回可能会知道结果的二级域服务器然他去找二级域服务器
求助二级域服务器,二级域服务器查询发现是我的主机,把查询到的ip地址返回给本地域名服务器
本地域名服务器将结果记录到缓存,然后把域名和ip的对应关系返回给客户端
三、DNS域名解析服务器步骤
3.1 资源记录
SOA记录
name: 当前区域的名字,例如"kiro.com."
value: 有多部分组成
注意:
当前区域的主DNS服务器的正向解析,也可以使用当前区域的名字
当前区域管理员的邮箱地址;但地址中不能使用@符号,一般用.替换
例如:admin.kiro.com
主从服务区域传输相关定义以及否定的答案的统一的TTL
范例:
$TTL 1D
@ IN SOA master.kiro.com. admin.kiro.com (
0 ; serial
1D ; refresh
1H ; retry