DNS
世界上有13组根服务器,150台根服务器,这些服务器负责着域名的转发
例如访问www.baidu.com,我们先给就近的一台根服务器发送请求,根服务器看到我们访问的域名的后缀是.com,于是将.com的服务器告诉我们,然后我们去访问.com服务器。
根服务器记录着每个域服务器的ip地址,这样我们才能去访问到对应的域服务器(.com、.cn、.net域名服务器)。
以上讲的一级域名、二级域名、三级域名并不叫DNS服务器。
为什么有DNS服务器这个中间过程呢?
DNS服务器有高速缓存,DNS服务器会在高速缓存中记录www.baidu.com的ip地址。
第一次查需要走以上过程,但是之后再查就直接从DNS服务器的高速缓存中找即可。
通常高速缓存中的数据的有效期为2天。
如果我们之间架设的是学校的DNS服务器,访问的人比较少,网站对应的ip也就很少。
我们将DNS服务器改成依赖谷歌的DNS服务器,这样的好处是用的人比较多,这样各种各样的网站都访问过,可能我没访问过bilibili,但是我的邻居访问过bilibili,这样我访问的时候就会在谷歌的DNS服务器中找到bilibili对应的IP地址。
DNS服务器是默认是路由器自带的DNS服务器,因为默认都是自动获取DNS服务器。
比如我们想访问www.baidu.com
- pc会先给DNS服务器发送请求,DNS服务器会先查看高速缓存中有没有www.baidu.com对应的ip地址,如果有,直接返回给pc。
- 如果没有,DNS服务器会给根服务器发请求,根服务器找到.com服务器的ip,将.com服务器的ip返回给DNS服务器。
- DNS服务器给.com服务器发请求,.com服务器把.baidu.com服务器的IP地址返回给DNS服务器。
- DNS服务器给.baidu.com服务器发请求,.baidu.com服务器返回www.baidu.com的IP地址给DNS服务器,DNS服务器首先会在高速缓存中记录下www.baidu.com的ip地址,然后把ip地址返回给pc。