哪个能更好的保护你的程序安全?
细心的人会问,在第1步中,LDNS问根DNS的时候,他是怎么知道根DNS的IP的? 这13个IP通常是预先配置在LDNS里面的。在LDNS初始化DNS缓存或者缓存失效的时候,LDNS向自己被预先配置的这些IP中的一个,发起对根的查询(也即询问.的NS记录),获得最新的根DNS的信息6。 对于DNS服务器软件而言,这13个IP,配置在根提示文件(root hints file)中,可能是named.cache或root.ca或root.hints等等之类的文件。 上面就是各种教科书中都会讲到的DNS查询过程,但实际上,没有这么麻烦,因为各个层面都是有缓存的。 实际DNS查询的过程,是这样的: 举个例子,比如用户在浏览器中输入这个域名:123.abc.qq.com.cn 1、浏览器会先看自身有没有对这个域名的缓存,如果有,就直接返回,如果没有,就去问操作系统,操作系统也会去看自己的缓存,如果有,就直接返回,如果没有,再去hosts文件看,也没有,才会去问LDNS。 2、LDNS会去先看看自己有没有123.abc.qq.com.cn的A记录,要有就直接返回,要没有,就去看有没有abc.qq.com.cn的NS记录,如果有,就去问它要答案,如果没有,就去看有无qq.com.cn的NS的记录,如果有,就去问它,没有就去看有无com.cn的DNS,还没有就去看有无cn的DNS,如果连cn的NS记录都没有,才去问根。 所以,有了缓存以后,教科书上那种从根问起的情况,实际上很少发生。 只有在各处都没有缓存的时候,我们才会问根。 根镜像起什么作用? 根镜像承担起和根一样的功能。 根DNS中,最重要的文件就是根区文件(Root Zone file)。所有顶级域名记录都存在根区文件中。 辅根从主根同步数据,根镜像从根同步数据。最终,所有根和镜像都有着同样的根区文件。 而且最有意思的是,根镜像和根有着同样的IP。 我们知道,全球有一千多个根镜像,但是大多数人不知道,它们一起共享13个IP! 对的。因为只有13个根。 这是如何做到的?答案是任播(Anycast,又译泛播)技术。 不关心技术细节的,请直接看本节的最后一句。 任播最初由RFC1546提出,主要用在DNS根服务器上。 任播是指在IP网络上通过一个IP地址标识一组提供特定服务的主机,服务访问方并不关心提供服务具体是哪一台主机提供的,访问该地址的报文可以被IP网络路由到“最近”的一个(最好也只是一个,别送到多个)服务器上。这里“最近”可以是指路由器跳数、服务器负载、服务器吞吐量、客户和服务器之间的往返时间( RTT,round trip time )、链路的可用带宽等特征值。 这样,一方面,用户可以就近访问;另一方面,即便部分根出现故障也没事。 有些同学可能联想到负载均衡,没错,大致上就是这个意思。 对于中国用户来说,对根的请求,一般不会跑到美国去,而是通过任播技术路由到中国境内的根镜像上。 根DNS是怎么管理的? 根DNS目前由12家机构管理。A根是主根,由美国公司Verisign管理。 根DNS中最重要的文件,根区文件,由ICANN管理。 ICANN(The Internet Corporation for Assigned Names and Numbers,互联网名称与数字地址分配机构)是成立于1998年的一家注册在美国的非营利性组织。 根DNS管理的历史变迁过程还是比较复杂的。这里简要说一下。 DNS最初的技术开发者与管理者是美国南加州大学的Jon Postel博士,他掌管互联网初期根DNS的管理和分配。 1988年,美国政府要求Jon Postel采取更安全和更合理的措施来保证互联网核心资源的分配和管理7。于是,大名鼎鼎的IANA(The Internet Assigned Numbers Authority,互联网数字分配机构)被组建,并在DARPA和南加州大学信息科学研究所(ISI)的合同下管理。 IANA负责互联网全局编号和编码的管理与协调,之所以需要这么个机构,是因为互联网协议的值或参数,必须是全球唯一的,否则无法互联互通,比如HTTP协议默认都在80端口等待用户请求,而404编码则一致代表"未找到页面”。IANA主要职责包括IP地址段的分配、协议代码和编号的分配(如协议号、端口号)、自治系统编号 (ASN) 分配、DNS根区管理(包括通用顶级域名gTLD以及国家和地区顶级域名ccTLD管理)等。8 1998年ICANN成立之后,美国商务部以合同形式,委托ICANN承担IANA日常运行,IANA从ISI转移到ICANN之下。 对于顶级域名的管理,ICANN的政策是,每个顶级域名(像com、cn、org这种顶级域名,目前有1000多个)都找一个托管商,该域名的所有事项都由托管商负责。 .cn域名的托管商是中国互联网络信息中心(CNNIC),它决定.cn域名的各种政策。 .com、.net 、.name、.gov这四个顶级域名都由Verisign公司托管。
Verisign和ICANN还是闹过几次不愉快的。9 (编辑:鹰潭站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |