我正在设计Java Web应用程序,最终可能会将该应用程序部署到Google App Engine(GAE)。关于GAE的好处是,我真的不必担心要从可怕的DDoS攻击中强化我的应用程序-我只需指定一个“计费上限”,并且如果我的流量达到此上限(DDoS或其他),只会关闭我的应用程序。换句话说,GAE本质上可以扩展到任何数量,直到您根本负担不起让应用程序继续运行。
因此,我正在尝试制定一个应急方案,如果我确实超出了计费上限,并且GAE关闭了我的应用程序,则我的Web应用程序域DNS设置会“故障转移”到另一个非GAE IP地址。一些初步研究表明,某些CDN(例如CloudFlare)可为这种确切情况提供服务。基本上,我只是保留我的DNS设置,并且它们提供了一个API,我可以点击它以自动执行故障转移过程。因此,如果我检测到我的GAE应用程序的帐单上限为99%,则可以点击CloudFlare API,然后CloudFlare将动态更改DNS设置,使其从GAE服务器指向其他IP地址。
我最初的偶然性是将故障转移到托管在其他地方(例如由GoDaddy或Rackspace托管)的Web应用程序的“只读”(仅静态内容)版本。
但是,突然间我突然意识到:如果DDoS攻击针对的是域名,那么如果我从GAE IP地址过渡到我的GoDaddy IP地址会产生什么区别?从本质上讲,故障转移除了允许DDoS攻击者关闭我的备份/ GoDaddy站点外不会做任何其他事情!
换句话说,DDoS攻击者协调了由GAE托管的我的Web应用程序上的攻击,该攻击www.blah-whatever.com
确实是IP地址100.2.3.4。它们使我的流量激增到我的帐单上限的98%,并且我的自定义监视器触发了CloudFlare从100.2.3.4到105.2.3.4的故障转移。DDoS攻击者不在乎!他们仍在发动攻击www.blah-whatever.com
!DDoS攻击仍在继续!
因此,我想问:像CloudFlare这样的CDN可以提供什么保护,以便当您需要故障转移到另一个DNS时,您不会受到相同的,持续的DDoS攻击的威胁吗?如果存在这样的保护,故障转移站点上是否存在任何技术限制(例如,只读等)?如果没有,那它们有什么好处?提前致谢!