nslookup命令模拟DNS域名解析过程Quick Start

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
简介: 域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站的一种服务。IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址。域名解析就是域名到IP地址的转换过程。域名解析也叫域名指向、服务器设置、域名配置以及反向IP登记等等。说得简单点就是将好记的域名解析成IP,服务由DNS服务器完成。互联网中的地址是数字的IP地址,域名解析的作用主要就是为了便于记忆。为了更好的理解DNS服务器解析域名的过程,在这里我们用nslookup命令模拟一下大致流程,以供参考。

1.什么是DNS域名解析

  • 我们首先要了解域名和IP地址的区别。IP地址是互联网上计算机唯一的逻辑地址,通过IP地址实现不同计算机之间的相互通信,每台联网计算机都需要通过IP地址来互相联系和分别。
  • 但由于IP地址是由一串容易混淆的数字串构成,人们很难记忆所有计算机的IP地址,这样对于我们日常工作生活访问不同网站是很困难的。基于这种背景,人们在IP地址的基础上又发展出了一种更易识别的符号化标识,这种标识由人们自行选择的字母和数字构成,相比IP地址更易被识别和记忆,逐渐代替IP地址成为互联网用户进行访问互联的主要入口。这种符号化标识就是域名。
  • 域名虽然更易被用户所接受和使用,但计算机只能识别纯数字构成的IP地址,不能直接读取域名。因此要想达到访问效果,就需要将域名翻译成IP地址。而DNS域名解析承担的就是这种翻译效果。例如:把 www.baidu.com 这个域名翻译成对应 IP 220.181.38.251

2.DNS域名解析过程

  • 当我们在浏览器地址栏中输入www.baidu.com时,DNS解析将会有将近10个步骤,这个过程大体大体由一张图可以表示:

image.png

image.png

