事件回顾
据外媒10月22日报道,云服务商巨头亚马逊AWS DNS 服务器遭 DDoS 攻击,攻击者试图通过垃圾网络流量堵塞系统,造成服务无法访问,攻击持续了15个小时!
大量数据包阻塞亚马逊的 DNS 系统,其中一些合法的域名请求被释放以缓解问题。也就是说网站和应用尝试联系后端亚马逊托管的系统(如S3存储桶)可能会失败,导致用户看到出错信息或空白页面。
长达15小时的DDoS的猛烈攻击影响的不仅是S3,还会妨碍客户连接到依赖外部DNS查询的亚马逊服务,包括亚马逊关系数据库服务(RDS)、简单队列服务(SQS)、CloudFront、弹性计算云(EC2)和弹性负载均衡(ELB)在内的无数网站和应用软件。他们依赖这些服务以处理访客、处理客户信息。
AWS在网站状态页面和推特上均发布了对于此次事件的说明,表示其正在处理:
间歇性的DNS解析错误 用户报告Route 53和我们的外部DNS提供商出现偶尔的DNS解析错误,我们正展开调查。我们正在积极努力解决问题。
在承认被攻击的推文发布8小时后, AWS再次发布公告表示问题已解决。但这并不是AWS第一次遭大规模DDoS攻击。
2018年4月24日,黑客针对四段分配给AWS,本应作为AWS route53 DNS服务器地址的IP空间发布了虚假的BGP路由,导致在BGP泄漏的两个小时期间,DNS查询都被重定向到了黑客的恶意DNS服务器。(来自cloudflare博客)
追溯到2016年,当时美国有一半互联网公司都被DDoS攻击造成严重宕机,包括AWS、Twitter、GitHub等我们熟知的网站。
移动互联网应对策略
阿里云HTTPDNS是面向移动开发者的一款域名解析产品,具有域名防劫持、精准调度的特性。HTTPDNS 是一款递归DNS服务,与权威DNS不同,HTTPDNS 并不具备决定解析结果的能力,而是主要负责解析过程的实现。相比传统的DNS,HTTPDNS主要有下面四个优势:
- 防劫持:绕过运营商 Local DNS ,避免域名劫持,让每一次访问都畅通无阻。
- 精准调度:由于运营商策略的多样性,其 Local DNS 的解析结果可能不是最近、最优的节点,HTTPDNS 能直接获取客户端 IP ,基于客户端 IP 获得最精准的解析结果,让客户端就近接入业务节点。
- 0ms解析延迟:通过热点域名预解析、缓存DNS解析结果、解析结果懒更新策略等方式实现0延迟的域名解析效果。
- 快速生效:解决 “Local DNS 不遵循权威 TTL ,变更域名解析结果后全网无法即时生效”的问题。
阿里云SDNS最佳实践
HTTPDNS支持软件定义解析(Software-Defined Name System,简称SDNS),让开发者能够自定义域名解析过程,实现更加灵活的域名流量调度策略和容灾方案。
SDNS和阿里云函数计算结合,开发者可以通过函数计算编写自定义函数,HTTPDNS在解析域名的过程中调用这些预定义的函数,执行开发者自定义的解析策略,再将最终的解析结果返回给客户端。
基于SDNS灵活的自定义函数功能,可以提升域名解析的多种能力。
- 自定义调度:实现比经典DNS更灵活的调度策略,除了按地域、按比例调度,还能支持带业务属性的调度,比如新功能定向灰度、基于用户UserID的业务调度。
- 自定义扩展信息:除了返回经典DNS的IP地址、有效时间TTL等信息,还能增加自定义的字段信息,提供类似远程配置的能力,灵活控制客户端的功能和策略。
- DNS容灾:域名DNS解析是访问入口,这个过程的容灾对整个业务链路至关重要。通过SDNS功能,能够自定义容灾策略,当发生全网DNS故障时,可以降级到预先定义的兜底策略,减少故障对业务的影响。
- 运维平台联动:内部运维系统可以通过API的方式和自定义函数联动,实现DNS解析的策略设置、容灾切换等操作在统一的内部运维平台中闭环完成。
【图】基于HTTPDNS的域名调度平台
其实DDoS每天都在发生,大家一定要做好网络安全防护,使用安全、精准的解析产品,防患于未然。
更多参考资料:
[1] 移动互联网时代,如何优化你的网络 —— 域名解析篇
[2] 聊一聊DNS劫持那些事
[3] 阿里云 EMAS HTTPDNS 联合函数计算重磅推出 SDNS 服务,三大能力获得突破
[4] 如何利用HTTPDNS降低DNS解析开销
[5] 那些年移动App域名解析踩过的坑