科普-DNS原理及解析过程

2022年10月16日20:45:10 科技 1256

概述

当前网络通讯大部分采用的是tcp/IP协议,而TCP/IP协议的基础是IP地址,所以计算机在网络中进行通讯时只能识别由纯数字构成的IP地址。但在实际的工作生活中,我们只需在浏览器地址栏中输入一串简单易记的域名,就能访问到所对应的网站,在这个过程中发挥重要作用的就是dns。接下来我们就针对DNS的原理和解析过程做下简单介绍。

什么是DNS

DNS是Domain Name System的缩写,翻译成中文就是“域名系统”。DNS是互联网中的一项核心服务,是用于实现域名和IP地址相互映射的一个分布式数据库,它将简单明了的域名翻译成可由计算机识别的IP地址,使用户可以更快速便捷地访问互联。

互联网连通的是全球资源,单一的域名服务器不足以支撑全部的地址转换操作,因此全球有多套域名服务器相互配合使用。早在1983年互联网就开始采用层次树状结构的命名方法,并使用分布式的域名系统进行解析操作。这样既提升了域名解析的效率,同时也保障了域名解析的稳定性,如果系统中单个域名服务器出现故障,不会对整个DNS系统的正常运行造成太大影响。

域名结构

互联网采用了层次树状结构的命名方法。任何一个连接在互联网上的主机或路由器,都有一个唯一的层次结构的名字,即域名。

域名的结构由标号序列组成,各标号之间用点隔开。类似于这样:“….三级域名.二级域名.顶级域名” 。各级域名由其上一级的域名管理机构管理,而最高级的顶级域名则由ICANN进行管理。

科普-DNS原理及解析过程 - 天天要闻

域名由两个或两个以上的词组成,常见域名为二级域名+顶级域名组成,所以一般我们会将域名分为顶级域名、二级域名,除此之外,还有国家代码顶级域名。

域名服务器

科普-DNS原理及解析过程 - 天天要闻

互联网上的DNS域名服务器也是按照层次划分的,每一个域名服务器都只对域名体系中的一部分进行管辖。根据域名服务器所起的作用,可以把域名服务器划分为四种不同的类型:

根域名服务器

在2016年之前全球一共拥有13台根服务器,1台主根服务器在美国,其他12台为辅根服务器,其中美国9台,英国1台,瑞典1台,日本1台,这13台根服务器主要管理互联网的主目录,主要作用IPV4

2016年,中国下一代互联网工程中心领衔发起雪人计划,旨在为下一代互联网(IPV6)提供更多的根服务器解决方案,该计划于2017年完成,其中包含3台主根服务器,中国1台,美国1台,日本1台,22台辅根服务器,中国3台,美国2台,印度和法国分别有3台,德国2台,俄罗斯、意大利、西班牙、奥地利、智利、南非、澳大利亚、瑞士、荷兰各1台,共22台,从此形成了13台原有根加25台IPV6根服务器的新格局。

科普-DNS原理及解析过程 - 天天要闻

顶级域名服务器

顶级域名为域名最后一个.号右侧部分的单词,如mail.baidu.com的com就是顶级域名,顶级域名对应的服务器我们称之为顶级域名服务器,除此之外,常见的顶级域名还有.NET,.TOP,.ORG等,他们都有各自的用途。

  • .COM:用于商业机构,没有使用限制,所有人都可以注册
  • .NET:最开始用于网络组织,如服务商和维修商,现在没有使用限制,所有人都可以注册
  • .TOP:用于行业内的顶级企业或个人,所有人都可以注册
  • .ORG:用于各种组织,如非盈利组织、教育组织等,现在所有人都可以注册

常见的顶级域名除上述的之外,还有.CN,.UA,.JP等,这些是由两个字母组成的,是各个国家专用的顶级域名,如.CN是中国专用的顶级域名,.JP是日本专用的顶级域名。

权威域名服务器

当一个权限域名服务器还不能给出最后的查询回答时,就会告知发出查询请求的DNS客户,下一步应当找哪一个权威域名服务器。

