DNS协议

DNS是一个用于将域名转换为IP地址的域名系统(互联网基础服务), 属于应用层的重要协议。毕竟,域名只是一个网址便于记住的名字,而网址真正存在的地址其实是 IP 地址。

当用户输入一个域名时,DNS服务器会查询该域名对应的P地址,并将结果返回给用户。这样,用户就可以通过易记的域名访问网站,而不需要记住复杂的P地址。

拓展要点:

  • DNS底层使用UDP进行解析

  • 缓存能力DNS服务器和客户端会缓存DNS查询结果,以减少查询时间和降低对DNS服务器的负载。缓存的内容会在一定时间后过期,具体取决于DNS记录的生存时间(TTL)设置。

  • 此外DNS还具有负载均衡的作用,通过将域名解析到多个IP地址,DNS可以帮助分散流量,实现负载均衡。

DNS工作流程

简单描述:当我们向DNS服务器发起解析域名的请求时,DNS服务器首先会查询自己的缓存中有没有该域名,如果缓存中存在该域名,则可以直接返回IP地址。如果缓存中没有,服务器则会以递归的方式层层访问。例如,我们要访问www.baidu.com,首先我们会先向全球13个根服务器发起请求,询问com域名的地址,然后再向负责com域名的名称服务器发送请求,找到baidu.com,这样层层递归,最终找到我们需要的IP地址。

互联网中的域名地址,分为多级结构:

  1. 最顶级是根域

  2. 然后是顶级域(TLD),如.com.og

  3. 接着是二级域(如 baidu.com), 以及子域(如www.baidu.com)


DNS 的工作流程可以分为以下几个步骤:

一、域名解析请求:

用户在浏览器中输入一个域名(例如 www.baidu.com),浏览器首先检查本地缓存(如果有的话)是否存有该域名的 IP 地址。

二、递归 DNS 解析:

如果本地缓存中没有所需的 IP 地址,浏览器会向配置的递归 DNS 服务器发送请求。递归 DNS 服务器是互联网服务提供商(ISP)或公共 DNS 提供商(如 Google DNS 或 Cloudflare DNS)提供的服务。

三、查询根域名服务器

递归 DNS 服务器会查询根域名服务器以获取顶级域(TLD)的 DNS 服务器地址。根域名服务器负责将请求转发到对应的 TLD 服务器。

四、查询 TLD 顶级域服务器

根域名服务器将请求转发到对应的 TLD 服务器(例如,.com、.org 或 .net 服务器),这些服务器负责处理特定顶级域的请求。

五、查询权威 DNS 服务器

TLD 服务器将请求转发到域名的权威 DNS 服务器(例如 ns1.baidu.com)。权威 DNS 服务器拥有该域名的最终 DNS 记录。

六、返回 IP 地址:

权威 DNS 服务器返回与域名对应的 IP 地址给递归 DNS 服务器,然后递归 DNS 服务器将该 IP 地址返回给用户的浏览器。

七、缓存和访问:

浏览器缓存该 IP 地址以供后续请求使用,并通过 IP 地址连接到目标服务器以访问网站内容

CDN

CDN指内容分发网络,它能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决 Internet网络拥挤的状况,提高用户访问网站的响应速度

CDN会从服务器缓存网站文件,分配到不同节点上,当用户访问时,就可以就近访问CDN节点。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