原标题:为何根域名服务器只有13个?

来自公众号:车小胖谈网络

两个月之前更新文章曾经说过,过一段时间会更新最终版。这篇文章是献给一直关注公众号的忠实读者一份福利,请尽快阅读!

熟悉DNS域名解析的同学应该知道,当主机想访问某个网站时,会使用本机配置的DNS服务器来将网站的域名解析成IP地址。获得了网站的IP地址,就可以使用IP报文与服务器进行通信了。

Q1:主机是如何知道DNS服务器IP地址的?

这个问题难不住大家,一般是通过DHCP动态获得,或者手工配置获得。

Q2: DNS服务器如何知道网站域名、IP地址的映射关系?

DNS服务器上通常也配置有自己的DNS服务器,为了区别起见,称后者为“树干DNS服务器”,前者为“叶子DNS服务器”。

Q3:树干DNS服务器天生就知道“网站域名、IP地址的映射关系”答案吗?

这里的天生是指,当树干DNS服务器从上电启动,完成DNS进程加载,这个时候树干DNS服务器如初生的婴儿,大脑一片空白。需要告诉这个小婴儿,一旦遇到不会的DNS查询问题,需要去求助大神,这个大神的名字就叫“树根DNS服务器”!

DNS查询原理

互联网的DNS域名查询系统如同一棵树一样,叶子问主干,主干问根,根将一级主干返回给主干,主干问一级主干,一级主干将结果返回给主干,主干将结果返回给叶子,叶子将最终查询结果返回给主机!

Q4:小婴儿(树干DNS服务器)如何找到大神呢?

如果婴儿事先知道大神的IP地址,不就可以找到了吗?这个主意很好!

