1.引言
我们在日常生活中经常浏览各种各样的网页,大多数时候我们是通过类似于www.baidu.com这样的域名来访问的,那么对计算机有一点了解的人可能会知道其实每个网址最后还是会被解析成ip地址去请求页面,由域名到ip这个过程就是DNS干的事情。
2.DNS是什么
DNS,Domain Name System,其实是一个域名系统,自发明以来,一直是Internet的关键组成部分。DNS的本质是发明了一种层次的,基于域的命名方案,并且用一个分布式的数据库系统加以实现。他的主要用途是将主机名映射成IP地址,但是也可用作其他用途。
简要的说,当我们输入一个网址并敲下回车后,应用程序调用了一个名为解析器的库程序,并且将名字作为参数传给此程序。解析器向本地DNS服务器发送一个包含该名字的请求报文,本地DNS查询该名字,并且返回该名字对应的IP地址的响应报文给解析器,然后解析器再返回IP地址给调用方。查询报文和响应报文都作为UDP数据包发送。有了IP地址以后,应用程序就可以与目标主机建立一个TCP连接,或者给他发送UDP数据包。这样,DNS就把一个域名映射成了一个IP地址。在介绍更多的细节之前,我们先来了解一下域名。
域名
一个常见的域名由几个部分构成,例如最常见的 www.baidu.com:
其实他最末尾应该还有一个 . &#