前言

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


1.DNS 域名解析

1.1 概述与核心作用

DNS(Domain Name System)是互联网中实现域名与 IP 地址相互映射的服务系统。

  • 正向解析:将域名转换为 IP 地址
  • 反向解析:将 IP 地址转换为域名
  • 默认端口:53
  • 传输协议
    • UDP:用于常规域名解析查询
    • TCP:用于区域传送(主从服务器同步数据)

1.2 域名结构

  • FQDN(全限定域名):完整标识主机在域名树中的位置
  • 格式:主机名.子域.二级域.顶级域.根域.(根域通常省略)
  • 示例:www.sina.com.cn.

2、DNS 查询原理

2.1 查询方式

  1. 递归查询

    • 客户机与本地 DNS 服务器之间的查询方式
    • 客户机只需等待最终结果
    • 客户端只发送一次请求,要求对方直接给出最终结果
  2. 迭代查询

    • 本地 DNS 服务器与其他各级 DNS 服务器之间的查询方式
    • 上级服务器返回最佳查询点
    • 客户端发出一次请求,如果对方没有授权回答,他就会返回到一个能解答出这个查询的其他服务名称列表(根、顶级,权威)最终会解析出一个结果。
  3. 解析图

客户端
                        │
                        ├─→ 本地DNS服务器(递归查询)
                        │     │
                        │     ├─→ 根服务器 → .com顶级域 → baidu.com权威服务器
                        │     │
                        │     └─← 返回IP
                        │
                        └─→ 本地DNS服务器(迭代查询)
                              │
                              ├─→ 根服务器(返回.com地址)
                              │
                              ├─→ .com顶级域服务器(返回baidu.com地址)
                              │
                              └─→ baidu.com权威服务器(返回IP)
                              │
                              └─← 返回IP给客户端

2.2 正向解析流程

  1. 客户端检查本地缓存和 hosts 文件
  2. 客户端向本地 DNS 服务器发起递归查询
  3. 本地 DNS 服务器检查自身缓存
  4. 若无记录则向根 DNS 服务器发起迭代查询
  5. 根服务器返回顶级域服务器地址
  6. 本地 DNS 服务器向顶级域服务器发起查询
  7. 顶级域服务器返回权威服务器地址
  8. 本地 DNS 服务器向权威服务器发起查询
  9. 权威服务器返回最终 IP 地址
  10. 结果返回客户端并缓存

2.3 缓存清理命令

  • Windows:
    • 查看缓存:ipconfig /displaydns
    • 清理缓存:ipconfig /flushdns
  • Linux:nscd -i hosts

3、DNS 服务器架构与类型

3.1 服务器类型

  1. 根 DNS 服务器:管理根域,返回顶级域服务器地址
  2. 顶级域 DNS 服务器:管理特定顶级域,返回权威服务器地址
  3. 权威 DNS 服务器:管理特定域名,返回最终 IP

3.2 DNS 服务器软件(BIND)

  • 主程序包:bind
  • 工具包:bind-utils
  • 库文件:bind-libs
  • 安全增强:bind-chroot

3.3 服务器系统类型

  1. 主域名服务器:维护特定区域的权威数据,可修改数据
  2. 从域名服务器:从主服务器同步数据,提供冗余备份和负载均衡
  3. 缓存域名服务器:仅缓存查询结果,不管理任何区域,但加速访问
  4. 转发域名服务器:转发非本地查询请求给其他服务器

4、域名备案过程

  1. 备案前准备:备案前的准备:注册并且实名认证阿里云/腾讯云账号;注册实名认证域名 ,准备好服务器(公网IP)
  2. 提交备案申请:提交备案申请:登录阿里云/腾讯云ICP代备案管理系统(填写主办者信息、网站信息等),上传相关资料,通过阿里云 进行实际人核验 并且确认信息无误后提交初审
  3. 审核阶段:审核阶段:阿里云审核一般在1天,初审通过后,工信部发送短信验证码,需要在24小时完成核验之后进入管局审核最长30天 ,最快10天
  4. 备案成功:收到短信和邮件通知,获取ICP备案号,需要在网站首页底部悬挂备案号并且生成链接指向工信部网站公安联网部门:
  5. 公安部门:ICP备案成功后,在开通网站之日起30天办理公安联网备案

5、DNS 部署实战

5.1 核心配置文件

  1. 主配置文件/etc/named.conf
  2. 区域配置文件/etc/named.rfc1912.zones
  3. 区域数据文件/var/named/xxx.zone

5.2 记录类型

  • SOA:起始授权记录
  • NS:域名服务器记录
  • A:正向解析记录(IPv4)
  • AAAA:正向解析记录(IPv6)
  • CNAME:别名记录
  • MX:邮件交换记录
  • PTR:反向解析记录

5.3 配置流程

  1. 安装 BIND 软件包在这里插入图片描述

  2. 编辑主配置文件设置监听和查询权限

  3. 在区域配置文件中定义正向和反向区域

  4. 创建区域数据文件并添加解析记录

  5. 检查配置语法并启动服务

注意事项

  • 全球 13 个根服务器系统通过任播技术部署了多个物理服务器副本
  • 配置时需注意文件权限和 SELinux 设置
  • 修改配置后需要重载服务使更改生效

总结

DNS 是互联网核心服务,实现域名与 IP 的双向映射,默认使用 UDP 53 端口查询,TCP 53 用于数据同步。查询分递归(客户端仅需一次请求,本地 DNS 服务器全程代理)和迭代(本地 DNS 服务器逐级询问根、顶级域、权威服务器)两种方式。全球 DNS 采用分层架构,由根服务器、顶级域服务器、权威服务器构成。部署 DNS 需配置主文件、区域文件,并设置 SOA、NS、A 等记录类型,确保域名解析高效可靠。

Logo

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

更多推荐