如mail.baidu.com中的baidu.com就是二级域名,二级域名没有固定的单词,可以由各种字母和数组组成,mail是二级域名baidu.com的MX解析,以此类推,可能还有三级域名服务器,四级域名服务器。

本地域名服务器

本地域名服务器并不属于下图中的树状结构的DNS域名服务器,但是它对域名系统非常重要。当一个主机发出DNS查询请求时,这个查询请求报文就发送给本地域名服务器。每一个互联网服务提供者ISP都可以拥有一个本地域名服务器。

DNS域名解析过程

下图是域名解析的一个示例图,它涵盖了基本解析步骤和原理。

科普-DNS原理及解析过程 - 天天要闻

下面解析步骤进行讲解,后面将采用命令行的形式来跟踪解析过程。当用户在地址栏键入并敲下回车键之后,域名解析就开始了。

第一步:检查浏览器缓存中是否缓存过该域名对应的IP地址

用户通过浏览器浏览过某网站之后,浏览器就会自动缓存该网站域名对应的地址,当用户再次访问的时候,浏览器就会从缓存中查找该域名对应的IP地址,因为缓存不仅是有大小限制,而且还有时间限制(域名被缓存的时间通过属性来设置),所以存在域名对应的找不到的情况。当浏览器从缓存中找到了该网站域名对应的地址,那么整个解析过程结束,如果没有找到,将进行下一步骤。对于的缓存时间问题,不宜设置太长的缓存时间,时间太长,如果域名对应的发生变化,那么用户将在一段时间内无法正常访问到网站,如果太短,那么又造成频繁解析域名。

第二步:如果在浏览器缓存中没有找到IP,那么将继续查找本机系统是否缓存过IP

如果第一个步骤没有完成对域名的解析过程,那么浏览器会去系统缓存中查找系统是否缓存过这个域名对应的地址,也可以理解为系统自己也具备域名解析的基本能力。在系统中,可以通过设置文件来将域名手动绑定到某上,文件位置在。对于普通用户,并不推荐自己手动绑定域名和,对于开发者来说,通过绑定域名和,可以轻松切换环境,可以从测试环境切换到开发环境,方便开发和测试。在系统中,黑客常常修改他的电脑的文件,将用户常常访问的域名绑定到他指定的上,从而实现了本地解析,导致这些域名被劫持。在或者系统中,文件在,修改该文件也可以实现同样的目的。

前两步都是在本机上完成的,所以没有在上面示例图上展示出来,从第三步开始,才正在地向远程DNS服务器发起解析域名的请求。

第三步:向本地域名解析服务系统发起域名解析的请求

如果在本机上无法完成域名的解析,那么系统只能请求本地域名解析服务系统进行解析,本地域名系统一般都是本地区的域名服务器,比如你连接的校园网,那么域名解析系统就在你的校园机房里,如果你连接的是电信、移动或者联通的网络,那么本地域名解析服务器就在本地区,由各自的运营商来提供服务。对于本地服务器地址,系统使用命令就可以查看,在和系统下,直接使用命令来查看服务地址。一般都缓存了大部分的域名解析的结果,当然缓存时间也受域名失效时间控制,大部分的解析工作到这里就差不多已经结束了,负责了大部分的解析工作。

第四步:向根域名解析服务器发起域名解析请求

本地域名解析器还没有完成解析的话,那么本地域名解析服务器将向根域名服务器发起解析请求。

第五步:根域名服务器返回gTLD域名解析服务器地址

本地域名解析向根域名服务器发起解析请求,根域名服务器返回的是所查域的通用顶级域()地址,常见的通用顶级域有、、、等。

第六步:向gTLD服务器发起解析请求

本地域名解析服务器向gTLD服务器发起请求。

第七步:gTLD服务器接收请求并返回Name Server服务器

服务器接收本地域名服务器发起的请求,并根据需要解析的域名,找到该域名对应的域名服务器,通常情况下,这个服务器就是你注册的域名服务器,那么你注册的域名的服务商的服务器将承担起域名解析的任务。

