域名系统DNS(Domain Name System)——应用层
DNS服务器作用:DNS服务器中有域名和网络IP地址映射关系的数据库,能通过域名查到其对应的IP地址。
DNS服务器规定:
因特网采用层次树状的域名结构。
域名由若干个分量组成,各分量之间用“点”隔开,分别代表不同的域名。
- 每一级的域名都由英文字母和数字组成,不超过63个字符,不区分大小写字母。
- 级别最低的域名写在最左边,而级别最高的顶级域名写在最右边。
- 完成的域名不超过255个字符
各级域名由其上一级的域名管理机构管理,最高的顶级域名则由因特网名称与数字地址分配机构ICANN进行管理。
顶级域名
- 国家顶级域名nTLD:如:cn表示中国,us表示美国,uk表示英国
- 通用顶级域名gTLD:常见通用顶级域名由七个:com(公司企业),net(网络服务机构),org(非营利性组织),int(国际组织),edu(美国教育机构),gov(美国政府部门),mil(美国军事部门)
- 反向域arpa:用于反向域名解析,即IP地址反向解析为域名
在国家顶级域名**册的二级域名均有国家自行确定
域名和IP地址的映射关系必须保存在域名服务器中,供所有其他应用查询。
域名服务器可以划分为以下四种不同的类型:
-
根域名服务器
根域名服务器并不直接对域名进行解析,而是返回该域名所属顶级域名服务器的IP地址 -
顶级域名服务器
这些域名服务器负责管理在该顶级域名服务器注册的所有二级域名。 -
权限域名服务器
负责管理某个区的域名。每个主机的域名都必须在某个权限域名服务器处注册登记。因此权限域名服务器知道其管辖的域名与各IP地址的映射关系。另外,权限域名服务器还知道其下级域名服务器的地址。 -
本地域名服务器
本地域名服务器不属于上述的域名服务器的登记结构。当一个主机发出DNS请求报文时,这个报文先被送到该主机的本地域名服务器。本地域名服务器起到代理的作用,会将该报文转发到上述的域名服务器的登记结构中。
域名查询方式
-
递归查询
从本地域名服务器、根域名服务器、顶级域名服务器、权限域名服务器逐级查询。
对被查询的域名服务器负担太大,通常采用以下格式:从请求主机到本地域名服务器的查询是递归查询,其余的是迭代查询。 -
迭代查询
由本地域名服务器依次向根域名服务器、顶级域名服务器、权限域名服务器发送DNS查询请。
高速缓存
-
高速缓存用来存放最近查询过的域名以及从何处获得域名映射信息的记录。
-
为保证高速缓存的内容正确,域名服务器应为每项内容设置计时器并删除超过合理时间的项
-
不但本地服务器中有高速缓存,用户主机中也需要。用户主机在启动时从本地域名服务器下载域名和IP地址的全部数据库,维护存放自己最近使用的域名的高速缓存,同时保证高速缓存的正确性
DNS报文使用运输层的UDP协议进行封装,运输层的端口号为53