《DNS稳定保障系列1--服务双保障“辅助DNS”产品介绍》
背景
2016 年 10 月 21 日,DNS 服务商 dyn 的服务器遭遇黑客大流量的 ddos 攻击,使得美国大量互联网公司如 twitter,github等都出现解析失败,无法提供服务。如下图可见,该事件造成了美国东海岸的网络瘫痪,媒体当时形容此次危机为“史上最大DDoS攻击”。该事件影响及其恶劣,直接对人们的生活造成了影响,唤起了广大互联网用户对 DNS 稳定性的重视。
图片来自维基百科
权威 DNS 容灾
【DNS 解析流程】
- 用户向递归 DNS 请求 www.test.com 的解析
- 递归 DNS 向权威 DNS 请求 www.test.com 的解析
- 权威 DNS 将 www.test.com. 的解析 1.1.1.1 返回给递归 DNS
- 递归 DNS 将 www.test.com. 的解析 1.1.1.1 返回给用户
【单权威 DNS】
单权威 DNS 架构,存在单点,单点故障,权威 DNS 收不到请求或不能正常返回域名解析结果,如果域名解析配置丢失且没有备份,恢复时间会更长。
【多权威 DNS】
多权威 DNS 架构,具有以下优点:
容灾备份: 其中一个权威 DNS 故障,其他权威 DNS 可继续提供域名解析服务;
负载均衡,流量均摊:多个权威 DNS 同时对外提供解析服务时,可以达到流量负载均衡的效果;
提升解析效率: 递归 DNS 通过 SRTT 优选策略,选择返回结果最快的权威 DNS,提升域名解析效率;
github.com就是多权威 DNS 模式,同时使用了 dyn 和 asw 的权威 DNS。
多权威 DNS 架构,存在以下问题:
重复配置:域名配置更改,需要在所有权威 DNS 都配置一遍,费时费力易出错。
【DNS自动数据同步】
RFC 标准协议通过 MASTER-SLAVE 架构,NOTIFY + XFR 机制实现数据自动同步,用户只需要在主服务器上更改域名,更改信息便可自动同步到从服务器
1、用户在 MASTER 上动态修改域名解析记录(如 NSUPDATE),修改成功后,域名所在 ZONE 的版本号加 1。
test.com 初始配置:
初始 SOA 序列号:
NSUPDTA 新增记录:
最新 SOA 序列号
2、MASTER 向其配置的 SLAVE 节点发送 NOTIFY(一般是 UDP 报文),NOTIFY 信息中包含了修改域名所在的 ZONE 和该 ZONE 最新的版本号。
NOTIFY 消息:
3、SLAVE 在收到 NOTIFY 消息后,进行以下操作:
(1) SLAVE 在收到 NOTIFY 消息后会给 MASTER 发送一个响应表示收到了 NOTIFY;
(2) SLAVE 比较 NOTIFY 中的 ZONE 的版本号和本地的 ZONE 的版本号,如果本地的版本号不低于 NOTIFY 中的版本号,SLAVE 不做任何操作;
(3) 如果 SLAVE 本地的版本号低于 NOTIFY 中的版本号,表示本地的 ZONE 数据已经落后,SLAVE 向 MASTER 发送 IXFR 请求; SLAVE 根据 REFRESH(定义在 ZONE 的 SOA 记录中)定时向 MASTER 发送 IXFR 请求,作为当 NOTIFY 的报文因为某些原因无法发送到 SLAVE 时的一种补偿机制。
(4) 如果 IXFR 失败,会转向 AXFR;
4、MASTER 根据 SLAVE 请求的 XFR 类型返回对应的数据
IXFR 返回格式和结果:
AXFR 返回结果:
云解析辅助 DNS
多DNS部署方案是一个成本较大的DNS容灾策略,在此建议使用阿里云辅助DNS。辅助DNS是“云解析DNS”为使用自建DNS或第三方DNS的用户提供的DNS容灾备份服务。自建 DNS 或第三方 DNS 做主,云解析 DNS 做辅。我们基于RFC标准协议,在主DNS和辅DNS之间建立区域数据传输机制,当主DNS遇到故障或者服务中断时,辅DNS仍可以继续提供解析服务。保障您的业务在全球范围内稳定运行。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
云服务OpenAPI的7大挑战,架构师如何应对?
阿里妹导读:API 是模块或者子系统之间交互的接口定义。好的系统架构离不开好的 API 设计,而一个设计不够完善的 API 则注定会导致系统的后续发展和维护非常困难。比较好的API设计样板可以参考 github 和 k8s ,它们都是典型的RESTful接口。云服务对外开放的窗口就是OpenAPI,今天要讨论的话题是“云服务场景下OpenAPI设计的挑战”。 为什么要有API规范 之所以强调“云服务”的原因在于,小规模独立API的设计与大规模批量生产API面临的问题是不一样的。同样,只专注于自身产品API的可用性与从更高的层次去看云服务整体API体系的健壮性,要建设的体系也是不一样的。 例如,做一个WEB页面使用的API,只需要考虑性能、稳定性、鉴权就好,因为页面与API是一体的,可以一起发布和回滚,只要功能正常,即便API设计有缺陷,
- 下一篇
2019云栖大会70+份顶级大咖演讲PPT分享!
9月25日-27日,2019杭州云栖大会圆满成功。全球6.7万开发者现场参会,超1250万人在线观看,3万平方米科技展区,200位+世界级科学家,1000个+技术Topic。今天,超全大会PPT一次送出,供大家下载学习! 数智商业专场 数据+算法定义新世界数智化运营中的数据中台构建解析卓诗尼破局”数智“转型大数据咨询方法论白皮书 & 360°数据管家数智化时代下购物中心运营模式新探索圆桌对话-Mall的数字化运营落地路径 基于图神经网络认知的智能计算专场 超大规模图神经网络实践AliGraph- 大规模图神经网络系统架构剖析图模型在阿里安全中的实践Graph Neural Networks- Combing Deep Learning & Symbolic Reasoning关于网络嵌入和图卷积神经网络的一些思考基于视觉推理的视频理解 阿里云智能弹性计算技术专场 阿里巴巴神龙(X-Dragon)架构演进之路万物互联时代的虚拟化技术云上服务:超越硬件的稳定性 计算机视觉新探索专场 计算机视觉新探索低成本自动三维室内重建系统视频内容理解的研究与实践深度学习在线下场景的探索与...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Red5直播服务器,属于Java语言的直播服务器
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Linux系统CentOS6、CentOS7手动修改IP地址