第八步:Name Server服务器返回IP地址给本地服务器

服务器查找域名对应的地址,将地址连同值返回给本地域名服务器。

第九步:本地域名服务器缓存解析结果

本地域名服务器缓存解析后的结果,缓存时间由时间来控制。

第十步:返回解析结果给用户

解析结果将直接返回给用户,用户系统将缓存该地址,缓存时间由来控制,至此,解析过程结束。

这里对解析的步骤进行了一个简单的介绍分析,后面将通过命令行的形式来解析一个域名的具体解析过程。

AliDNS高可用架构

阿里巴巴集团于2009年收购万网,2013年1月6日阿里巴巴集团宣布,旗下的阿里云与万网将合并为新的阿里云公司,合并后“万网”品牌将继续保留,成为阿里云旗下域名服务品牌。

作为国内最大的域名注册服务商,早期万网的域名解析基于开源bind搭建,由于bind在性能方面存在很大问题,安全防护能力差,以及不支持智能解析等原因,阿里云接管万网后走了自研DNS解析道路,取名为AliDNS

AliDNS的想法很快成为现实,通过对DNS 软件进行升级改造、全面提升其可靠性和承载力,并依靠阿里巴巴集团强大的技术资源和实力,在全国部署多个节点提供高效稳定的解析调度,实现多机房云计算集群自动宕机迁移,数据备份和回滚,系统性能监测实时报警,并使用自主研发的超百G流量清洗中心,可对攻击行为迅速做出判断跟踪,并按照预案进行处理,确保域名解析服务稳定可靠!

AliDNS作为云计算服务的入口,将逐步与阿里云已有云产品进行融合打通,成为云产品大家庭中不可或缺的一份子,ECS、SLBRDSCDN等为用户提供高效可靠的计算、存储、网站加速和负载均衡服务,AliDNS提供强大稳定的解析调度入口,确保用户能有顺畅的访问体验。AliDNS的上线,使阿里云的产品服务成为一个整体,为用户提供一站式的服务体验。

实现DNS高可用,主要靠降低出故障、故障后快速恢复。下图是dns服务架构简图,分为管控层和解析层,后面分别描述这两层如何实现高可用。

科普-DNS原理及解析过程 - 天天要闻

管控层

管控层最主要的两个功能:DNS数据的持久化,DNS数据下发到adns(dnsserver)。

科普-DNS原理及解析过程 - 天天要闻

1 数据持久化

管控层接收用户配置的域名数据后,持久化存储在数据库。利用了数据库团队的X-Cluster产品,实现数据的高可用,消除了运维误操作等原因导致的数据丢失:
数据库采用三地五副本,同城强同步方案部署;
数据库各个节点间采用Paxos 协议选主,在任意阶段出现问题后,数据内部自选主切换;
应用机房部署与数据库解耦,可以任意机房部署;
在数据库Leader 故障场景下,数据库会自动发生切换,应用连入任意节点获取当前Leader 位置后恢复应用业务。

2 数据下发

管控与adns之间,主要通过稳定的内部网络来下发数据,数据传输出错的概率低;
管控向adns发送数据时,有数据补偿机制,对与下发失败,做多次重试,如果重试都无法成功,报警转人工处理。

解析层

解析层由adns集群组成,部署在全球的上百个idc机房,通过anycast发布大量的服务ip。用户向这些ip发送dns请求,获取解析结果。
1 消除单点

解析层主要靠消除单点实现failover,来减少故障。

  • 主机到网络:每台adns通过双网口,双上联到两个不同的交换机,避免网口单点、交换机的单点故障
  • 集群内:adns分成多个不同集群,每个集群内多台adns,这些机器向交换机发布相同的IP,通过ECMP分发流量。同集群内DNS都是热备的关系,当某台adns出问题,交换机把流量分发到其它服务器。
  • 集群间:多个不同的集群,发布相同的ip,这些集群之间,通过网络的anycast技术相互热备,某个集群不可用,流量被转到其它可用的集群。
  • NS IP:由于特殊原因(比如运营商黑洞等),个别IP全网都无法访问。我们对每个NS配置多个IP,LocalDNS会基于SRTT算法,选择出最短的rt的IP,将请求转发过去,从而避开有问题的IP。

