使用BGP-blackhole解决IDC频繁遭受DDOS攻击困扰
项目背景
该项目位于某市级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攻击困扰的更多相关文章
- 解决(防止)DDOS攻击的另一种思想
本方案适合作最后的处理方案. 在服务器遭到DDOS攻击后,防火墙.高防盾或者其他的方案都已经失去了效力,这时运维人员无任何方案可以处理,并且只能任由DDOS攻击或关闭服务器时,该方案可以有限的抵挡大部 ...
- 阿里云ecs遭到频繁的ddos攻击始末
苦逼熬夜近俩月的时间搞出来个小东东,还指望它能给自己捞点~ 结果刚上线没多久就遭到竞争对手疯狂的ddos攻击. 可怜的阿里云默认只能抗住5G的攻击,超出的直接黑洞,也是很无奈,然而能免费抗5G这在国 ...
- 游戏行业DDoS攻击解决方案
行业综述 根据全球游戏和全球移动互联网行业第三方分析机构Newzoo的数据显示:2017年上半年,中国以275亿美元的游戏市场收入超过美国和日本,成为全球榜首. 游戏行业的快速发展.高额的攻击利润.日 ...
- 阿里云:游戏行业DDoS攻击解决方案
转自:http://www.gamelook.com.cn/2018/01/319420 根据全球游戏和全球移动互联网行业第三方分析机构Newzoo的数据显示:2017年上半年,中国以275亿美元的游 ...
- 小型网站如何防范DDoS攻击
ddos(Distributed Denial of Service,分布式拒绝服务攻击),俗称洪水攻击.是在传统的DoS攻击基础之上产生的新的破坏力更强的攻击方式.分布式拒绝服务攻击是指借助于客户/ ...
- 敌情篇 ——DDoS攻击原理
敌情篇 ——DDoS攻击原理 DDoS攻击基础 DDoS(Distributed Denial of Service,分布式拒绝服务)攻击的主要目的是让指定目标无法提供正常服务,甚至从互联网上消失,是 ...
- 【Network】DDoS攻击防御
DDoS(Distributed Denial of Service,分布式拒绝服务)攻击的主要目的是让指定目标无法提供正常服务,甚至从互联网上消失,是目前最强大,最难防御的攻击之一. 按照发起的方式 ...
- 防DDOS攻击SHELL脚本
最近一段时间服务器频繁遭到DDOS攻击,目前只能通过封IP来源来暂时解决.IP不源变化多端,光靠手工来添加简直是恶梦,想了个方法,用SHELL来做. 比较简单,但很实用:) 以下内容根据作者原文进行适 ...
- DDOS攻击原理及防护方法论
从 07年的爱沙尼亚DDOS信息战,到今年广西南宁30个网吧遭受到DDOS勒索,再到新浪网遭受DDOS攻击无法提供对外服务500多分钟. DDOS愈演愈烈,攻击事件明显增多,攻击流量也明显增大,形 ...
随机推荐
- 数据库之“日期处理函数:date_add()与 date_sub()与 datediff()与 timedifff()与 date_format()”
一.加减某个时间间隔:date_add()与 date_sub()函数 1. date_add() :加 select date_add('2019-12-12', interval 1 day) d ...
- python学习笔记(五)——静态方法、类方法、运算符重载
我们都知道类名是不能够直接调用类方法的.在C++中,把成员方法声明为 static 静态方法后可以通过类名调用.同样的在python中也可以通过定义静态方法的方式让类名直接调用. 静态方法 使用 @s ...
- Android 动态控制OptionMenu的显示与隐藏
在有些场景下,可能需要动态的显示和隐藏optionmenu,可以这样实现:如果在activity中默认实现了方法: onCreateOptionsMenu(Menu menu) 那么该OptionMe ...
- 修改Menu_item的字体属性
前面一直在找 MenuItem的文字颜色的设置.我发现API中只有背景颜色的设置... 所以找到下面的方法.在OverFlow上看到的.在onCreateOptionsMenu中覆写一下, 使Menu ...
- Android项目如何打包成安装包.apk
1.Build -> Generate Signed APK 2.APK -> Next 3.输入Key store path以及密码 ->next(如果是第一次则需要新建,新建教程 ...
- 深入研究const(es6特性)
const 申明常量 var str = 'es6' console.log(window.str) // es6 属于顶层对象window const不属于顶层对象window const str ...
- 彻底弄懂小程序e.target与e.currentTarget
一.小程序中关于事件对象 e 的属性中有两个特别重要的属性:target与currentTarget属性:对于这两个属性,官方文档上的解释是: target:事件源组件对象 currentTarg ...
- Django高级之-缓存
一 缓存介绍 在动态网站中,用户所有的请求,服务器都会去数据库中进行相应的增,删,查,改,渲染模板,执行业务逻辑,最后生成用户看到的页面. 当一个网站的用户访问量很大的时候,每一次的的后台操作,都会消 ...
- Mybatis个人笔记
Mybatis 简介 官网地址:mybatis – MyBatis 3 | 简介 MyBatis 是一款优秀的持久层框架,它支持自定义 SQL.存储过程以及高级映射.MyBatis 免除了几乎所有的 ...
- 6.Docker容器底层实现了解与安全机制
原文地址: 点击直达 0x00 底层实现 我们以 Docker 基础架构来探究Docke底层的核心技术,简单的包括: Linux 上的命名空间(Namespaces) 控制组(Control grou ...