一文了解DNS,DNS是如何工作的?

2,100 阅读2分钟

大家好,我是右子。

网络是由计算机与连接节点组成,每台设备有一个字符串,也叫做IP地址,用来作为标识。

如图:

image.png

我们对服务器访问的时候,一般不会去用ip进行访问的,原因就是难记。

拿百度的网址举例:我们更喜欢通过: www.baidu.com访问,而不是他的ip:110.242.68.3

DNS是干什么的?

  • DNS就是把人们容易记住域名变成IP地址的一个服务。

DNS如何工作的?

  • 在浏览器中,当我们输入了一个网址:www.abc.com,其实上访问的是:www.abc.com.

  • 这个.代表着互联网的根域名。

  • 一个完整的流程是:

    • 当我们输入完域名之后,系统会先去找缓存,如果没有缓存↓
    • 就去检查hostc文件有没有手动配置,如果没有配置↓
    • 系统会去访问局部DNS服务,局部DNS如果没有缓存↓
    • 局部DNS服务器会去找根域名服务器进行询问,一般根域名服务器的地址通常被hard coded在局部服务器中,如果根域名服务器中也找不到的话,会告诉DNS,.com信息可以去哪里查询。
    • DNS把.com的信息缓存起来之后,继续去找顶级域名服务器询问:www.abc.com的IP地址。
    • 顶级域名服务器可以找到abc.com的信息并返回IP地址,DNS拿到IP地址之后并缓存起来,把信息告诉浏览器,然后就可以正常访问了。
    • 这时有其他访问www.abc.com时,会从系统缓存中告诉访问者。
  • 在域名的TTL(Time to live)的缓存到期之前,局部域名服务器都会缓存着结果。

总结一下

DNS的主要作用:

  • 它是作为域名和IP地址相互映射的一个服务,作用是能够让你更方便的访问互联网,不用你去记复杂的IP。

DNS缓存:

  • 当DNS返回正确的IP之后,系统就会把这个结果临时储存起来做为缓存,并且设置一个缓存时间。
  • 当命中缓存时,系统会从本机的缓存中返回结果,不会再去访问DNS服务器,相当于变相“加速”了网址的解析过程。