域名系统 DNS
域名概述
- 域名通常由梳子和字母组成,每一个标号(用点隔开的部分)不能超过63个字符
- 域名不区分大小写
- 由多个标号组成的完整域名总共不超过255个字符
域名分类
- 国家顶级域名nTLD
- 通用顶级域名gTLD
- 基础结构域名arpa-用于反向域名解析。
域名系统概述
- DNS 是一个分布式数据库,提供了主机名和 IP 地址之间相互转换的服务。这里的分布式数据库是指,每个站点只保留它自己的那部分数据。
- DNS 的互联网标准是RFC 1034,1035.
因特网的域名结构
- 域名具有层次结构,从上到下依次为:根域名、顶级域名、二级域名……
域名服务器
- 一个服务器所负责管辖的(或有权限的)范围叫做区(zone)。
- 根域名服务器使用任播技术。
- 每一个区设置相应的权限域名服务器,用来保存该区中的所有主机的域名到IP地址的映射。
DNS 可以使用 UDP 或者 TCP 进行传输,使用的端口号都为 53。大多数情况下 DNS 使用 UDP 进行传输,这就要求域名解析器和域名服务器都必须自己处理超时和重传从而保证可靠性。在两种情况下会使用 TCP 进行传输:
- 如果返回的响应超过的 512 字节(UDP 最大只支持 512 字节的数据)。
- 区域传送(区域传送是主域名服务器向辅助域名服务器传送变化的那部分数据)。
加密的域名服务器
使用加密的DNS服务可以防范域名隐私、劫持和污染威胁。
DNS的具体过程
- 检查浏览器缓存中是否缓存过该域名对应的IP地址;
- 如果在浏览器缓存中没有找到IP,那么将继续查找本机系统是否缓存过IP;
- 向本地域名解析服务系统发起域名解析的请求;
- 向根域名解析服务器发起域名解析请求;
- 根域名服务器返回gTLD(通用顶级域名)域名解析服务器地址;
- 向gTLD服务器发起解析请求;
- gTLD服务器接收请求并返回Name Server服务器;
- Name Server服务器返回IP地址给本地服务器;
- 本地域名服务器缓存解析结果;
- 返回解析结果给用户。