互联网是依托于IP地址进行通信的,可人更习惯于使用域名,于是便有了dns提供将域名翻译成IP的服务。
本文就说说DNS具体是怎么做的。
一、权威域名服务器(1)
我们假设有个站长购买了一个服务器,并因此得到一个公网IP,那么当他在域名服务商那里购买到域名并绑定IP后,这个域名和IP的映射关系将会被保存到一个叫“权威域名服务器”的地方。
如上图所示,我们假设站长注册的域名是a.com,且保存了其“域名与IP映射关系”的服务器叫“权威域名服务器a”。
二、本地域名服务器
这时,再假设有个叫“张三”的网民想通过a.com访问站长的网站,那么当他在浏览器中输入a.com之后,其主机就会就近去请求“本地域名服务器”,以便获知域名a.com对应的IP。
三、根域名服务器
但前文已经说过,站长的“域名与IP的映射关系”是被存储在了“权威域名服务器a”中,而非网民张三的“本地域名服务器”。所以如果是第一次访问的话,后者肯定无法直接提供IP,这时“本地域名服务器”就会请求“根域名服务器”。
某种程度上说,DNS系统就像一个巨大的蜂巢,而“根域名服务器”就是这个蜂巢的“蜂后”,所有的域名都是它的崽。
四、顶级域名服务器
于是就像真正的蜂后一样,根域名服务器并不负责具体的域名解析任务,而是将其交给了下层的“顶级域名服务器”。
根域名服务器会根据a.com的后缀com得知负责该域名的具体的顶级域名服务器,并将其IP返回给本地域名服务器,于是后者便借此继续向“顶级域名服务器”发起请求。
五、权威域名服务器(2)
然而顶级域名服务器也并不直接负责解析任务,它继续外包了任务给“权威域名服务器”。通过本地域名服务器提供的域名a.com,顶级域名服务器很快就查到了其是将该域名的解析任务交给“权威域名服务器a”了。
至此,原本和保存了站长“域名和IP映射关系”的“权威域名服务器a”毫不搭嘎的“本地域名服务器”,就这样一步一步和“权威域名服务器a”建立了联系。
“权威域名服务器a”会将域名a.com对应的IP返回给“本地域名服务器”,而“本地域名服务器”则继续将其返回给用户张三。
六、DNS系统总览
至此,一个完整的DNS的工作过程就全部都呈现出来了,其大概结构如上图“灰色背景虚线框”的部分所示,请求顺序则可以依据从1到8的阿拉伯数字序号来观察。
七、DNS缓存
需要强调的是,本地域名服务器在这第一次解析了a.com的对应IP后,是会对结果进行缓存的,这样之后谁再请求其解析a.com它就可以直接返回IP了。
八、补充
还要补充的一条就是,真正的DNS系统肯定远比这里的模型更复杂,仅仅是IPv4的根域名服务器全球就有13台,里面又分为主根和辅根。且这里的“台数”并不是物理意义的设备台数,而是逻辑层面的数量。
最后再分享一条,就是关于DNS系统的架构,个人发现其和一般酒店的人事结构有点像,二者结合起来可能更便于理解和记忆。
我们可以把“本地域名服务器”看作“服务员”,它直接面对最终用户。
“根域名服务器”则是总经理,是总负责人。“顶级域名服务器”是分管各个部门的部门经理,“权威域名服务器”则是领班。
一些牛逼的客户到酒店消费,如果不满意了可能对服务员喊,“把你们管事的叫来!”,“把你们总经理叫来!”。然后总经理过来了解情况后,根据客户的具体情况再将任务逐层下达给具体负责的人去执行,这和DNS多少有些异曲同工。
本文由 @哔哩哔哩 发布于弱电智能网 。
题图来自Unsplash,基于CC0协议
内容观点仅代表作者本人,弱电智能网平台仅提供信息存储空间服务。
如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
文章名称:《DNS是如何工作的?》
文章链接:https://www.ruodian360.com/tech/networking/55463.html
添加微信ydian188免费入群,记得备注“弱电智能网”。