2 系统容量

监控系统实时监控各个服务器、集群的qps容量;
adns集群,部署上具备水平扩容能力,容量能达到机房的带宽。

3 如何保证解析正确

部署数据对账系统,对adns之间做数据对比,adns与管控的DB做数据对比;
部署拨测系统,对zone的soa做拨测,对特定域名的rr记录做拨测;
通过上面的两类手段,及时发现数据异常并作出响应,避免异常或者缩短异常的处理时间。
一般通过摘除有问题的服务器的路由,几秒钟即可生效。

4 安全防护

作为面向公网的服务,网络攻击无法避免,会影响系统可用性。我们采用了下面两类安防手段,提高dns的可用性。
1) 网络攻击防护

常见的dns攻击,是4层的ddos攻击。对于超大流量的网络攻击,利用机房部署的aliguard,做网络防护;
为了减少ddos防护系统对dns的影响,我们设置了很高的防护阈值,对应阈值之下的ddos攻击,通过我们高性能的dnsserver(adns)来承载攻击。
2) 应用安全

为了应对DNS投毒、欺骗等场景,我们的dnsserver,支持dnssec;
为了应对DNS劫持,我们支持有连接的协议,比如tcp、dns、httpdns、tls等,用户可以根据自己的需求,选择合适的安全方案。

AliDNS功能与性能

快速

解析实时生效,多线路智能分配,用户设置解析记录后,AliDNS只需5s就会将您的解析记录同步到全国的DNS权威服务器上,服务器收到解析请求后,能够在30ms内迅速给出解析结果,确保域名解析实时生效和高速访问;智能多线路解析通过精准的网络地址IP库,智能定位访问用户来源,无论是联通、电信、移动、教育网还是国外用户,都能迅速分配最佳的访问解析线路,让您的网站访问者获得最为流畅的访问体验!

稳定

100%可用性保证,让您安心每一刻, AliDNS在全球19个DNS集群节点和DNS智能加速服务,可为用户提供就近访问和最低延迟的解析能力,多机房云计算集群自动宕机迁移,数据备份和回滚,系统性能监测实时报警,确保稳定的域名解析服务,让您的每一次访问使命必达!

安全

超100G超强防护能力,让您放心每一天,AliDNS凭借阿里巴巴多年的攻防技术积累,依靠自主研发的流量清洗设备,可抵御超过百G的洪水流量型攻击,全方位的安全监控体系,可对攻击行为迅速做出判断跟踪,并按照预案进行处理,确保域名解析服务稳定可靠!每秒最高可承受过亿次DNS查询,保障网站或应用服务免受DNS攻击威胁。

智能

可根据用户地理位置,智能返回IP地址。线路已覆盖中国6大运营商及省份,海外6大洲及88个国家/地区


AliDNS除了快速、稳定、安全外,解析设置也非常简单便捷,解析管理工具使您登录AliDNS就可以方便的自行添加、修改、删除各域名记录,包括域名A、CNAME、MX、AAAA、SRV、TXT、NS等记录。此外还提供稳定可靠的URL转发服务、按需自由定义TTL、支持中文域名解析、支持泛域名解析、支持子域名解

科技分类资讯推荐

Neo7 Turbo对友商下狠手 一加对比真我显单薄 - 天天要闻

Neo7 Turbo对友商下狠手 一加对比真我显单薄

#双11国货出行好物#对比同门品牌一加推出的 Ace 5 竞速版,真我Neo7 Turbo 直接用实力完成了一场“自家人打自家人”的无情对决,具体怎么说,不妨跟着我们一起了解下这款新机吧!
“猴脸识别2.0”上线——不但“辨”猴脸,更“懂”猴子心 - 天天要闻

