项目背景

  该项目位于某市级BGP IDC机房,机房客户多为web业务,遭受小流量攻击(10G量级)较为频繁,针对这一现象在机房core旁路部署ADS系统,牵引异常流量清洗后进行回源,该清洗方案在此不再展开,有兴趣的同学可搜索另一篇博客

  随着业务规模扩大,该机房近期频繁遭受大流量DDOS攻击(10-50G量级),机房总带宽被打满,导致机房业务受到影响,受攻击用户无相似特征,怀疑同行恶意竞争导致。

项目需求

  在遭受到大于机房总带宽攻击时可以牺牲受攻击用户的连通性来避免机房其他用户受到影响

项目所使用技术

  BGP blackhole

简要拓扑如下:

拓扑描述:

  拓扑为简要逻辑拓扑,该IDC机房位于市级接入,接入总带宽20G,市级到IDC使用ECMP做负载,自有IP通过与省骨干网建立BGP neighbor发布,该市级与省级骨干互联带宽充足

  设备均为华为NE系列

方案构思

  通过与市级骨干建立私有BGP邻居关系,当ADS系统检测到攻击时通过bgp发布32位掩码路由,市级设备受到该路由后把该路由指向null0

方案配置(为避免主要ip泄露,以下配置均为重新编址)

  IDC 市级骨干
ASN   65001 65002
local-address 1.1.1.1   2.2.2.2  
network   10.0.0.0/24  
community   65001:65002 65001:65002
blackhole tag   333  
blackhole community 333:333 333:333

IDC core   

bgp 65001
peer 2.2.2.2 as-number 65002
peer 2.2.2.2 ebgp-max-hop 3
peer 2.2.2.2 connect-interface LoopBack0
ipv4-family unicast
undo synchronization
network 10.0.0.0 255.255.255.0
import-route static
peer 2.2.2.2 enable
peer 2.2.2.2 route-policy blackhole export
peer 2.2.2.2 advertise-community

route-policy blackhole permit node 10
if-match tag 333
apply community 333:333
route-policy backbone permit node 20
apply community 65001:65002

市级骨干配置 

bgp 65002
peer 1.1.1.1 as-number 65001
peer 1.1.1.1 ebgp-max-hop 3
peer 1.1.1.1 connect-interface LoopBack0
ipv4-family unicast
undo synchronization
peer 1.1.1.1 enable
peer 1.1.1.1 route-policy blackhole import

route-policy blackhole permit node 10
if-match community-filter 1
apply ip-address next-hop 5.5.5.5
route-policy blackhole permit node 20
if-match community-filter 2
ip community-filter 1 permit 333:333
ip community-filter 2 permit 65001:65002

ip route-static 5.5.5.5 255.255.255.255 NULL0

查看正常情况下市级设备路由

IDC CORE发布32位路由

ip route-static 10.0.0.3 255.255.255.255 NULL0 tag 333

查看市级设备路由

查看市级设备FIB表

由上输出可知,当IDC ADS设备检测到攻击流量超过一定阈值后只需要向CORE设备下发一条tag333的黑洞路由就可以实现在市级设备进行ip封堵,避免异常流量进入IDC对整体业务造成影响

  

