【网络协议】DNS域名解析的详细过程

Hadoop完全分布式搭建 文章目录前言一、虚拟机准备1. 可以正常上网2. ip为静态ip3. 安装必要的环境4. 关闭防火墙以及防火墙开机自启动5. 修改主机名及添加映射6. 创建用户7. 克隆另外两台虚拟机:hadoop102 hadoop103克隆 hadoop102更改 hadoop102 相关信息测试三台虚拟机是否可以相互通信二、Hadoop安装及相关配置1.引入库2.读入数据总结 前言 必备条件: 电脑内存最好8G以上 虚拟机ip为静态ip且可以 ping 通外网 提示:若满足以上条件,下面案例可供参考 一、虚. 阅读详情

1 问题来源

今天同事因为连接不上网络,疫情期间,公司IT又不方便联系,所以请我帮看看原因。问题排查倒是挺简单,用同事电脑在命令行出窗口输入ping 220.181.38.149(该IP访问的是百度首页网址),可以收到正常响应。但是ping www.baidu.com的时候就返回timeout,明明是同一个网址,ping的结果却大不相同。并且在地址栏输入220.181.38.149可以正常访问百度首页,但是www.baidu.com却提示无法连接。到这里,问题已经很显然了,IP访问毫无问题,域名一敲就凉凉,这显然是域名到IP这一步出了问题,也就是DNS域名解析出错。
在这个排查的过程,脑海中回想了用户通过域名请求到拿到请求地址的内容的整个流程,发现了对于DNS域名解析尚有模糊的地方,于是决定写下博客以作记录。

2 DNS基本概念

DNS是Domain Name System的缩写,就是域名系统。DNS协议则是用来实现域名和IP地址的相互转换。IP地址是面向主机的,而域名则是面向用户的。
实际上在电脑操作系统中的hosts文件就有记录域名和IP的一一对应关系。在早期的域名解析中,如果有一个新的计算机想接入网络,或者某个计算IP变更都需要到信息中心申请变更hosts文件。其他计算机也需要定期更新,才能上网。
但是这样太麻烦了,所以就出现了DNS系统。

2.1 域的划分

以www.baidu.com为例,实际上com后面还有“.”,只是习惯问题给省略了,这个“.”就是根域。根域服务器只是具有13个IP地址,但机器数量却不是13台,因为这些IP地址借助了任播的技术,所以我们可以在全球设立这些IP的镜像站点,你访问到的这个IP并不是唯一的那台主机。这里的com就是顶级域名,baidu是二级域名。

2.2 域名服务器的分类

域名是分层结构,域名服务器也是对应的层级结构。如下表所示。
表2-1 域名服务器的分类

名称作用
根域名服务器最高层次的域名服务器,本地域名服务器解析不了的域名就会向其求助
顶级域名服务器负责管理在该顶级域名服务器下注册的二级域名
权限域名服务器负责一个区的域名解析工作
本地域名服务器当一个主机发出DNS查询请求时,这个查询请求首先发给本地域名服务器

3 DNS域名解析全过程

例如,当用户在地址栏请求www.baidu.com时,实际上经历了以下过程:
1、浏览器先检查自身缓存中有没有被解析过的这个域名对应的IP地址,如果有,解析结束。同时域名被缓存的时间也可通过TTL(Time To Live)属性来设置。

2、如果在浏览器缓存中没有命中,浏览器会检查操作系统缓存中有没有对应的已解析过的结果。而操作系统也有一个域名解析的过程。在Windows中可通过C盘里的hosts文件来设置,如果你在这里指定了一个域名对应的ip地址,那浏览器会首先使用这个ip地址。但是这种操作系统级别的域名解析规程也被很多黑客利用,通过修改你的hosts文件里的内容把特定的域名解析到他指定的IP地址上,造成所谓的域名劫持。所以在windows7中将hosts文件设置成了readonly,防止被恶意篡改。

3、如果至此还没有命中域名,才会真正的请求本地域名服务器(LDNS)来解析这个域名,这台服务器一般在你所在的城市,并且这台服务器一般都会缓存域名解析结果,大约80%的域名解析到这里就完成了。

4、 如果LDNS仍然没有命中,就直接跳到**根域名服务器(Root Server)**请求解析。

5、根域名服务器返回给LDNS一个所查询域的顶级域名服务器(gTLD Server,Generic top-level domain Server,如.com .cn .org等)地址。

6、此时LDNS再发送请求给上一步返回的gTLD。

7、接受请求的gTLD查找并返回这个域名对应的Name Server的地址,这个Name Server就是网站注册的域名服务器。

8、 Name Server根据映射关系表找到目标IP,返回给LDNS。

9、LDNS缓存这个域名和对应的IP。

