DNS原理:http://amon.org/dns-introduction.html
根域:就是所谓的“.”
根域服务器只是具有13个IP地址,但机器数量却不是13台,因为这些IP地址借助了任播的技术,所以我们可以在全球设立这IP的镜像站点,你访问到的这个IP并不是唯一的那台主机。
域的划分:
根域下来就是顶级域或者叫一级域
每个域都会有域名服务器,也叫权威域名服务器。
Baidu.com就是一个顶级域名,而www.baidu.com却不是顶级域名,他是在baidu.com 这个域里的一叫做www的主机。
a.www.baidu.com,在这个网址中,www.baidu.com变成了一个二级域而不是一台主机,主机名是a。
域名服务器:
能提供域名解析的服务器,上面的记录类型可以是A(address)记录,NS记录(name server),MX(mail),CNAME等。
A记录:就是记录一个IP地址和一个主机名字
第一行Server是:DNS服务器的主机名
第二行Address是: 它的IP地址--
下面的Name是:解析的URL-- www.wangwanchao.wang
Address是:解析出来的IP--112.121.162.168
解析过程:
①本机向local dns请求www.baidu.com
②local dns向根域请求www.baidu.com,根域返回com.域的服务器IP
③向com.域请求www.baidu.com,com.域返回baidu.com域的服务器IP
④向baidu.com请求www.baidu.com,返回cname www.a.shifen.com和a.shifen.com域的服务器IP
⑤向root域请求www.a.shifen.com
⑥向com.域请求www.a.shife.com
⑦向shifen.com请求
⑧向a.shifen.com域请求
⑨拿到www.a.shifen.com的IP
⑩localdns返回本机www.baidu.com cname www.a.shifen.com 以及 www.a.shifen.com的IP
一、原生jdk实现
二、dnsjava实现