【计算机网络 | 第16篇】DNS域名工作原理
文章目录
- 3.5 域名系统工作原理
- 主机的标识方式:域名 vs IP 地址
- 标识转换机制:DNS系统
- 因特网的域名系统:层次域名空间🐦🔥
- 顶级域名分类
- 低级域名与管理
- 域名与IP的区别
- 因特网的域名系统:域名服务器🥝
- 域名服务器类型🧾
- 因特网的域名系统:域名解析过程🥝
- 解析方式
- 示例:访问www.tencent.com
- DNS的延迟与优化
- DNS缓存
- DNS的其他重要服务:别名管理与负载均衡
- 别名管理
- 负载均衡
3.5 域名系统工作原理
主机的标识方式:域名 vs IP 地址
在因特网上,每台主机(设备)都需要被唯一标识,主要有两种标识方式:
-
主机名(域名)
例如:www.tencent.com(腾讯)、www.aliyun.com(阿里云)、mail.163.com(网易邮箱)。- 优点:便于人类记忆,用户能通过名称快速访问服务;
- 缺点:无法直接定位主机位置,仅能通过域名推测(如.com为商业网站,.edu为教育机构)。
-
IP地址
例如:121.7.106.83(腾讯服务器)、114.34.126.120(阿里云服务器)。- 优点:具有严格的层次结构,能精确描述主机在网络中的位置,便于路由器快速定位;
- 缺点:由4个数字组成(如121.7.106.83),不易记忆。
IP地址的层次结构:由4个字节(32位)组成,每个字节用句点分隔(范围0-255)。例如121.7.106.83的结构类似邮政地址:
- 第一级(121):主网络(类似省级行政区);
- 第二级(7):子网络(类似城市);
- 第三级(106):具体网络(类似街道);
- 第四级(83):主机(类似门牌号)。
路由器可根据IP地址的层级逐步定位目标主机。
标识转换机制:DNS系统
域名便于记忆,IP地址便于网络定位,DNS(域名系统) 的作用是将两者关联。
域名系统(Domain Name System, DNS) 是因特网的命名系统,用于将便于人类记忆的主机名(如www.taobao.com)转换为机器处理的IP地址。
- 工作原理类比:访问“腾讯官网”时,无需记住IP地址(如121.7.106.83),输入www.tencent.com后,DNS会自动将域名解析为对应IP地址。
- 技术特性:采用客户/服务器模型,协议运行在UDP之上,使用53号端口。
- 概念组成:层次域名空间、域名服务器、域名解析过程。
DNS核心功能:
- 域名解析:将www.tencent.com转换为121.7.106.83;
- 负载均衡:一个域名对应多个IP地址,实现流量分发(如腾讯视频引导用户至最近服务器);
- 缓存加速:减少重复解析开销,提升访问速度。
因特网的域名系统:层次域名空间🐦🔥
互联网早期采用非等级的平铺式名字空间(类似电话簿),但随着用户激增,出现命名冲突风险高、扩展性差、管理复杂等问题。1983年后改用层次树状结构(Domain Name Hierarchy),将域名划分为多级子域。
域名的空间树状结构:
- 域名结构:任何主机或路由器的唯一层次结构名称即域名(Domain Name)。域可划分为子域,形成顶级域、二级域、三级域等。
- 标号规则:域名由多个标号组成,用点(.)分隔(如www.baidu.com为“三级域名.二级域名.顶级域名”)。
- 仅允许英文字母、数字、连字符(-),英文不区分大小写;
- 除连字符外不能使用其他标点;
- 每个标号不超过63个字符,完整域名最长255个字符;
- 级别最低的域名在最左,顶级域名在最右。
- 管理机制:各级域名由上一级管理,顶级域名由ICANN管理,不规定域名层级数量和每级含义。
顶级域名分类
- 国家(地区)顶级域名(nTLD):采用ISO 3166标准,如“.cn”(中国)、“.us”(美国)。
- 通用顶级域名(gTLD):
- 基础类:.com(商业)、.net(网络服务)、.org(非营利组织);
- 行业类:.tech(科技)、.shop(电商)、.gov.cn(中国政府);
- 品牌类:.alibaba(阿里巴巴)、.tencent(腾讯)。
- 基础结构域名(arpa):用于IP地址反向解析为域名。
低级域名与管理
- 我国二级域名:采用“类别+行政区划”双轨制。
- 类别域名:ac(科研)、com(企业)、edu(教育)、gov(政府)等7个;
- 行政区域名:34个,如bj(北京)、sh(上海)。
- 申请机制:
- 国家顶级域名(如.cn)由CNNIC管理,通过阿里云等注册商申请;
- 国际顶级域名(如.com)由ICANN授权注册商(如GoDaddy)管理。
域名与IP的区别
- 域名:逻辑标识,与物理位置无关(如aliyun.com服务器可分布多地);
- IP地址:物理定位,32位(IPv4)或128位(IPv6),便于路由器查找;
- 对应关系:非一一对应,一个IP可托管多个域名(虚拟主机),一个域名可对应多个IP(负载均衡)。
因特网的域名系统:域名服务器🥝
域名与IP的对应关系存储在域名服务器中,信息分布在各地以保证性能、安全和可靠性。一个服务器的管辖范围称为区(≤域),每个区设权限域名服务器,保存该区主机的域名-IP映射,且能查询其他服务器。
域名服务器类型🧾
- 根域名服务器:最高层次,知道所有顶级域名服务器的域名和IP。全球共13个不同IP的根服务器(实际为服务器群集),不直接解析域名,仅告知下一步查询的顶级服务器IP。
- 顶级域名服务器:管理旗下二级域名,返回最终结果或下一级权限服务器IP(如.cn服务器管理.edu.cn、.net.cn)。
- 权限域名服务器:管理特定区,保存该区域名-IP映射及下级服务器地址(如阿里云服务器管理aliyun.com区)。
- 本地域名服务器:非等级结构,接收主机的DNS请求并转发至其他服务器,返回结果。由ISP、大学等提供(如电信114.114.114.114),IP通过DHCP自动分配,具有缓存功能。
因特网的域名系统:域名解析过程🥝
域名解析是将域名转换为IP地址的过程。客户端通过DNS客户端构造请求报文,以UDP发送至本地域名服务器。
解析方式
1.递归查询:本地域名服务器替主机完成全部查询过程,用户无需关心中间步骤。
- 迭代查询:服务器仅返回下一步查询的服务器地址,由客户端或上一级服务器继续查询,减少单个服务器负载。
实际模式:用户到本地DNS为递归查询,本地DNS到其他服务器为迭代查询。
示例:访问www.tencent.com
- 用户输入域名,浏览器调用本地DNS客户端;
- 本地DNS查询流程:
- 无缓存时,向根服务器查询;
- 根服务器返回.com顶级服务器IP;
- 顶级服务器返回tencent.com的权威服务器IP;
- 权威服务器返回www.tencent.com的IP(如121.7.106.83);
- 浏览器通过IP向腾讯服务器的80/443端口发起TCP连接,加载网页。
DNS的延迟与优化
DNS查询会产生时延,可通过以下机制优化:
- 本地缓存:操作系统或路由器缓存解析记录(TTL时间内有效);
- 运营商DNS优化:如腾讯云、阿里云提供公共DNS(114.114.114.114);
- CDN技术:解析至离用户最近的服务器,缩短物理距离。
DNS广泛应用于SMTP(电子邮件)、游戏服务器等场景。
DNS缓存
DNS缓存是指服务器暂时存储解析结果,供后续相同查询直接使用(类似图书馆借阅记录)。缓存内容包括域名-IP映射、TLD服务器地址等,每条记录有生存时间(TTL),超时后自动清除以保证正确性。
- 局限性:
- 数据过期风险:域名IP变化但缓存未更新可能导致解析错误,需合理设置TTL或手动刷新;
- 安全性挑战:可能被DNS劫持,需结合DNSSEC验证数据合法性。
DNS的其他重要服务:别名管理与负载均衡
别名管理
主机可设置多个别名便于记忆,规范主机名为唯一正式名称(如mail-server-01.shanghai.tencent.com),别名为用户熟悉的名称(如mail.tencent.com),通过DNS映射到规范名称。
邮件服务器通过MX记录实现别名化,定义域名的邮件服务器地址(如163.com的MX记录指向多个服务器)。
负载均衡
大型网站通过DNS轮询技术分配流量:服务器按顺序返回同一域名的多个IP,用户设备选择第一个IP连接,通过轮换IP顺序实现负载均衡(如video.qq.com返回多个服务器IP)。
DNS核心规范由RFC 1034和RFC 1035定义,复杂性体现在分层结构、缓存机制和安全扩展(如DNSSEC)。
如果我的内容对你有帮助,请 点赞 , 评论 , 收藏 。创作不易,大家的支持就是我坚持下去的动力!