10、LDNS把解析的结果返回给用户,用户根据TTL值缓存到本地系统缓存中,域名解析过程至此结束。

小结

在域名解析过程中涉及到了递归查询和迭代查询;
(1)递归查询:本机向本地域名服务器发出一次查询请求,就静待最终的结果。如果本地域名服务器无法解析,自己会以DNS客户机的身份向其它域名服务器查询,直到得到最终的IP地址告诉本机。
(2)迭代查询:本地域名服务器向根域名服务器查询,根域名服务器告诉它下一步到哪里去查询,然后它再去查,每次它都是以客户机的身份去各个服务器查询。

技术是开源的,知识是共享的。

网络协议----一次网购下单的过程 在极客时间刘超先生的趣谈网络协议的专栏上看到了一篇关于通过一次网购下单的过程来看看互联网世界的运行过程中,都使用了哪些网络协议的文章,这让我受益匪浅。因此,我打算写下这篇博客来记录看完以及结合一些其他的资料后的收获。 当我们在网上购物时,现在浏览器里输入https://www.taobao.com/,这是一个URL。而浏览器只知道这是一个URL,而无法找到具体服务器所在的位置,因此无法访问到。于是... 阅读详情

相关推荐

超详细讲解页面加载过程

说一说从输入URL到页面呈现发生了什么?(知识点) 这个题可以说是面试最常见也是一道可以无限难的题了,一般面试官出这道题就是为了考察你的前端知识的深度与广度。 1.浏览器接受URL开启网络请求线程(涉及到:浏览器机制,线程与进程等) 2.开启网络线程到发出一个完整的http请求(涉及到:DNS解析,TCP/IP请求,5层网络协议等) 3.从服务器接收到请求到对应后台接受到请求(涉及到:负载均衡,安全拦截,后台内部处理等) 4.后台与前台的http交互(涉及到:http头,响应码,报文结构,co

java_xiaoo的博客 2747

计算机网络

计算机网络通讯协议

qq_33827423的博客 1081

网络协议分析工具Ethereal的使用

大学时计算机网络课的实验报告,当时提不起兴趣,今天看来还挺有用的。可以学习下怎样抓数据包,然后分析程序的通信协议。 一:学习使用网络协议分析工具Ethereal的方法,并用它来分析一些协议。 实验步骤: 1.  用“ipconfig”命令获得本机的MAC地址和缺省路由器的IP地址;(注:缺省路由器即 ”Default Gateway”) 命令行:Start->Run->CMD-

西代零零发 9386

Linux路由规则分析及常用命令

Linux系统在接收/发送数据时,都会经过路由模块。在默认的单路由表情况下,Linux机器要访问一个目标IP时,一般分四步: (1)如果本机有目标ip,则会直接访问本地; (2)如果路由条目里包含了目标ip的网段,则数据包就会从对应路由条目后面的网卡出去; (3)如果没有对应网段的路由条目,则全部都走网关; (4)如果网关也没有,则报错:网络不可达。

sinat_32152141的博客 4607

18、网络协议中的 DHCP 与 DNS 配置指南

本文详细介绍了网络协议中的 DHCP 和 DNS 技术,包括 Windows 系统中 DHCP 客户端的配置步骤,DHCP 租约管理及自动专用 IP 寻址(APIPA)的使用。同时深入解析了 DNS 的分层命名系统、域名规则、完全限定域名(FQDN)以及 DNS 与 URL 的关系。还介绍了主机文件的用途及其配置方法。通过这些内容,帮助读者更好地理解和配置网络环境,提高网络管理的效率与稳定性。

v4w5x6的博客 113

网络协议基础:解读TCP/IP协议栈、HTTP、HTTPS、DNS等协议原理

通过本文的介绍,我们详细解析了TCP/IP协议栈、HTTP、HTTPS和DNS等关键网络协议的原理及其应用。这些协议在互联网通信中扮演着至关重要的角色,通过理解它们的工作机制,我们可以更好地优化和管理网络资源。如果有任何问题或需要进一步讨论,欢迎交流探讨。希望本文能为读者提供有价值的参考,帮助深入理解网络协议的原理和应用。

Echo_Wish 569

CentOS7 网络配置(桥接模式)

参考:Centos7.X下搭建KVM虚拟机及配置Bridge网桥全过程KVM创建桥接网卡--最简洁最详细_Bruce小鬼的博客-优快云博客_kvm 网卡桥接 环境:CentOS7物理机桥接模式原理NAT模式,相当于KVM内所有的虚拟机,要和外部网络通信的时候,共享一个KVM宿主机的IP,通过linux系统的转发功能实现对外通信。用作虚拟化桌面可行。BRIDGE模式。相当于KVM内所有虚拟机,通过一个虚拟交换机,把虚拟交换机与宿主机的物理网卡绑定一起。虚拟机与宿主机互相独立的IP。物理网卡监听这些IP,从而

justlpf的专栏 1万+

DNS协议分析实验报告

DNS协议分析实验报告;对域名的IP地址解析请求和应答报文应逐字段分析,其它报文指出其主要功能

Docker基本命令(一) 之 帮助命令、镜像操作、容器操作、可视化工具portainer

使用Docker安装nginx服务器Docker 基本使用docker基本命令帮助命令docker镜像命令容器命令常用其他命令练习可视化 Docker 基本使用 docker基本命令 帮助命令 docker version #显示docker的版本信息 docker info #显示关于docker的更加详细的信息 docker --help #查看docker帮助文档 docker的官方帮助文档:https://docs.docker.com/engine/reference docker镜像命令 do

weixin_46234454的博客 1558

YOLOv11n-seg 实战指南:从训练到模型部署的完整流程

本文提供了YOLOv11n-seg实例分割模型从环境准备、数据标注到模型训练、验证及最终部署的完整实战指南。详细讲解了如何准备多边形掩码数据、配置关键训练参数、解读分割核心评估指标,并重点介绍了将模型导出为ONNX等格式进行部署的流程与优化技巧,帮助开发者高效完成从开发到生产的全链路实践。

weixin_29062255的博客 554

绕过Google Play:获取Expo Go安卓APK的实用指南

本文为国内安卓开发者提供了绕过Google Play商店获取Expo Go APK的实用指南。针对无法访问Google Play的痛点,详细介绍了通过官方GitHub Releases、可信第三方网站(如APKMirror)及APK下载器等多种安全获取途径,并重点讲解了APK安装、安全验证(核对签名)及常见连接问题的排查方法,帮助开发者顺利开启React Native开发之旅。

weixin_29006701的博客 577

网络协议的重要性

为什么学习网络协议 网络互通问题影响着集群规模大小和应用吞吐量大小 网络协议是计算机最本质的东西 学习网络协议遇到的问提 觉得看的懂,一问就打鼓,一用就糊涂 协议是什么 程序员向计算机世界问好的方式,就是一种协议,通过协议计算机知道我们要做什么 协议三要素 协议本身接近人类语言,需要编译器进行翻译,就是我们常说的compile。 语法 就是一段内容要符合一定的规则和格式(比如括号成对...

凯凯王的技术生涯 2170

浅谈声发射振动复合传感器

浅谈声发射振动复合传感器 随着全球经济和自动化工业的迅速发展,人们对设备故障特别是轴承类的故障诊断也日益重视起来了。 为满足客户对旋转仪器轴承异常的精准诊断,单一的依靠振动信号或声信号分析,是很难兼顾轴承的多种异常情况的。 为此,市面上开始着手研发出了可同时分析机械设备的振动信号和声信号的复合型传感器。 初期的复合型传感器主要有 2 种类型,下面以 A、B 来举例说明。 A 型是在被测物表面不同的 2 个位置分别放置声发射(AE)传感器和加速度(ACC)传感器,它虽能一定程度...

pxtech的博客 1152

访问百度的过程详解

访问百度过程

qq_51577576的博客 9447

完整的申请邓白氏编码的流程(手把手教你申请邓白氏编码)

申请公司的苹果开发者账号和企业级的苹果开发者账号时,都会用到邓白氏编码,也就是我们申请苹果开发者账号时需要填写的D-U-N-S Number。     申请这个邓白氏编码是免费的,但是从像华夏邓白氏公司提交申请到可以申请苹果开发者账号来用这个9位的D-U-N-S Number,需要一段时间,我申请得到D-U-N-S Number,用了8个工作日(不算周末哦)

wxw2011014003的博客 9万+

WorkBuddy结合DeepSeek与Skill:文献检索自动化与Token成本控制实战

Agent工具与大模型API的结合正重塑知识工作者的日常流程。在实际工程中,调用大模型处理批量任务常面临Token消耗过快、成本不可控的痛点,而国产大模型DeepSeek以极低的API定价和兼容OpenAI接口的特性,为规模化文本处理提供了“Token自由”的可能。同时,可复用的Skill机制能够将特定领域的工作流固化为标准化步骤,让Agent自动执行检索式生成、文献筛选与摘要归纳等复杂操作。本文从这一技术背景出发,以科研文献检索为应用场景,演示如何利用WorkBuddy、DeepSeek API与自建文献

weixin_29061509的博客 497

OSI七层模型与网络协议

OSI七层模型 网络协议

sgdhshshhs的博客 2520

【Bug已解决】Codex CLI 运行时出现 command not found: codex 解决方案

方案适用场景推荐指数修复 PATH 配置最常见的基础排查方向⭐⭐⭐⭐⭐检查原生二进制完整性PATH 正常但执行仍然异常⭐⭐⭐⭐统一包管理器混用多种包管理器导致混乱⭐⭐⭐⭐确认安装脚本未被跳过CI/CD 或企业策略环境⭐⭐⭐⭐排查网络下载渠道企业内网/受限网络环境⭐⭐⭐需要留意 warning 中是否涉及脚本执行失败、网络超时重试等信息,这类 warning 往往是后续问题的前兆,建议出现明显的下载/网络相关警告时就主动重新安装一次确认。Codex CLI 报。

一键难忘的博客 1万+

计算机网络原理梳理丨TCP/IP 协议族内含网络协议汇总及工作原理

DNS 解析过程 Domain Name System,域名解析系统,将域名解析为IP地址,DNS的默认缺省端口号为53 当DNS客户机提出查询请求时,首先查询本机缓存。若没有此记录,则产生一个查询请求发送至本地DNS服务器。本地DNS服务器首先查询该服务器管理的区域内资源,找到后将解析结果返回,若没有找到结果则产生请求发送至根DNS服务器,根DNS服务器要么返回查询的IP地址,要...

全栈工程师 378

Open3D点云数据处理(二):读写点云,你真的会吗?

本文详细介绍了open3d加载点云、保存点云的方法,同时打印点云坐标、颜色、法向量等字段信息。

孙悟空 2604

YOLOv8交通监控全方案:精准车辆计数+违章(闯红灯/压线)识别,拿来就落地!

作为深耕计算机视觉落地的开发者,我见过太多交通监控的“伪智能”——传统系统要么车辆计数不准(漏计/重复计数),要么违章识别滞后(靠人工回看录像),甚至连“闯红灯、压线”这类常见违章都无法实时判定,完全满足不了实际交通管理需求。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 646

Linux - 第22节 - 网络基础(其他重要协议或技术)

至今,我们的计算机上仍然保留了hosts文件,这个hosts文件当中一般存储的是主机名与IP地址之间的映射,用户也可以在hosts文件中自主添加域名和IP映射关系,在域名解析的过程中会优先查找hosts文件的内容。• 本地DNS服务器拿着域名去权威域名服务器中,查询域名对应的IP地址,最终将该域名对应的IP地址返回给浏览器,此时整个域名解析过程就完成了。• 本地DNS拿到顶级域名服务器的IP地址后,就会拿着域名去找顶级DNS服务器,顶级域名服务器会告诉本地DNS权威域名服务器的IP地址。

qq_45113223的博客 1507

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

网络其他重要协议(DNS、ICMP、NAT)

主域名是用来识别主机名称和主机所属的组织机构的一种分层结构的名称例如com: 一级域名. 表示这是一个企业域名. 同级的还有 "net"(网络提供商), "org"(非盈利组织) 等.baidu: 二级域名, 公司名.www: 只是一种习惯用法. 之前人们在使用域名时, 往往命名成类似于ftp.xxx.xxx/www.xxx.xxx这样的格式, 来表示主机支持的协议.应用层的作用: 满足我们日常需求的网络程序, 都是在应用层能够根据自己的需求, 设计应用层协议.了解HTTP协议.

weixin_74310945的博客 1933

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

输入网址到显示网页过程

从输入 `www.baidu.com` 到显示网页,核心可简化为 **5步**,每步只保留关键动作:1.浏览器通过 DNS(域名系统),把好记的 `www.baidu.com` 翻译成服务器能识别的 IP 地址(比如 `180.101.50.242`)。2.**建“通道”**:浏览器和百度服务器通过 TCP 三次握手建立稳定连接,再用 TLS 加密(HTTPS 核心),确保数据不被窃听。3.**发“请求”**:浏览器向服务器发送 HTTP 请求,说明“我要获取百度首页的资源”。4.

dgw2648633809的博客 1507

【计网】网络协议栈学习总结 --- 浏览器上输入网址域名后点击回车,到底发生了什么?

本文通过网络协议栈的学习,总结出来浏览器进行搜索的背后到底发生了什么!

叫我龙翔的博客 1731

完整的一次 HTTP 请求响应过程(一)

点击上方“芋道源码”,选择“置顶公众号”技术文章第一时间送达!源码精品专栏中文详细注释的开源项目精尽 Dubbo 原理与源码专栏( 已经完成 69+ 篇,预计总共 75+ 篇 )Jav...

芋艿V 121
上一篇: 【操作系统】存储模型(二):虚拟存储技术和置换算法
下一篇: 【数据结构与算法精炼】字符串解码讨论
少侠露飞
博客等级 码龄9年 214粉丝 117原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值