图解网络:什么是 DNS 域名系统?

简介: DNS是一个巨大的目录,它保存着互联网上每一个域名的记录,并将其与它的 IP 地址进行映射,DNS是一种标准协议,可帮助 互联网用户使用人类可读地址发现网站,没有 DNS,互联网就会崩溃。

你好,这里是网络技术联盟站。

上一节瑞哥花了2000多字图解了DHCP的原理和配置,说到DHCP,那么DNS肯定也要了解一下,今天瑞哥会从DNS的原理、DNS的工作流程、DNS的报文分析等方面给大家图解一下,让我们直接开始!

什么是DNS?

  • 英文全称:Domain Name System
  • 中文名称:域名系统
  • UDP 端口:53

DNS

DNS出现的历史背景

当互联网开始出现时,人们都是用IP 地址连接到其他计算机。

但是,计算机比较少的情况下,记忆IP地址没啥大问题,随着互联网的发展,网站越来越多,通过记忆IP地址的做法变得很麻烦,因为没有人能记住所有IP地址。

因此,一些非常聪明的人开发了一个系统来为每个 IP 地址分配一个域名,称为DNS

IP地址

什么是 DNS 服务器?

DNS 服务器是存储网站名称与其对应的公网Ip地址的计算机,DNS 就像互联网的电话簿,每当人们在 Web 浏览器的地址栏中键入域名(例如wljslmz.cn)时,DNS 都会找到正确的 IP 地址。

DNS 服务器

一旦 DNS 服务器找到正确的 IP 地址,浏览器就会获取该地址并使用它将数据发送到CDN边缘服务器或源服务器,完成此操作后,用户可以访问网站上的信息,DNS 服务器通过查找网站统一资源定位器 (URL) 的相应 IP 地址来启动该过程。

DNS术语

  • DNS 客户端:DNS 查询的计算机。
  • DNS 缓存:临时存储 DNS 的记录结果。
  • DNS 记录,包含有关 IP 地址的重要信息,以下是一些 DNS 记录:

    • A 记录:将域映射到 IP 地址,例如,www.wljslmz.cn映射到其 IP 地址 10.10.10.10
    • CNAME:每当域更改时,将域更新为另一个域名,例如,当输入www.wljslmz.cn 时,会转到wljslmz.cn
    • NS 记录:标识用于特定域名的权威名称服务器。
    • TXT 记录:保存外部来源的文本信息。
    • MX 记录:将电子邮件发送到特定的邮件服务器。

DNS如何工作?

我们不谈生涩的原理,直接以我们网络技术联盟站的网站www.wljslmz.cn为例:

  1. 打开浏览器,输入www.wljslmz.cn

www.wljslmz.cn

按下回车后立即有一个快速检查,看看您以前是否访问过我们的网站。

如果在您计算机的 DNS 缓存中找到 DNS 记录,则跳过 DNS 查找的其余部分,您将被直接带到www.wljslmz.cn

2, 如果没有找到 DNS 记录,则会向您的本地 DNS 服务器发送查询。

本地 DNS 服务器

通常是您的 Internet 提供商的服务器,通常称为“解析名称服务器(resolving nameserver)”。

  1. 如果解析名称服务器上没有缓存记录,则请求被转发到根名称服务器,来定位 DNS 记录。

根名称服务器

根域名服务器是世界各地的指定服务器,负责存储 DNS 数据并保持系统顺利运行,一旦在根名称服务器上找到 DNS 记录,它就会被您的计算机缓存。

  1. 最后就找到了 DNS 记录,将打开与存储网站的服务器的连接,并且www.wljslmz.cn页面将显示在您的屏幕上。

查到结果

我们来用一张图将上面的四个过程进行合并:

DNS查询过程

在通常的 DNS 查询中,用户输入的 URL 必须经过四台服务器才能提供 IP 地址,这四台服务器相互协作:

1. DNS 递归器

DNS 递归器,也称为 DNS 解析器,接收来自 DNS 客户端的查询,然后它与其他 DNS 服务器通信来找到正确的 IP 地址。

DNS 递归器是您的 Internet 服务提供商 (ISP),递归 DNS 解析器接收包含人类可读主机名(如 www.wljslmz.cn)的 DNS 查询,此 DNS 服务器的工作方式类似于图书管理员,可在图书馆中查找特定书籍的编号。

2. 根域名服务器

根域名服务器是 DNS 层次结构的顶部,可以将其联想为图书馆中的索引,该索引就是要查找的书籍的特定架子。

根域名服务器被指定用于互联网的 DNS 根区域,它的工作是回答发送给它的请求,来获取根区域中的记录。

DNS 根名称服务器有13台,分布在世界各地,用字母 a 到 m 表示,由12 个不同的组织运营,包括 Verisign、南加州大学和 NASA等。

13台 DNS 根名称服务器

这些数据来源于网站:https://www.iana.org/domains/root/servers

13 个主要的根名称服务器在不同的区域有许多副本:

13 个主要的根名称服务器副本

这些数据来源于网站:https://root-servers.org/

当根域名服务器收到来自 DNS 解析器的查询时,它还不知道确切的 IP 地址,需要将解析器定向到下一个级别,即顶级域 (TLD) 名称服务器。

3. TLD 名称服务器

TLD 名称服务器保存包含在 TLD 名称中的二级域IP 地址,然后它会释放网站的 IP 地址并将查询发送到域的名称服务器。

