目录

一、DNS 概述与核心作用

1.1 DNS 的角色

1.2 端口与协议

1.3 域名结构:FQDN

二、DNS 查询原理

2.1 两种查询方式

2.2 流程步骤详解:

三、DNS 服务器架构与类型

3.1 分布式层次结构

3.2 DNS服务器软件(BIND)

3.3 DNS服务器系统类型

四、DNS 部署实战

4.1 基础配置:主服务器与正向/反向解析

4.2 配置流程:

五.域名备案的过程企业备案。(可以在阿里云做个人备案)

六.百度的访问过程简述

总结


一、DNS 概述与核心作用

1.1 DNS 的角色

DNS (Domain Name System) 是互联网的“导航员”或“114查号台”。它的核心作用是实现域名IP 地址 之间的相互映射。

  • 正向解析:根据域名查找对应的 IP 地址(最常用)。

  • 反向解析:根据 IP 地址查找对应的域名(用于特殊用途,如邮件服务器反垃圾验证)。

1.2 端口与协议

  • 默认端口:53

  • 使用协议:

    • UDP:用于常规的域名解析查询。速度快,开销小。

    • TCP:用于区域传送(主从服务器同步数据)。因为TCP更可靠,能保证大数据量的准确传输。

1.3 域名结构:FQDN

  • FQDN (Fully Qualified Domain Name)(完全合格域名):全限定域名,完整标识主机在域名树中的位置。

  • 格式:主机名.子域.二级域.顶级域.根域. (根域. 通常省略)

  • 示例:www.sina.com.cn. -> http://www.sina.com.cn./

  • http://www(主机名可改). sina.com.cn域名 .根域 /

  •              根域()
            全球13个根服务器系统集群

.com                  .cn              .net
(顶级域/组织域)      (顶级域/国家域)      (顶级域/组织域)

      sina.com         com.cn
      (二级域)        (二级域)
www.sina.co  mail.sina.com  www.com.cn
(主机/子域) (主机/子域)  (主机/子域)

二、DNS 查询原理

2.1 两种查询方式

  1. 递归查询 (Recursive Query)

    • 客户机与本地DNS服务器之间的查询方式。

    • 客户机发出请求后,只需等待最终结果(成功或失败),中间的所有查询过程由DNS服务器代理完成。

    • 一句话:“你办事,我放心,我只要结果”

  2. 迭代查询 (Iterative Query)

    • 本地DNS服务器与其它各级DNS服务器之间的查询方式。

    • 上级服务器不会替下级服务器去查询,而是返回一个最佳查询点(另一台DNS服务器的地址),让请求者自己再去问。

    • 一句话:“这个我不直接管,你去问XX办公室吧”

2.2 流程步骤详解:

  1. 客户端检查本地缓存和 hosts 文件。

  2. 客户端向本地DNS服务器发起递归查询

  3. 本地DNS服务器检查自身缓存,若无记录,则向根DNS服务器发起迭代查询

  4. 根DNS服务器返回 .com 顶级域服务器的地址。

  5. 本地DNS服务器向 .com 顶级域服务器发起迭代查询。

  6. 顶级域服务器返回 google.com 权威服务器的地址。

  7. 本地DNS服务器向 google.com 的权威服务器发起迭代查询。

  8. 权威服务器返回 www.google.com 对应的IP地址。

  9. 本地DNS服务器将结果返回给客户端,并缓存该记录。

缓存清理命令:

  • Windows: ipconfig /displaydns (查看缓存), ipconfig /flushdns (清理缓存)

  • Linux: 需安装 nscd 服务,使用 nscd -i hosts 清理。

三、DNS 服务器架构与类型

3.1 分布式层次结构

全球DNS系统是一个庞大的分布式数据库,由众多服务器共同承担解析任务。

3.2 DNS服务器软件(BIND)

  • BIND (Berkeley Internet Name Domain):是最广泛使用的DNS服务软件。

  • 软件包组成:

    • bind:主程序包

    • bind-utils:提供 nslookup, dig 等测试工具

    • bind-libs:提供库文件

    • bind-chroot:提供一个伪根目录,将DNS服务锁定在 /var/named/chroot/ 中,增强安全性。

3.3 DNS服务器系统类型

根据职能,一台物理DNS服务器可以被配置为以下一种或多种类型:

 主域名服务器  维护特定区域的权威数据,数据可修改 

从域名服务器 从主服务器同步区域数据,提供冗余备份和 负载均衡

缓存域名服务器 不管理任何区域,仅缓存查询结果,加速访问

转发域名服务器 将所有非本地查询请求转发给指定的其他 DNS服务器

四、DNS 部署实战

4.1 基础配置:主服务器与正向/反向解析

核心配置文件:

  1. 主配置文件/etc/named.conf - 定义全局设置,如监听地址、允许查询的网段。

  2. 区域配置文件/etc/named.rfc1912.zones - 定义本服务器负责管理的区域(域名)及其属性(如区域数据文件名、类型)。

  3. 区域数据文件/var/named/xxx.zone - 存储具体的域名和IP的映射记录,这是最核心的数据库文件。

