DDoS高防架构学习

基本结构

社区里华为云对DDoS高防架构的讲解比阿里云多很多。。
引用阿里云高防的一张架构图。
image.png

左半部分是高防机房,右半部分是基础防护,高防提供更高的防护能力,基础防护提供有限的DDoS防护。基础防护的主机受到的攻击流量一旦超过了清洗阈值,受攻击的服务器会被丢进黑洞,此时的主机失去了对外提供服务的能力,但是在当前region内的ecs仍可以访问到。

这个图有点简略,大致的流程是:

  • 基础防护:访问流量 -> 路由 -> 牵引 -> DDoS基础防护清洗 -> 回注 -> ECS承接清洗后的流量,业务基本不收影响。
  • 高防IP:访问流量 -> 路由 -> 牵引 -> DDoS高防机房清洗 -> 回注 -> ECS承接清洗后的流量,业务基本不收影响。

也就是高防是通过扩大清洗容量来扩大了处理能力,在这个过程中有四个重要的环节:流量检测,流量牵引,流量清洗,流量回注。

流量检测

流量检测的用意在于检测流量中的数据包判断是否发生了网络攻击(以及发生了何种攻击)。检测设备一般是旁路部署的,因此为了让流量流经检测设备,还需要部署 分光/镜像。

分光

分光器是个独立的硬件,会把流经自己的流量复制一份出来供后续的检测使用,原来的流量不受任何影响,但分光器本身是个在线设备,部署的时候会造成业务中断,此外亦为整个网络结构引入了一个故障点。

镜像

镜像又分为端口镜像和流镜像,端口镜像是指将流经被监控端口的某个方向(入、出、双向)的所有报文复制到指定的目标端口进行分析。流镜像是在端口镜像的基础上增加了流分类条件,只复制满足特定条件的报文,过滤不关心的报文,提高报文分析设备的工作效率。

流量牵引

当检测设备检测到DDoS攻击发生时,要将攻击流量引入高防机房,但是流过检测设备是复制出来的流量,无法对真实流量起影响。而清洗设备需要对真实流量起作用,所以这里还需要一个引流的过程。

引流分策略路由引流、BGP引流两种方式。

  • 策略路由 策略路由的思路是在路由上添加转发策略,改变流量原有的转发策略,将流量引入高防机房
  • BGP引流 通过添加一条UNR路由路由的方式,将流入防护对象的流量引导至高防机房

引流完成后,清洗设备会对引进来的流量进行清洗,把异常、有威胁的流量剔除,留下正常的业务流量。

流量清洗

这个是我在网上找到的一篇博客,详细介绍了流量清洗的策略。链接

流量回注

参考华为云的解决方案,回注的方式有如下几种。

  • 二层回注:清洗设备通过二层方式将流量回注到防护对象,而不通过路由转发。
  • 静态路由回注:通过在清洗设备上配置静态路由,将清洗后的流量回注到路由器上,最后送到防护对象。
  • UNR路由回注:通过在清洗设备上生成的UNR路由,将清洗后的流量回注到路由器上,最后送到防护对象。
  • 策略路由回注:通过在清洗设备和路由器上配置策略路由,将清洗后的流量回注到不同的路径,最后送到防护对象。
  • GRE回注:通过在清洗设备和回注路由器之间建立GRE隧道,将流量直接送到回注路由器上,最后送到防护对象。
  • MPLS LSP回注:清洗设备和回注路由器之间建立MPLS LSP,清洗后的流量在清洗设备上被打上单层标签,按预先建立好的LSP回注到原链路,最后送到防护对象。
  • MPLS VPN回注:清洗设备和回注路由器之间建立MPLS L3VPN,将清洗后的流量通过MPLS L3VPN回注到原链路,最后送到防护对象。

引流和回注需要配合使用,比如使用策略路由引流方案就无法选用二层、UNR路由、GRE、MPLS LSP、MPLS VPN回注。BGP引流兼容性最好,可以适用所有回注方案。


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!

《写给大家看的设计书》读书笔记 Previous
DDoS攻击和防御 Next