“猴脸识别2.0”上线——不但“辨”猴脸,更“懂”猴子心

人民网西安5月29日电 (记者李志强)“这只猴子叫‘洋葱’,可信度85%。”打开手机小程序,对准电脑屏幕上的一张猴子照片进行识别,不到5秒钟,结果就出来了。随后的演示图像中,“洋葱”的整个身体被标记上了若干个点位,通过分析这些点位的运动规律,就能深度解析它的行为意图。 5月29日,记者从西北大学获悉,此前研发出“...
AI眼镜将取代手机?对话因眼镜提词器走红的杭州公司联创 - 天天要闻

AI眼镜将取代手机?对话因眼镜提词器走红的杭州公司联创

戴着一副透明的眼镜,你可以在路上导航、脱稿在台上演讲,同时还能启动声纹支付、语音唤起AI点餐和打车,这些充满科幻感的场景已经被智能眼镜头部厂商Rokid(杭州灵伴科技有限公司)实现了。Rokid即将在6月上线新一代智能眼镜Rokid Glasses。伴随AI关键技术的发展,尤其是大模型的快速推进,AI眼镜有望成为下一代人机交互的...
黄仁勋:无论有没有美国芯片,中国AI发展都会继续 - 天天要闻

黄仁勋:无论有没有美国芯片,中国AI发展都会继续

5月29日,英伟达发布了第一财季财报。随后,英伟达CEO黄仁勋、CFO克莱特·克罗斯出席电话会议。会上,谈到美国芯片出口管制对英伟达的影响,黄仁勋表示,出口管制对英伟达造成了巨大的损失,但这并不能阻碍中国人工智能的发展,反而会刺激中国的创新,增强中国在海外的实力,削弱美国的地位。他认为,AI竞赛不仅仅是关于芯...
川南大数据中心即将投运 政府搭台促成企业间合作 - 天天要闻

川南大数据中心即将投运 政府搭台促成企业间合作

封面新闻记者 黄晓庆5月28日下午,内江市举行“云上甜城·算网为先”川南大数据中心助力内江发展新质生产力推介会。记者从会上获悉,即将投入运营的川南大数据中心总投资4亿元、设计机架500个、算力超过10000VCPU、存储能力50PB,是四川
当手机叫车融入大众日常,出租车为何开始到处排队趴活? - 天天要闻

当手机叫车融入大众日常,出租车为何开始到处排队趴活?

在商场边,打出租车似乎越来越好打了,而且直接上车就能走。笔者近日在广州深圳等地,感受到了街头打出租的变化。一个工作日的晚7点半左右,广州北京路天河城门口,停着几辆出租车,车顶的“空车”灯在暮色中格外醒目。司机阿强摇下车窗,望着匆匆而过的行人:“三年前这里根本不担心没活,现在蹲半小时能拉一单就算快了。...
数量锐减30万台,ATM机借势AI卷土重来 - 天天要闻

数量锐减30万台,ATM机借势AI卷土重来

在移动支付全国普及的今天,当你路过街角的ATM机时,是否曾疑惑:这些金属柜体是否终将沦为数字时代的遗迹?最新数据揭示了一个反直觉的现实,2024年全国ATM保有量降至80.27万台,较峰值缩减近30万台,但每台设备的价值正经历前所未有的重构。这场静默的变革背后,是一场关乎金融普惠与科技革新的生死蜕变。ATM行业的冰火两...
大模型牵手手机银行,开启无菜单时代|银行APP测评 - 天天要闻

大模型牵手手机银行,开启无菜单时代|银行APP测评

2025年上半年,银行依旧以将大模型装进手机银行作为要务,六大行率先对其大模型进行了升级优化,例如工商银行在同业中率先发布企业级千亿金融大模型技术体系 “工银智涌”,累计调用量超 10 亿次,赋能 20 多类业务、200 余个场景,较 2024 年在应用场景数量和调用量上有显著提升,其大模型技术能力在同业中率先输出至中小...