记录类型详解: 在区域数据文件

  • SOA:起始授权记录,定义区域全局信息(主服务器、管理员邮箱、序列号、同步参数)。

  • NS:域名服务器记录,指明该区域由哪台DNS服务器负责解析。

  • A:正向解析记录,将域名指向一个IPv4地址。

  • AAAA:将域名指向一个IPv6地址。

  • CNAME:别名记录,将一个域名指向另一个域名。

  • MX:邮件交换记录,定义邮件服务器的域名和优先级。

  • PTR:反向解析记录,将IP地址指向域名。

4.2 配置流程:

1.named服务 DNS服务 协议 53 UDP

2.主配置文件(配置区域指定路径)以及IP网段解析  

监听端口IP

解析目标 指定 any  指定区域网段 192.168.10.0/24

找区域中的解析文件 解析域名 /etc/named.rfc1912.zones

3区域配置

配置域名区域 

配置主服务器

找到域名文件(域名和IP的映射)

4配置域名解析

5检查文件是否正常  启动服务

五.域名备案的过程企业备案。(可以在阿里云做个人备案)

1.备案前的准备:注册并且实名认证阿里云/腾讯云账号注册实名认证域名,准备好服务器(公网ip)

2.提交备案申请:登录阿里云/腾讯云ICP代备案管理系统(填写主办者信息,网站信息等),上传相关资料,通过阿里云 进行实际人核验,确认信息无误后提交审核

3.审核阶段:阿里云审核一般在1天,初审通过后,工信部发送短信验证码,需要在24小时完成核验,之后进入管局审核最长20天~30天快的10~15天

4.备案成功:收到短信和邮件通知,获取ICP备案号,需要在网站首页底部悬挂备案号并且生成链接指向工信部网站

5.公安联网部门:ICP备案成功后,在开通网站之日起30天办理公安联网备案

六.百度的访问过程简述

1.封装

应用层 :与用户直接交互的一层。浏览器(应用程序)根据你的输入,生成了一个HTTP请求

协议:HTTP、HTTPS、DNS(域名解析)、SSL/TLS(加密)

表示层 负责数据的表示、加密和压缩。

会话层 负责建立、管理和终止两个应用实体之间的通信会话。

传输层 端到端(电脑程序与百度服务器程序)传输

  1. 分段:将来自上层的数据流(加密后的HTTP请求)分割成更小的数据段(Segments)。

  2. 添加TCP头:封装TCP头部信息。关键信息包括:

    • 源端口:你的浏览器随机开启的一个端口(例如 54321)。

    • 目的端口:百度Web服务器通常监听的端口(HTTP是80,HTTPS是443)。

    • 序列号、确认号:用于保证数据传输的可靠性和有序性。

  3. 建立连接:通过三次握手与百度服务器的443端口建立TCP连接。

网络层 负责逻辑寻址和路由选择,将数据包从一个网络路由到另一个网络

  • 封装IP头:接收来自传输层的数据段,并封装IP头部,形成数据包(Packets)。

    1. 寻址:IP头中包含最关键的信息:

      • 源IP地址:你电脑的公网IP地址(例如 123.123.123.123)。

      • 目的IP地址:通过DNS解析得到的百度服务器的公网IP地址(例如 110.242.68.4)。

    2. 路由:根据目标IP地址,通过路由器等设备查询路由表,决定数据包下一步该发往何处,最终穿越复杂的互联网到达百度服务器。

数据链路层   负责在同一个局域网内的设备之间通过物理地址进行数据传输。

  1. 封装帧头帧尾:接收网络层的数据包,并封装成数据帧(Frames)。

  2. MAC寻址:在帧头中添加:

    • 源MAC地址:你的电脑网卡的物理地址。

    • 目的MAC地址:下一个接收设备(通常是你的家庭路由器或公司网关)的MAC地址。注意,这里的MAC地址不是百度服务器的MAC地址,因为你无法直接访问到它。

  3. 差错控制:帧尾通常包含CRC校验码,用于检查数据在传输过程中是否出错。

物理层 负责在物理媒介上传输原始的比特流(Bits)

2.解封装

物理层 接收比特流

数据链路层 将比特流组装成帧,校验是否与MAC地址一致 是则去头尾将数据包向上传递给网络层

网络层  检查IP包头中的目的IP地址是否是自己的,如果是,去掉IP头,将数据段向上传递给传输层

传输层 TCP协议处理段 根据端口号发给对应程序 发送确认信息CP协议处理段,将数据流向上传递给会话层。

会话层 会话管理

表示层  解密 解压缩

应用层  收到HTTP请求 生成HTTP回应 然后它开始组织要返回的数据(百度的HTML页面)。

接着,服务器再带着这个HTML页面数据,重复自上而下的封装过程,通过相同的路径将响应数据发回给你的电脑,你的电脑再自下而上解封装,最终浏览器接收到HTML、CSS、JS等文件,并将其渲染成你看到的百度首页。

总结

DNS的本质(域名IP 地址 之间的相互映射)

DNS的作用(正向解析和反向解析)

DNS域名查询方式(递归查询 迭代解查询)

域名备案的过程企业备案

DNS服务搭建

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