2.1 域名解析流程

  • 整个过程大体描述如下,其中前两个步骤是在本地电脑内完成的,后8个步骤涉及到真正的域名解析服务器:

    1. 浏览器先检查自身缓存中有没有被解析过的这个域名对应的ip地址,如果缓存中有,这个解析过程就结束。
    2. 如果浏览器缓存中没有数据,浏览器会查找操作系统缓存中是否有这个域名对应的DNS解析结果。其实操作系统也有一个域名解析的过程,在windows中可以通过配置C:\Windows\System32\drivers\etc\hosts文件来设置,用户可以将任何域名解析到任何能够访问的IP地址。
    3. 前两个过程无法解析时,就要用到我们网络配置中的"DNS服务器地址"了。客户端通过浏览器访问域名为 www.baidu.com (http://www.baidu.com) 的网站,发起查询该域名的IP地址的DNS请求。该请求发送到了本地DNS服务器上。本地DNS服务器会首先查询它的缓存记录,如果缓存中有此条记录,就可以直接返回结果。如果没有,本地DNS服务器还要向DNS根服务器进行查询。每个完整的内网通常都会配置本地DNS服务器(例如你是通过学校连接互联网的一般是你学校的DNS服务器,如果你是在小区连接互联网的一般是网络提供商比如电信,联通的DNS服务器,DNS服务器通常不会太远)大约80%的域名解析到这里就完成了。
    4. 本地 DNS 服务器向根服务器发送 DNS 请求,请求域名为 www.baidu.com (http://www.baidu.com) 的 IP 地址。
    5. 根服务器经过查询,没有记录该域名及IP地址的对应关系。但是会告诉本地DNS服务器,可以到顶级域名服务器上继续查询,并给出顶级域名服务器的地址。如.com、.cn、.org等,全球只有13台
    6. 本地 DNS 服务器向 顶级DNS服务器发送 DNS 请求,请求域名 www.baidu.com (http://www.baidu.com) 的 IP 地址。
    7. 顶级DNS服务器收到请求后,不会直接返回域名和 IP 地址的对应关系,而是告诉本地DNS 服务器,该域名可以在 baidu.com 域名服务器(Name Server服务器)上进行解析获取 IP 地址,并告诉 baidu.com 域名服务器的地址。
    8. 本地 DNS 服务器向 baidu.com 域名服务器发送 DNS 请求,请求域名 www.baidu.com (http://www.baidu.com) 的 IP 地址。
    9. baidu.com 服务器收到请求后,在自己的缓存表中发现了该域名和 IP 地址的对应映射关系表,并将 IP 地址返回给本地 DNS 服务器。
    10. 本地 DNS 服务器将获取到与域名对应的 IP 地址返回给客户端,并且将域名和 IP 地址的对应关系保存在缓存中,以备下次别的用户查询时使用。

2.2 nslookup命令模拟DNS域名解析

  • 小伙伴可以通过输入以下指令来更好的理解DNS解析域名的过程
  • 首先通过 win+r 打开 运行窗口 输入cmd

image.png


  • 第一步:在命令行中输入 nslookup, 返回默认的DNS服务器和IP地址

1665452925527_4341CECC-C2D6-4e2c-9CFF-585B96097EB4.png


  • 第二步:输入 set type=ns   此处的ns代表服务器名称name server

    • 然后输入 .   点代表查询根服务器

lQLPJxbEYB48X23NAzvNBPSwcIxD9sbuiKMDQs7QE0AQAA_1268_827.png

  • 非权威的结果一般来说是缓存的结果,而不是控管的相应服务器返回的结果。
  • 第三步:输入server 192.33.4.12   和该根服务器域名建立通信(此处有可以会出现DNS request time out),大家可以尝试切换其他节点的服务,如d.root-servers.net.

1665453642601_9357FD65-C368-49c6-BCA4-F7CDE121E5C1.png


  • 第四步:输入 set type=ns

    • 输入com.   向根域名服务器咨询,com. 域名服务器的地址

lQLPJxbEYNI96DfNAvTNBWawxPTo_0OC46oDQs_21cBLAA_1382_756.png

- 此处响应为权威响应,因为是我们现在接入的根服务器域名对我们的真实响应。顶部是服务器的域名,底部是域名对应的IPV4和IPV6地址。其中,gtld为通用顶级域(英语:Generic top-level domain),属于顶级域名里最常见的一种。于是我们可以直接和任意一个ip地址进行通信

  • 第五步:输入server 192.55.83.30 和m对应的gtld进行通信,显示出如下通信信息

lQLPJxbEYSp06rLNAt_NBfywUZZ8IgdnPu0DQtCHVsCRAA_1532_735.png

  • 第六步:输入 set type=a

    • 输入 baidu.com.   向顶级域名服务器咨询baidu.com域名服务器地址

lQLPJxbEYU7Qw5bNAj7NBhawEFs1YvqFiqIDQtDClQCbAA_1558_574.png


  • 第七步:输入server 220.181.33.31   和权威域名服务器对话

lQLPJxbEYZW-uOHNA5TNBMCwFmXjnAIohjIDQtE2vYAdAA_1216_916.png


  • 第八步:输入 set type=ns

    • 输入 www.baidu.com.   向权威域名服务器咨询www.baidu.com域名服务器地址

lQLPJxbEYdmxxj3NAVvNBVKwj2TJsOCJpxQDQtGnAoAcAA_1362_347.png

- Canonical Name指的就是CNAME记录,也就是别名解析,可以将指定的域名解析到其他域名上,而其他域名就是指定域名的别名,整个解析过程称为别名解析。

  • 第九步:输入 www.a.shifen.com   这里返回的ip地址就是我们最终解析到的ip

lQLPJxbEYiHQ4fbNAhDNBTSwPF0Af8snrqsDQtIcfMD0AA_1332_528.png

更多参考

DNS域名详细解析过程

目录
相关文章
|
1月前
|
域名解析 缓存 网络协议
减少域名dns解析时间
域名解析中的TTL值设置多少合适
69 5
|
22天前
|
域名解析 弹性计算 安全
阿里云服务器租用、注册域名、备案及域名解析完整流程参考(图文教程)
对于很多初次建站的用户来说,选购云服务器和注册应及备案和域名解析步骤必须了解的,目前轻量云服务器2核2G68元一年,2核4G4M服务器298元一年,域名注册方面,阿里云推出域名1元购买活动,新用户注册com和cn域名2年首年仅需0元,xyz和top等域名首年仅需1元。对于建站的用户来说,购买完云服务器并注册好域名之后,下一步还需要操作备案和域名绑定。本文为大家展示阿里云服务器的购买流程,域名注册、绑定以及备案的完整流程,全文以图文教程形式为大家展示具体细节及注意事项,以供新手用户参考。
|
2月前
|
网络协议 安全 文件存储
动态DNS(DDNS)技术在当前网络环境中日益重要,它允许使用动态IP地址的设备通过固定域名访问
动态DNS(DDNS)技术在当前网络环境中日益重要,它允许使用动态IP地址的设备通过固定域名访问,即使IP地址变化,也能通过DDNS服务保持连接。适用于家庭网络远程访问设备及企业临时或移动设备管理,提供便捷性和灵活性。示例代码展示了如何使用Python实现基本的DDNS更新。尽管存在服务可靠性和安全性挑战,DDNS仍极大提升了网络资源的利用效率。
88 6
|
2月前
|
域名解析 网络协议 安全
反向DNS解析是从IP地址到域名的映射,主要作用于验证和识别,提高通信来源的可信度和可追溯性
在网络世界中,反向DNS解析是从IP地址到域名的映射,主要作用于验证和识别,提高通信来源的可信度和可追溯性。它在邮件服务器验证、网络安全等领域至关重要,帮助识别恶意行为,增强网络安全性。尽管存在配置错误等挑战,但正确管理下,反向DNS解析能显著提升网络环境的安全性和可靠性。
146 3
|
2月前
|
网络协议 网络安全 网络虚拟化
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算。通过这些术语的详细解释,帮助读者更好地理解和应用网络技术,应对数字化时代的挑战和机遇。
130 3
|
2月前
|
域名解析 缓存 网络协议
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
|
3月前
|
监控 网络协议 安全
DNS服务器故障不容小觑,从应急视角谈DNS架构
DNS服务器故障不容小觑,从应急视角谈DNS架构
80 4
|
3月前
|
域名解析 弹性计算
内网域?名解析记录是否会覆盖公网域名解析记录?
内网域?名解析记录是否会覆盖公网域名解析记录?
|
2月前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
96 2
|
16天前
|
存储 设计模式 算法
【23种设计模式·全精解析 | 行为型模式篇】11种行为型模式的结构概述、案例实现、优缺点、扩展对比、使用场景、源码解析
行为型模式用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间怎样相互协作共同完成单个对象都无法单独完成的任务,它涉及算法与对象间职责的分配。行为型模式分为类行为模式和对象行为模式,前者采用继承机制来在类间分派行为,后者采用组合或聚合在对象间分配行为。由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象行为模式比类行为模式具有更大的灵活性。 行为型模式分为: • 模板方法模式 • 策略模式 • 命令模式 • 职责链模式 • 状态模式 • 观察者模式 • 中介者模式 • 迭代器模式 • 访问者模式 • 备忘录模式 • 解释器模式
【23种设计模式·全精解析 | 行为型模式篇】11种行为型模式的结构概述、案例实现、优缺点、扩展对比、使用场景、源码解析

相关产品

  • 云解析DNS
  • 推荐镜像

    更多
    下一篇
    开通oss服务