只要让小婴儿在初始化DNS进程时,读取这个配置文件,这个配置文件提供了大神的联系方式。大神的名字分别为:A、B、C、D、E、F、G、H、I、J、K、L、M,一共13个大神。以及13个大神对应的IPv4、IPv6地址。如下图所示,该图受限于屏幕尺寸,不能囊括13个大神完整的信息,有兴趣的同学可以前往下载(http://www.internic.net/domain/named.root)。

到目前为止,小婴儿已经获得了13位大神的联系方式,可以求助任意一位大神来回答DNS查询问题,然后再把DNS查询答案告诉叶子DNS服务器。这个故事到这里仿佛要结束了。。。

但是有一个问题,婴儿的配置文件是一个静态文件,不是实时更新的!如果其中有些大神的IP地址发生了变动,那么意味着婴儿拿着过期的配置信息,可能找不到大神!

婴儿一旦读取配置文件完成初始化,需要立马去任意一位大神,更新13位大神的实时联系方式!好累,终于讲到本文的主题了!

婴儿需要向大神发送DNS NS(Name Server) Query,大神将返回13位大神的实时联系方式,如下图所示,受限于图片尺寸,图中只包括A、B大神。他们的全名分别为“a.root-servers.net.”、 “b.root-servers.net.”

Q5:每一个大神的联系方式占据多大的尺寸呢?

如下图所示,每一个大神占据的字节数 = 1 + 4 + 2 +2 + 2 + 20 = 31 个字节!

13位大神一共占据的字节数= 13 * 31 = 403 个字节!由于运输DNS查询结果的是UDP,由于历史原因,UDP被IETF限制最大发送尺寸为512字节。留给DNS其它协议字段的空间只有512-403 =109个字节,这109个字节用来运输DNS其它协议字段,最终剩下几十个字节的空闲空间,足够容纳第14位大神。但是,IETF最终决定不再加入新的大神,空闲的空间保留给DNS协议的扩展!

需要指出的是,13位大神并不意味13个物理服务器,而是13个IP地址。每个IP地址都有几十甚至上百台物理服务器同时提供服务,记得6月份更新文章时,全球只有999个实例(Instance),到今天已经扩容到1011个实例了。

关于为何IETF要限制UDP的最大报文发送尺寸,请参阅这篇文章 !

●编号951,输入编号直达本文

责任编辑:

根域服务器物理服务器,为何根域名服务器只有13个?相关推荐

  1. 为什么根域名服务器只有 13 台?

    今天聊个有意思的话题. 世界上共有 13 个根域名服务器,其中主根域名服务器是在美国. 那美国有没有可能通过根域名服务器掐断中国的互联网呢? 在说结论之前,我们先来了解: DNS到底是怎么工作的? 为 ...

  2. 13台根域名服务器的维护费用,根域名服务器只有13台吗

    之前为了做一个分享,查了很多DNS相关的信息, 发现绝大多数关于根域名服务器的数量的说法都是错的. 第一个说法是根域名服务器只有13台,首先就不止13台,现在实际上有一千多台.另一个说法是根域名只能有 ...

  3. 物理服务器转虚拟服务器,物理服务器转虚拟服务器

    物理服务器转虚拟服务器 内容精选 换一换 共享云硬盘是一种支持多个云服务器并发读写访问的数据块级存储设备,具备多挂载点.高并发性.高性能.高可靠性等特点.主要应用于需要支持集群.HA(High Ava ...

  4. 虚拟服务器 物理服务器 性能比较,物理服务器和虚拟服务器有什么区别?

    相信很多朋友在选择服务器时,在看到物理机,还有虚拟机两个选项时,都会很茫然:物理和虚拟,听起来差别就很大,那我应该选择哪一个呢?今天蒙鸟云就给大家讲一下,物理服务器和虚拟服务器有什么区别: 首先,从字 ...

  5. 浅说国际根域名服务器与中国电信的镜像服务器

    一.域名与其服务器 域名是互联网上人们熟悉.易记的计算机名字.域名具有唯一性,在全世界,没有重复的域名.从技术上讲,域名只是一个Internet中用于解决地址对应问题的一种方法,可以说只是一个技术名词 ...

  6. 物理服务器与云服务器的区别

    云服务器和物理机的区别 物理服务器 云服务器 1.技术方面 2.规格方面 3.安全方面 随着网络不断的发展,服务器的类型也在更新迭代,现如今云服务器的兴起占据了很大一部分市场,独立服务器的市场份额受到 ...

  7. 香港物理服务器和香港云服务器有什么区别?

    香港物理服务器和香港云服务器免备案的特点和超高性价比,成为了很多站长建设网站的优先选择.但很多用户在选择香港物理服务器和香港云服务器时,都不知道两者之间有什么区别,对此,今日小杜就跟大家分享一下,香港 ...

  8. 根域名服务器都在国外,中国安全吗?安全

    一.前言 世界上共有 13 个根域名服务器,其中主根域名服务器是在米国. 那米国有没有可能通过根域名服务器掐断我国的互联网呢? 在说结论之前,我们先来了解: DNS到底是怎么工作的? 为什么根域名服务 ...

  9. 轻知 | 为什么全球只有13组根域名服务器?

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由9527发表 根域名服务器是域名解析系统(DNS)中最为顶级的域名服务器,它们负责管理顶级域的权威域名服务器地址.作为互联网基础设施的 ...

最新文章

  1. c语言简单的模拟坐标,C语言模拟实现简单扫雷游戏
  2. 顺利搭建了oracle
  3. PWN-PRACTICE-BUUCTF-19
  4. 面向模式的软件体系结构
  5. 解决“未找到与约束CContractName Microsoft.Internal.VisualStudio”
  6. Mysql rpm包安装
  7. 基于链表结构实现二路归并排序详解(C++实现)
  8. 从定性遥感到定量遥感——大数据时代的空间数据科学
  9. 运动目标检测方法综述
  10. java中打开eclipse_关于Java:如何在Eclipse中打开jar文件
  11. flutter常见报错处理
  12. Java- 求⼀个三位数,该三位数等与其每位数字的阶乘之和
  13. 计算机原理学习(2)-- 存储器和I/O设备和总线
  14. php公用函数:获取字符串中英文混合长度
  15. 第七章、Spring Boot MyBatis升级篇
  16. 大家都在用的抠图换背景软件,这些软件你知道几个?
  17. linux音乐服务器mpd,OpenWRT中使用mpd作为音频Server及其使用
  18. JPEG2000压缩DICOM文件的解压(一)
  19. [LUOGU]P3400 仓鼠窝
  20. linux文件取交集、差集、并集

热门文章

  1. DO-178B三种文本对照学习注记
  2. DNF:拍卖行计算器 for JAVA 。 最近迷了毒奶粉。。索性写了个计算器~~~
  3. Android开发蓝牙与ble设备的通讯
  4. 南京工程学院计算机科学与技术专业怎么样,南京工程学院王牌专业
  5. 中国大学MOOC新媒体营销试题(含答案)
  6. Python+Selenium:初步使用Chrome谷歌浏览器
  7. c语言有哪些方向,c语言有哪些就业方向
  8. 快看,教你怎么上班摸鱼!
  9. Python下载网页图片
  10. CCKiller:Linux轻量级CC攻击防御工具,秒级检查、自动拉黑和释放