使用BGP-blackhole解决IDC频繁遭受DDOS攻击困扰的更多相关文章

  1. 解决(防止)DDOS攻击的另一种思想

    本方案适合作最后的处理方案. 在服务器遭到DDOS攻击后,防火墙.高防盾或者其他的方案都已经失去了效力,这时运维人员无任何方案可以处理,并且只能任由DDOS攻击或关闭服务器时,该方案可以有限的抵挡大部 ...

  2. 阿里云ecs遭到频繁的ddos攻击始末

    苦逼熬夜近俩月的时间搞出来个小东东,还指望它能给自己捞点~  结果刚上线没多久就遭到竞争对手疯狂的ddos攻击. 可怜的阿里云默认只能抗住5G的攻击,超出的直接黑洞,也是很无奈,然而能免费抗5G这在国 ...

  3. 游戏行业DDoS攻击解决方案

    行业综述 根据全球游戏和全球移动互联网行业第三方分析机构Newzoo的数据显示:2017年上半年,中国以275亿美元的游戏市场收入超过美国和日本,成为全球榜首. 游戏行业的快速发展.高额的攻击利润.日 ...

  4. 阿里云:游戏行业DDoS攻击解决方案

    转自:http://www.gamelook.com.cn/2018/01/319420 根据全球游戏和全球移动互联网行业第三方分析机构Newzoo的数据显示:2017年上半年,中国以275亿美元的游 ...

  5. 小型网站如何防范DDoS攻击

    ddos(Distributed Denial of Service,分布式拒绝服务攻击),俗称洪水攻击.是在传统的DoS攻击基础之上产生的新的破坏力更强的攻击方式.分布式拒绝服务攻击是指借助于客户/ ...

  6. 敌情篇 ——DDoS攻击原理

    敌情篇 ——DDoS攻击原理 DDoS攻击基础 DDoS(Distributed Denial of Service,分布式拒绝服务)攻击的主要目的是让指定目标无法提供正常服务,甚至从互联网上消失,是 ...

  7. 【Network】DDoS攻击防御

    DDoS(Distributed Denial of Service,分布式拒绝服务)攻击的主要目的是让指定目标无法提供正常服务,甚至从互联网上消失,是目前最强大,最难防御的攻击之一. 按照发起的方式 ...

  8. 防DDOS攻击SHELL脚本

    最近一段时间服务器频繁遭到DDOS攻击,目前只能通过封IP来源来暂时解决.IP不源变化多端,光靠手工来添加简直是恶梦,想了个方法,用SHELL来做. 比较简单,但很实用:) 以下内容根据作者原文进行适 ...

  9. DDOS攻击原理及防护方法论

      从 07年的爱沙尼亚DDOS信息战,到今年广西南宁30个网吧遭受到DDOS勒索,再到新浪网遭受DDOS攻击无法提供对外服务500多分钟. DDOS愈演愈烈,攻击事件明显增多,攻击流量也明显增大,形 ...

随机推荐

  1. Java中final的使用

    原文链接https://www.cnblogs.com/dolphin0520/p/10651845.html 作者Matrix海 子 本文为笔记 0. 概述 final和static一样都是修饰词, ...

  2. 判断集合中存在String字符串 或 判断集合中不存在String字符串

    一.使用场景 用于集合中有多个相近的字符,无法使用包含判断 如: 这里如果我想判断以上集合中是否包含"信封件-DE"就会被"信封件-DE2"影响到 毕竟:&qu ...

  3. 「入门篇」初识JVM (下下) - GC

    垃圾收集主要是针对堆和方法区进行:程序计数器.虚拟机栈和本地方法栈这三个区域属于线程私有的,只存在于> 线程的生命周期内,线程结束之后也会消失,因此不需要对这三个区域进行垃圾回收. GC - J ...

  4. 原生js造轮子之模仿JQ的slideDown()与slideUp()

    代码如下: const slider = (function() { var Slider = {}; // the constructed function,timeManager,as such ...

  5. 探索前端黑科技——通过 png 图的 rgba 值缓存数据

    本文系原创,欢迎转载,转载请注明作者信息项目地址:SphinxJS在线体验地址:https://jrainlau.github.io/sp... 说起前端缓存,大部分人想到的无非是几个常规的方案,比如 ...

  6. 记一次用mpvue框架搭建的小程序

    介绍 mpvue (github 地址请参见)是一个使用 Vue.js 开发小程序的前端框架.框架基于 Vue.js 核心,mpvue 修改了Vue.js 的 runtime 和 compiler 实 ...

  7. JWT介绍及使用

    目录 JWT-JSON WEB TOKEN JWT组成 header payload signature JWT校验 JWT获取信息 JJWT(java jwt api)使用 导入依赖 测试代码 JW ...

  8. css使Img图片居中显示

    <div class="flex-center listing-img"> <img v-if="item.imgUrl" v-bind:sr ...

  9. 视频Video放器的部分实例方法

    ***创建一个视频播放器实例 let myPlayer = this.$video(myVideo, { controls: true, autoplay: 'muted', preload: &qu ...

  10. 关于页面中css某些情况下出现不知原因的隔断解决办法

    第一种方法:body{margin:0px;padding:0px position:absolute; top:0px;left:0px;} html{ width:100%; overflow-x ...