都知道DNS 但它是谁发明设计的你了解吗?

[PConline 杂谈]域名系统,也就是我们口中常说的DNS,可以将域名和IP地址相互映射,省去了记住IP数串的麻烦,从而让人们更方便快捷的访问互联网 。对于DNS想必各位都已非常熟悉,但是它是由谁发明并设计出来的,你真的了解吗?

都知道DNS 但它是谁发明设计的你了解吗?

文章插图
域名系统通常被称为互联网的“电话簿”,是互联网基础设施的基本组成部分 。在互联网的早期,主机和IP地址信息储存在斯坦福研究院维护的一个文本文件HOSTS.TXT 中,当一台新计算机加入到网络或一台旧电脑修改了它的资料,人们需要联系斯坦福研究院,让他们手动更新文件 。
不仅如此,若想知道一台计算机的IP地址,也需要联系斯坦福研究院 。重要的是,每个工作日的下午五点就会关闭,而且节假日不开放,可以说非常的不方便 。
为此,当时还在南加州大学工作的Paul Mockapetris博士发明和设计了DNS系统,通过利用分布式数据库来解决这个问题,主要作用是转换我们可读的主机名,例如www.welcometothejungle.com,转换成机器可读的IP地址52.211.16.159 。
都知道DNS 但它是谁发明设计的你了解吗?

文章插图
Mockapetris博士表示,虽然DNS系统设计的非常灵活,但顶级域名本身更像是各国政治间的一场博弈 。有人说域名系统并不完美,因为它存在很多安全漏洞,如欺骗、DDoS攻击等等 。对于这个说法,Mockapetris博士解释称DNS设计的不安全是有意为之,当时的首要问题是尽快让人们接受分布式系统这个概念 。
域名解析体系第一层就是根服务器,负责管理世界各国的域名信息,在根服务器下面是顶级域名服务器,也就是相关国家域名管理机构的数据库,然后是下一级的域名数据库和ISP的缓存服务器 。我国普通网民在访问带有.com等后缀的国外网站时,大多需要经过国外的域名服务器进行解析 。
那么,根DNS服务器有什么作用呢?根域名服务器中没有每个域名的具体信息,储存的是负责每个域的解析的域名服务器的地址信息,根域名服务器是架构因特网所必须的基础设施 。
都知道DNS 但它是谁发明设计的你了解吗?

文章插图
都知道全世界只有13台根域名服务器,但你知道为什么只有13台吗?这还得从DNS的协议说起,DNS使用的是端口UDP和TCP协议 。所有UDP实现中能保证正常工作的最大包长是512字节,这512字节限制了根服务器的数量和名字 。要让所有的根服务器数据能包含在一个512字节的UDP包中,根服务器只能限制在13个 。
能不能自己搭建根服务器?实际上,在去年12月份左右,俄罗斯宣布正在建设一个主权内部网,重建DNS基础设施,对此Mockapetris博士表示技术本身并不难,俄罗斯可以使用开源DNS来实现他们的想法 。但从商业角度来看,对外连接仍然是重要的,即使是“防火墙”也并没有切断连接,而只是寻求控制 。
此外,另一个值得我们关注的是,现在各国都在加速部署IPv6,那么DNS是否会因过渡到IPv6而受到影响呢?想必这也是很多人所担心问题 。实际上,DNS可以处理任何类型的IP并且不会丢失域 。目前的问题不是缺乏域,而是对某些特定域的需求,就好像每个人都想搬到A城市,但不是每个人都能搬进来一样 。

【都知道DNS 但它是谁发明设计的你了解吗?】


    推荐阅读