最后,让我们了解下全球DNS根服务器为什么只有13台。
DNS协议的最初定义要从20世纪80年代未期开始算起,它使用了端口上的UDP和TCP协议。
UDP通常用于查询和响应,TCP用于主服务器和从服务器之间的区传送.遗憾的是,在所有UDP实现中能保证正常工作的最大包长是512字节,对于在每个包中必须含有数字签名的一些DNS新特性(例如,DNSSEC)来说实在是太小了。
512字节的限制还影响了根服务器的数量和名字。
要让所有的根服务器数据能包含在一个512字节的UDP包中,根服务器只能限制在13个,而每个服务器要使用字母表中的单个字母命名。
以太网数据的长度必须在46-1500字节之间,这是由以太网的物理特性决定的。
事实上,这个1500字节就是网络层IP数据包的长度限制,理论上,IP数据包最大长度是65535字节。
这是由IP首部16比特总长度所限制的,去除20字节IP首部和8个字节UDP首部,UDP数据包中数据最大长度为65507字节。
在Internet数据传输中,UDP数据长度控制在576字节(Internet标准MTU值),而在许多UDP应用程序设计中数据包被限制成512字节或更小。这样可以防止数据包的丢失。
许多解析器首先发送一条UDP查询,如果它们接收到一条被截断的响应,则会用TCP重新发送该查询。
这个过程绕过了512字节的限制,但是效率不高。您或许认为DNS应该避开UDP,总是使用TCP,但是TCP连接的开销大得多。
一次UDP名字服务器交换可以短到两个包:一个查询包、一个响应包。一次TCP交换则至少包含7个包:三次握手初始化TCP会话、一个查询包、一个响应包以及最后一次握手来关闭连接。
总结:
DNS协议使用了端口上的UDP和TCP协议,由于TCP开销太大(一次UDP数据交互可以短到两个包,而TCP要7个包,三次握手),而UDP最大数据包长是512个字节。512个字节要存根服务器信息,也只能存13台。
DNS根服务器主要用来管理互联网的主目录,全世界只有13台。
1个为主根服务器,放置在美国。其余12个均为辅根服务器,其中9个放置在美国,欧洲2个,位于英国和瑞典,亚洲1个,位于日本。
1、 INTERNIC.NET(美国,弗吉尼亚州) 198.41.0.4
2、 美国信息科学研究所(美国,加利弗尼亚州) 128.9.0.107
3、 PSINet公司(美国,弗吉尼亚州) 192.33.4.12
4、 马里兰大学(美国马里兰州) 128.8.10.90
5、 美国航空航天管理局[NASA](美国加利弗尼亚州) 192.203.230.10
6、 因特网软件联盟(美国加利弗尼亚州) 192.5.5.241
7、 美国国防部网络信息中心(美国弗吉尼亚州) 192.112.36.4
8、 美国陆军研究所(美国马里兰州) 128.63.2.53
9、 Autonomica公司(瑞典,斯德哥尔摩) 192.36.148.17
10、 VeriSign公司(美国,弗吉尼亚州) 192.58.128.30
11、 RIPE NCC(英国,伦敦) 193.0.14.129
12、 IANA (美国,弗吉尼亚州) 198.32.64.12
13、 WIDE Project(日本,东京) 202.12.27.33
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)