谈谈DNS是什么?它的作用以及工作流程

**作者:**Insist--

个人主页: insist--个人主页

作者会持续更新网络知识和python基础知识,期待你的关注

目录

一、DNS是什么?

二、DNS的作用

三、DNS查询流程

1、查看浏览器缓存

2、查看系统缓存

3、查看路由器缓存

[4、查看ISP DNS 缓存](#4、查看ISP DNS 缓存)

5、询问根域名服务器

6、询问顶级域名服务器

7、询问权威域名服务器

8、保存结果至缓存


前言

本文就来谈谈DNS是什么,以及它的作用与工作流程。

一、DNS是什么?

DNS全称Domain Name System,Domain Name被译为域名,中文名为域名系统,也称为域名解析系统。因为IP地址是比较难记忆的,所以发明了域名方便大家上网使用。

例如:

你要访问百度网站,不需要输入百度服务器的IP地址,只需要输入百度的域名即可。简单来说,DNS就是用来把域名转换成IP地址的一个系统。

二、DNS的作用

正如上面所说,DNS的作用就是将一个域名转换成IP地址

DNS在互联网中起到了关键的作用。它通过域名解析和IP地址管理,使得人们使用简单易记的域名来访问互联网资源。同时,它还支持负载均衡、缓存和邮件交换等功能,以提高网络性能和服务质量。

三、DNS查询流程

域名解析一般采用递归查询的方式进行。一个完整的域名解析过程如下图所示:

1、查看浏览器缓存

当用户通过浏览器访问某域名时,浏览器首先会在自己的缓存中查找是否有该域名的 IP 地址

**注意:**之前访问过这个域名并没有清除缓存就会有记录。

2、查看系统缓存

当浏览器缓存中无域名对应 IP 则会自动检查用户计算机系统 Hosts 文件 DNS 缓存是否有该域名对应 IP

3、查看路由器缓存

当浏览器及系统缓存中均无域名对应 IP 则进入路由器缓存中检查。

**注意:**以上三步均为客服端的 DNS 缓存。

4、查看ISP DNS 缓存

当在用户客服端查找不到域名对应 IP 地址,则将进入 ISP DNS 缓存中进行查询。比如你用的是移动的网络,则会进入移动的 DNS 缓存服务器中进行查找。

5、询问根域名服务器

如果以上都不符合,则进入根服务器进行查询。根域名收到请求后会查看区域文件记录,若无则将其管辖范围内顶级域名(如.com等)服务器 IP 告诉本地 DNS 服务器。

6、询问顶级域名服务器

顶级域名服务器收到请求后查看区域文件记录,若无记录则将其管辖范围内权威域名服务器的 IP 地址告诉本地 DNS 服务器。

7、询问权威域名服务器

权威域名服务器接受到请求后查询自己的缓存,如果没有则进入下一级域名服务器进行查找,并重复该步骤直至找到正确记录。

8、保存结果至缓存

本地域名服务器把返回的结果保存到缓存,以备下一次使用,同时将该结果反馈给客户端,客户端通过这个 IP 地址即可访问目标Web服务器。至此,DNS递归查询的整个过程结束。

相关推荐
赵文宇8 小时前
CoreDNS大屏看板、监控、和企业微信告警通知
dns
荣--1 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森1 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
Avan_菜菜2 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
SelectDB3 天前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
XIAOHEZIcode5 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220705 天前
如何搭建本地yum源(上)
运维
大树888 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠8 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质8 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务