DNS(域名解析)

主机名:局域网中,每台主机都有一个主机名,可以用英文字母或单词组成来代替该主机的IP地址。大部分WEB服务,默认的主机名就是WWW。

域名:你有一个域名表示你拥有了互联网的一个资源,比如 google.com 表示谷歌这个组织拥有的一个互联网资源。

子域名:一个企业为了规范化自己域名系统和服务,而在一级域名下扩展出来的名称系统。

F(fully)Q(qualified)D(domain)N(name):绝对域名名称,由主机名和域名组合而成。一个完整的FQDN末尾有一个点号,比如WWW.google.com.代表一个FQDN。

DNS是什么东西?

DNS 是互联网的目录服务

DNS 是个数据库,更是个协议,默认使用 UDP 协议端口号是 53,很多客户端(比如浏览器和 dig)通过这个协议,查询出了某个域名的 A 记录。而 DNS 服务器为了管理,一般使用 BIND 这个软件来提供具体的服务(服务器端)。

DNS是互联网一项服务,它做为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。

DNS是一个有层级的巨大的数据库。这个数据库的组成部分是具体的服务器,这些服务器来维护DNS数据。DNS最顶层是点号(.),叫做ROOT根域名。接下来是TLDs,表示顶级域名,分为两种类型:1、.com,.org这样的叫做一般通用顶级域(gTLDs)。2、.cn,.jp叫做国家顶级域。根域名服务器管理顶级服务器,顶级服务器管理一级域名,最后一个域名服务器管理具体主机IP信息。

DNS是干什么的?

当我们输入网址进行资源访问时候,浏览器根据IP地址和放置资源的服务器连接,。而DNS的作用就是翻译域名,获取这个域名对应的IP地址。

        为什么不直接用IP地址直接访问服务器资源?因为IP地址很难记忆,另外服务器绑定IP可能变化,而浏览器不知道这个变化。

谁在提供DNS服务(解析域名)?不同操作系统方式不同。一般DNS服务器会自动分配,比如在家里你通过宽带上网,使用本地DNS服务一般是IPS提供的。

        Windows中,可以在控制版面网络连接中配置,两种方式:

                1、自定义配置一个DNS服务。2、由ISP或者局域网DHCP协议进行分配。这两种DNS服务器称为本地DNS服务器,由它来负责域名解析工作。一旦配置好本地DNS服务器后,在电脑上任何软件(如浏览器)想使用DNS翻译功能就会向本地DNS服务器发出请求。

        Linux中,是通过/ect/resolv.conf文件配置本地DNS服务器。

DNS具体工作?

当一个用户在地址栏输入www.taobao.com时,DNS解析大概有10个过程。

DNS解析过程

1、浏览器先检查自身缓存中,有没有被解析过的这个域名对应的IP地址,如果有,解析结束。同时域名被缓存的时间也可通过TTL属性来设置。

2.、如果浏览器缓存中没有(专业点叫还没命中),浏览器会检查操作系统缓存中有没有对应的已解析过的结果。而操作系统也有一个域名解析的过程。在windows中可通过c盘里一个叫hosts的文件来设置,如果你在这里指定了一个域名对应的ip地址,那浏览器会首先使用这个ip地址。但是这种操作系统级别的域名解析规程也被很多黑客利用,通过修改你的hosts文件里的内容把特定的域名解析到他指定的ip地址上,造成所谓的域名劫持。所以在windows7中将hosts文件设置成了readonly,防止被恶意篡改。

3、如果至此还没有命中域名,才会真正的请求本地域名服务器(LDNS)来解析这个域名,这台服务器一般在你的城市的某个角落,距离你不会很远,并且这台服务器的性能都很好,一般都会缓存域名解析结果,大约80%的域名解析到这里就完成了。

4、如果LDNS仍然没有命中,就直接跳到Root Server 域名服务器请求解析。

5、 根域名服务器返回给LDNS一个所查询域的主域名服务器(gTLD Server,国际顶尖域名服务器,如.com .cn .org等)地址

6、此时LDNS再发送请求给上一步返回的gTLD

7、接受请求的gTLD查找并返回这个域名对应的Name Server的地址,这个Name Server就是网站注册的域名服务器

8、Name Server根据映射关系表找到目标ip,返回给LDNS。

9、LDNS缓存这个域名和对应的ip。

10、 LDNS把解析的结果返回给用户,用户根据TTL值缓存到本地系统缓存中,域名解析过程至此结束

你可能感兴趣的:(DNS(域名解析))