DNS原理
文章类型:Javascript
发布者:hp
发布时间:2023-05-11
一:定义
1:是一个分布式的命名系统,用于将域名解析为 IP 地址。
2:DNS 的作用是将人类可读的域名(例如:www.cqhxb.com.com)转换为计算机可读的 IP 地址(例如:172.217.7.36)。
3:DNS 使用一种树形结构的命名空间来管理所有域名,每个域名对应一棵树的节点,根节点表示根域名,所有的域名都是从根域名开始的
二:步骤
1:用户输入域名,浏览器会首先检查本地 DNS 缓存,如果缓存中有该域名对应的 IP 地址,则直接使用该 IP 地址,否则进行下一步操作。
2:本地缓存中没有该域名对应的 IP 地址,则浏览器会向本地 DNS 服务器发送一个 DNS 查询请求。
3:本地 DNS 服务器也没有该域名对应的 IP 地址,则会向根域名服务器发送一个 DNS 查询请求,根域名服务器会返回一个该域名对应的顶级域名服务器的 IP 地址。
4:本地 DNS 服务器再向顶级域名服务器发送一个 DNS 查询请求,顶级域名服务器会返回一个该域名对应的次级域名服务器的 IP 地址。
5:本地 DNS 服务器继续向次级域名服务器发送 DNS 查询请求,最终获得该域名对应的 IP 地址,并将其存储在本地缓存中,返回给浏览器。
6:浏览器获得该域名对应的 IP 地址后,可以向该 IP 地址对应的服务器发送 HTTP 请求,获取网页的内容。
三:总结
1:DNS 查询请求通常是基于 UDP 协议进行的,UDP 是一种无连接的、不可靠的传输协议,因此 DNS 查询可能会出现丢包、延迟等问题
2:为了提高 DNS 查询的效率和可靠性,DNS 还提供了一些优化策略,如 DNS 缓存、DNS 负载均衡、DNS 递归查询等