1 域名系统概述
-
域名系统(DNS)
- 分布式数据库:由层次化的许多域名服务器实现,提供了主机名和 IP 地址之间相互转换的服务。
- 应用层协议:主机、路由器、名字服务器通信以解析名字 (地址/名字转换)
- 注意:因特网核心功能,作为应用层协议实现
-
DNS 服务
- 主机名到 IP 地址的转换
- 主机别名
- 规范名和别名
- 邮件服务器别名
- 负载分配
- 冗余的 Web 服务器:对一个规范名的 IP 地址集合
2 互联网的域名结构
域名具有层次结构,从上到下依次为:根域名、顶级域名、二级域名、三级域名……
域名每个标号不超过 63 个字符,完整域名不超过 255 个字符。
3 域名服务器
一个服务器锁负责管辖的范围叫做区。每个区设置相应的权限域名服务器,保存该区中所有主机的域名到 IP 地址的映射。
- 根域名服务器
- 所有根域名服务器都知道所有的顶级域名服务器的域名和 IP 地址
- 当本地域名服务器不能分解域名时联系它
- 根域名服务器通常告诉本地域名服务器下一步应当找哪个顶级域名服务器进行查询
- 顶级域名(TLD)服务器
- 负责在该顶级域名服务器注册的所有二级域名
- 收到请求,给出应答(可能是最后的结果,也可能是下一步应当找的域名服务器的 IP)
- 权限域名服务器
- 组织的域名服务器:为组织的服务器(如Web和电子邮件)提供对 IP 地址的映射
- 由组织或服务提供商维护
- 本地域名服务器
- 并不严格属于等级结构
- 每个 ISP(住宅ISP、公司、大学)都可以有一个,也称为“默认域名服务器”
- 当主机发出 DNS 请求时,请求被发送到其本地 DNS 服务器
- 作为代理,将请求转发到等级结构
4 域名解析过程
- 递归查询
- 如果主机所询问的本地域名服务器不知道被查询域名的 IP,则本地域名服务器就以 DNS 客户机的身份,项其它根 DNS 继续发出查询请求报文
- 要么给出查询的 IP,要么报错
- 沉重的负担:将域名解析的负担放在联系的域名服务器
- 迭代查询:
- 要么给出查询的 IP,要么给出下一步该查询的域名服务器 IP
4 缓存和更新记录
一旦(任何) DNS 服务器知道了映射,它将缓存该映射
- 在一定时间后,缓存项超时(消失)
- 顶级域服务器通常缓存在本地 DNS 中
- 因此不经常访问根 DNS