顶级域 (TLD) 服务器存储顶级域的地址信息,例如 .net、.org 和 .com

TLD服务器

4. 权威域名服务器

有两种类型的权威名称服务器:

  • 主服务器
  • 从服务器

主服务器保留区域记录的原始副本,从服务器是主服务器的精确副本,分担 DNS 服务器负载并在主服务器出现故障时充当备份。

DNS 查找

DNS 查找是在 Internet 上查找域名的 IP 地址的过程,有两种类型的 DNS 查找:

DNS 两种查找

正向查找

用户输入一个域名,DNS 使用它来查找与该域对应的 IP 地址。

正向查找

反向查找

与正向 DNS 查找完全相反,用户已经有了IP地址,用于查找与该IP关联的域名。

反向查找

DNS 协议

DNS 协议使用两种类型的 DNS 消息:

  • 查询
  • 回复

查询和回复都包含一个标题和四个部分:

  • 问题
  • 答案
  • 权限
  • 空格

DNS 协议报文

Wireshark抓包:

DNS 协议 Wireshark 抓包

总结

DNS是一个巨大的目录,它保存着互联网上每一个域名的记录,并将其与它的 IP 地址进行映射,DNS是一种标准协议,可帮助 互联网用户使用人类可读地址发现网站,没有 DNS,互联网就会崩溃。

本文主要介绍了DNS以下部分:什么是DNS?

  • DNS出现的历史背景

    • 什么是 DNS 服务器?
  • DNS术语
  • DNS如何工作?

      1. DNS 递归器
      1. 根域名服务器
      1. TLD 名称服务器
      1. 权威域名服务器
  • DNS 查找

    • 正向查找
    • 反向查找
  • DNS 协议
  • 总结

感谢您的阅读,如果觉得文章对您有帮助,别忘了点赞👍、收藏⭐哦!有任何问题,欢迎在下方评论区与我讨论!!!

目录
相关文章
|
2天前
|
监控 安全 网络安全
漏洞扫描系统可以用于发现网络入侵者?
漏洞扫描系统自动检测系统安全漏洞,如未打补丁软件和弱密码,但无法直接发现网络入侵者。入侵者可能使用加密和掩盖手段逃避检测。为此,需结合入侵检测系统(IDS)、防火墙、安全事件管理(SIEM)系统和蜜罐等工具实时监控异常行为。企业还应提升员工安全意识以增强防御能力。
|
2天前
|
机器学习/深度学习 传感器 算法
LabVIEW开发基于神经网络的自动汽车制动系统
LabVIEW开发基于神经网络的自动汽车制动系统
|
2天前
|
机器学习/深度学习 人工智能 算法
构建未来:AI驱动的自适应网络安全防御系统
【5月更文挑战第11天】在数字时代的风口浪尖,网络安全问题日益凸显。传统的安全防御手段在应对不断进化的网络威胁时显得力不从心。本文提出了一个基于人工智能技术的自适应网络安全防御系统框架,旨在通过实时分析、学习和预测网络行为,自动调整防御策略以抵御未知攻击。系统采用先进的机器学习算法和大数据分析技术,能够在保持高效性能的同时,最小化误报率。文章详细阐述了系统的设计理念、关键技术组件以及预期效果,为网络安全的未来发展方向提供新思路。
|
2天前
|
网络协议 网络安全 数据库
LabVIEW中MAX在我的网络上不显示“远程系统”选项卡或设备
LabVIEW中MAX在我的网络上不显示“远程系统”选项卡或设备
|
2天前
|
机器学习/深度学习 人工智能 安全
构建未来:AI驱动的自适应网络安全防御系统
【5月更文挑战第8天】 随着网络攻击的不断演变,传统的安全措施已不足以应对日益复杂的威胁。本文提出了一种基于人工智能(AI)的自适应网络安全防御系统,旨在通过实时分析网络流量和行为模式来自动调整安全策略。系统利用深度学习算法识别潜在威胁,并通过强化学习优化防御机制。初步实验表明,该系统能够有效提高检测率,减少误报,并在未知攻击面前展现出较强的适应性。
22 1
|
2天前
|
域名解析 存储 缓存
Linux中搭建DNS 域名解析服务器(详细版)
Linux中搭建DNS 域名解析服务器(详细版)
|
2天前
|
机器学习/深度学习 存储 算法
m基于Yolov2深度学习网络的螺丝检测系统matlab仿真,带GUI界面
MATLAB 2022a中展示了YOLOv2算法的螺丝检测仿真结果,该系统基于深度学习的YOLOv2网络,有效检测和定位图像中的螺丝。YOLOv2通过批标准化、高分辨率分类器等优化实现速度和精度提升。核心代码部分涉及设置训练和测试数据,调整图像大小,加载预训练模型,构建YOLOv2网络并进行训练,最终保存检测器模型。
25 3
|
2天前
|
网络协议 Linux 网络架构
|
2天前
|
域名解析 网络协议 Linux
linux网络配置详解
linux网络配置详解
21 0
|
2天前
|
网络协议 Java Linux
【探索Linux】P.29(网络编程套接字 —— 简单的TCP网络程序模拟实现)
【探索Linux】P.29(网络编程套接字 —— 简单的TCP网络程序模拟实现)
14 0

相关产品

  • 云解析DNS
  • 推荐镜像

    更多