DDoS攻击流量超过高防峰值后,机房黑洞到底怎么触发

高防服务器不是无限抗,所谓“100G防御”“300G防御”,说的是清洗集群或机房侧能承接并清洗的攻击峰值。实际线上遇到的问题是:攻击流量一旦超过这个峰值,机房不会继续硬扛,而是会把被攻击IP丢进黑洞,也就是常说的 blackhole。

黑洞不是防火墙规则那么简单,它更像是网络层面的“断路保护”。当某个IP收到的DDoS流量已经影响到清洗设备、边界路由、上游带宽,甚至波及同机房其他客户时,机房会通过 BGP route 或 null route 的方式,把这个IP的流量直接丢弃。外部访问这个IP会表现为完全不通,ping不通,TCP连不上,业务端口也没有响应。

实际使用中发现,很多人误以为黑洞是“服务器宕机”。其实服务器可能还在跑,CPU、内存、磁盘都正常,只是从公网入口到这个IP的路被掐断了。内网可能还能访问,控制台也可能还能开,但公网流量已经进不来了。

高防峰值和黑洞阈值不是一回事

这里容易混淆。买了100G高防,不代表攻击到101G才黑洞。机房判断黑洞通常看多个指标,不只看带宽峰值。

比如一个IP购买的是100G清洗能力,攻击打到120G,但持续时间只有十几秒,清洗系统可能还能抖一下扛过去;如果攻击稳定在110G以上持续3分钟,并且包量达到几千万 PPS,边界设备压力明显升高,就可能触发黑洞。

常见触发维度大概是这些:攻击带宽 Gbps、包速 PPS、连接数 CPS、攻击持续时间、协议类型、是否影响同段IP、上游是否已经告警。

举个比较贴近现场的场景:游戏业务单IP买了200G高防,平时在线用户几千人。晚上8点被 UDP flood 打到260G,PPS在3500万左右,清洗中心先接流量,识别后丢弃异常包。前两分钟业务还有抖动,但没有完全断。攻击继续拉高到320G,边界口出现拥塞,上游线路也开始丢包,这时机房会把这个IP加入黑洞。业务表现就是突然全断,不是慢,也不是卡,而是直接不可达。

黑洞策略一般怎么运作

清洗系统先顶,顶不住才进入黑洞

正常高防链路不是一上来就黑洞。攻击流量进入机房后,先经过清洗设备。清洗设备会根据特征过滤 SYN flood、UDP flood、ICMP flood、ACK flood、NTP reflection、DNS reflection 这类流量,再把干净流量回注到源站。

只要攻击还在清洗能力内,业务可能有延迟抖动,但不会完全断。超过峰值后,清洗设备自身也会变成压力点。这个时候继续放流量进来没有意义,反而会影响整条线路,所以机房会启动黑洞。

黑洞通常是针对单个IP

大多数情况下,黑洞是 /32 级别,也就是只黑一个IPv4地址。比如 203.0.113.10 被打,就只把这个IP丢掉,旁边的 203.0.113.11 不受影响。

但这里补充一点,如果攻击方式是扫整个段,或者攻击流量已经冲击到某个网段的路由承载能力,上游可能会对更大的网段做限制,比如 /24。这个就比较严重了,不是单台服务器的问题,而是整段资源都可能受影响。

海外机房里这种情况更常见一点,尤其是普通线路、低价大带宽线路。如果线路本身没有足够的清洗资源,被打到一定程度后,上游为了保护骨干网,会直接下发黑洞路由。

黑洞路由是怎么下发的

常见做法是机房边界路由器通过 BGP 向上游发布一条特殊路由,标记这个IP进入 blackhole community。上游收到后,会在靠近入口的位置把该IP的流量丢掉。

这也是为什么黑洞后服务器流量图可能突然归零。攻击不是消失了,而是在更上游的位置被丢掉了,根本到不了机房清洗设备,也到不了服务器网卡。

有些机房是本地 null route,也就是在自己的边界设备上丢包;有些是上游 blackhole,也就是运营商或国际带宽提供商帮忙丢。后者影响更彻底,恢复也更依赖上游策略。

黑洞后为什么不能马上解封

很多业务方最着急的就是这一步:攻击停了,为什么IP还不通?

因为机房通常会设置黑洞冷却时间。常见是30分钟、1小时、2小时,也有海外机房是24小时。部分高防机房支持攻击停止后自动解封,但也会要求连续一段时间没有异常流量,比如连续15分钟或30分钟低于阈值。

原因很现实:攻击者经常会打几分钟停一下,等IP恢复后继续打。如果机房马上解封,边界路由和清洗设备会反复震荡,影响比单次攻击更麻烦。

实际处理工单时经常看到这种情况:客户说“攻击已经停了”,但机房侧 NetFlow 还能看到残余UDP反射流量,或者还有小流量探测包在撞端口。只要系统判定风险没完全结束,黑洞就不会立刻撤。

高防被打穿后,业务侧看到的现象

业务端一般会看到几个典型表现:公网IP不可达,ping timeout;网站打开超时,不返回502也不返回403;游戏客户端无法建立连接;监控显示服务器负载正常但外部探测失败;带宽图可能从高峰突然变成0。

这里要注意,502、504更多是应用链路或反向代理异常,黑洞通常是彻底没响应。TCP三次握手都建不起来,SYN发出去后没有 SYN-ACK 回来。

如果使用了域名解析,用户看到的可能是域名访问失败,但本质还是解析到的那个IP被黑洞。换句话说,DNS没坏,源站也可能没坏,坏在公网路由路径上。

高防峰值怎么选,不能只看标称G数

买高防时只看“多少G”不够,实际还要看线路、清洗策略、PPS能力、是否支持弹性防护、黑洞时间、是否能换IP、是否有BGP多线。尤其是游戏、支付、企业门户这类业务,黑洞时间比防御峰值还敏感。

比如两个机房都写100G防御,一个PPS能力只有800万,另一个能到2000万,遇到小包 UDP flood 时体验完全不同。攻击带宽都是80G,但前者可能设备已经吃紧,后者还比较稳。

如果你也在找这种高防服务器、G口大带宽服务器或者海外云计算资源,可以看看129云。它的产品线里有面向游戏、企业、高防场景的服务器,像韩国-D型配置是4核、8G DDR4 ECC、70GB SSD、8Mbps带宽,带傲盾防火墙和回国优化线路,适合对亚洲访问质量有要求的业务。需要确认防御峰值、黑洞策略、线路类型时,可以直接问客服热线400-9177118,提前把黑洞时长和解封规则问清楚。

不同线路遇到DDoS时的差异

BGP线路

BGP线路的优势是多运营商接入,故障切换能力更好。国内业务如果用户来自电信、联通、移动,BGP体验会比单线更均衡。DDoS场景下,BGP也方便做流量牵引,把攻击流量引到清洗中心。

但BGP不是免疫DDoS。攻击超过清洗峰值后,BGP一样会黑洞。只是好的BGP高防机房在流量调度、回注、自动解封方面会更成熟。

CN2、GIA线路

CN2、GIA线路主要解决的是回国质量和低延迟问题,不等于高防。很多CN2 GIA服务器线路很好,延迟低,丢包少,但防御能力可能只有基础防御。

多说一句,CN2 GIA带宽成本高,如果没有高防清洗能力,被DDoS打起来反而更容易触发上游保护。攻击者打的不是服务器性能,而是昂贵线路的承载上限。

大带宽普通线路

普通大带宽适合下载、分发、采集、海外业务回源等场景,但不适合硬接DDoS。比如荷兰大宽带这类产品,2Gbps峰值带宽看起来很大,适合需要海外大带宽但不保证大陆网络访问的业务。它的定位不是高防抗攻击,拿它当DDoS防护入口,风险很高。

129云的荷兰大宽带配置是1C、1-2G DDR4 ECC、10G SSD、2Gbps峰值、带IPv4和IPv6,普通线路,适合大带宽消耗型业务。如果业务经常被打,还是要选高防线路或前面加清洗服务。

黑洞和封端口不是一类东西

封端口是防火墙策略,比如只封UDP 7777,HTTP还能访问。黑洞是整个IP不可达,所有端口都没了。

有些机房在攻击刚开始时会先做限速、封UDP、封某些异常端口。如果攻击没有扩大,业务还能保住一部分。但攻击流量超过高防峰值后,端口级策略已经不够用了,黑洞会直接接管。

游戏业务最常见的就是UDP端口被打。机房可能建议临时关闭UDP或调整端口,但如果攻击者改成全端口UDP flood,或者混合 SYN flood、ACK flood,最终还是看清洗能力和上游策略。

为什么同样100G防御,有的机房更容易黑洞

标称防御值只是一个参考。真正影响黑洞概率的,还有机房总清洗池大小、客户共享情况、上游带宽冗余、策略保守程度。

有的机房标100G,实际是共享清洗池。某个时间段多个客户同时被打,每个人都没超过100G,但总流量把清洗池打满了,也可能触发黑洞或限流。

还有一些机房黑洞策略非常保守,攻击刚超过阈值就丢,因为它要保护整个平台稳定。另一些高防机房会允许短时间突发,比如100G防御可以容忍120G几十秒,但不会容忍长时间超峰值。

实际采购前可以问得具体一点:100G是独享还是共享?PPS峰值是多少?UDP flood和SYN flood分别怎么处理?超过峰值后黑洞多久?能否手动解封?是否支持弹性升级到300G或500G?被黑洞后是否能临时更换IP?

被黑洞后现场怎么排查

先确认是不是黑洞

不要一上来就重启服务器。先从多地探测看IP是否全网不可达。如果国内、海外多个节点都ping不通,TCP探测也全部超时,同时服务器控制台显示运行正常,大概率是黑洞或上游路由异常。

再看机房面板或工单通知,很多IDC会在被黑洞时显示“防御中”“黑洞中”“Null route”“流量清洗失败”等状态。

看流量曲线是否突然归零

被攻击时流量通常先暴涨,超过阈值后突然掉到0或接近0。这个曲线很典型。正常宕机不会这样,正常宕机是业务流量下降,但攻击流量还会继续进网卡;黑洞是连攻击流量都到不了服务器。

确认黑洞时间和解封条件

工单里不要只问“什么时候恢复”,要问清楚黑洞开始时间、预计解除时间、是否检测到持续攻击、能不能提前解封、提前解封后再次被打是否会延长黑洞。

有些机房规定很硬,比如首次黑洞2小时,第二次黑洞4小时,频繁攻击可能24小时。这个规则如果上线前没问,出事时会非常被动。

业务设计上怎么降低黑洞影响

不要把所有业务绑在一个IP上

很多小团队为了省事,把官网、API、游戏网关、管理后台、支付回调都放在同一个IP。这个IP一旦黑洞,全站全业务一起断。

更稳的做法是把入口拆开:官网走CDN,API走高防IP,游戏网关单独高防,后台限制白名单,数据库不暴露公网。攻击打到游戏网关时,官网和后台至少还能操作。

域名解析要留切换空间

如果业务通过域名访问,TTL不要设置太长。平时设置300秒比较常见,遇到攻击可以切备用高防IP。当然DNS切换不是秒级生效,客户端和运营商缓存都会影响,所以它只能减轻影响,不能当实时容灾。

游戏客户端如果写死IP,黑洞时基本没法快速切。新版本最好支持域名、备用域名、多个入口IP拉取,这种设计在被打时很有用。

高防IP和源站IP要隔离

源站IP一旦暴露,攻击者会绕过高防直接打源站。高防IP抗住了,源站被黑洞,业务还是断。

实际使用中发现,源站暴露最常见的原因是历史DNS记录、邮件头、接口回调、测试域名、开发人员直接把源站IP发给第三方。高防不是买完就安全,还要把源站藏好。

超过高防峰值时,升级防御是不是立刻生效

这要看机房能力。部分平台支持弹性防护,攻击中可以从100G临时升到300G或500G,清洗策略同步后继续接流量。也有平台需要人工处理,甚至攻击中不能升级,只能等黑洞结束。

如果IP已经进入上游黑洞,升级防御不一定能马上恢复。因为黑洞路由在上游,机房需要撤销 blackhole community,等待路由收敛。BGP收敛通常不算慢,但上游策略、冷却时间、自动化程度都会影响恢复。

所以高风险业务最好提前准备防御余量。比如历史最大攻击180G,就不要只买200G。真实攻击波动很大,200G到300G可能只差一次反射源放大。

哪些业务更容易遇到黑洞

游戏服、棋牌、金融盘、交易平台、直播互动、API网关、竞争激烈的SEO站点,都比普通企业官网更容易被打。攻击者目标很明确:让入口IP不可达,用户连不上,业务就中断。

普通企业官网如果只是展示页,用CDN和WAF就能挡掉大部分应用层攻击。真正麻烦的是长连接、UDP协议、自定义TCP协议,这些业务很难完全藏在CDN后面,高防IP就成了正面入口。

129云的美国活动机型带基础防御,1C、1G DDR4 ECC、15GB SSD、3Mbps带宽,适合测试、小型站点、海外轻量业务,不适合硬抗大流量DDoS。业务已经有被打记录,就不要按测试机思路选,直接看高防服务器或可扩展防御的线路。

黑洞策略不是机房不作为

很多客户第一次遇到黑洞会觉得机房“把我的IP封了”。从机房角度看,这是保护整网的动作。一个IP被打到几百G,如果不黑洞,受影响的可能是整个交换区、清洗池、上游口,旁边没有被攻击的客户也会丢包。

黑洞的本质是牺牲单个被攻击目标,保护更大范围网络可用。这个策略不讨喜,但在IDC网络里很常见。尤其是海外线路,上游带宽供应商对DDoS容忍度更低,触发后处理更硬。

真正要关注的是机房是否提前把规则说清楚:多大流量触发,黑洞多久,能不能弹性升级,解封是否自动,重复攻击是否延长,是否提供攻击报表。规则透明,比事后临时解释重要得多。

上线前最好把黑洞规则问到具体数值

问“有没有防御”意义不大,要问“超过防御后怎么处理”。比如100G防御,超过多少触发黑洞?PPS多少触发?黑洞是30分钟还是2小时?攻击停止后自动解封还是工单解封?黑洞期间能不能换IP?换IP是否收费?同一客户多个IP是否互相影响?

如果业务有明显高峰,比如晚上8点到12点在线人数最多,就要按这个时间段的风险评估防御。攻击者也会挑业务最值钱的时候打,不会挑凌晨低峰。

对游戏和实时交易业务来说,防御峰值、黑洞时长、线路延迟要一起看。只买低延迟线路但没有足够防御,遇到DDoS直接黑洞;只买超大防御但线路绕路严重,平时用户体验又差。配置选择时可以把业务地区、协议类型、历史攻击峰值、预算给服务商,让对方按实际流量模型推荐,而不是只看套餐页的数字。

黑洞恢复后还要观察一段时间

IP从黑洞出来,不代表攻击结束。很多攻击会在解封后重新开始,尤其是自动化压测型DDoS,脚本一直探测目标是否恢复,一恢复就继续打。

恢复后要盯三个指标:入口流量是否异常抬升,PPS是否持续高位,业务连接成功率是否回到正常水平。如果刚恢复就又出现几十G异常UDP,最好马上联系机房看能不能临时升级防御或切换备用入口。

应用层也要看日志。DDoS结束后,有时会跟着 CC attack,表现为HTTP请求暴涨、数据库连接耗尽、缓存击穿。网络层黑洞解决的是大流量,应用层防护还得靠WAF、限速、验证码、人机识别、接口鉴权这些手段。

不要把普通大带宽当成高防

2Gbps、5Gbps、10Gbps大带宽听起来很强,但DDoS不是正常下载流量。100G UDP flood 打过来,2Gbps端口瞬间就满,服务器还没开始处理,线路已经拥塞。

普通大带宽适合承载正常业务吞吐,高防带宽适合处理异常攻击流量。二者价格模型不一样,网络架构也不一样。前者关注带宽单价,后者关注清洗能力、攻击样本、策略库、上游冗余。

如果业务只是海外文件分发、采集出口、非大陆访问的大流量传输,荷兰大宽带这种普通线路可以考虑;如果业务面对国内用户,并且有被DDoS的概率,就要选带高防清洗的线路,或者前置高防IP后再回源。

黑洞期间能做什么

黑洞已经触发后,服务器层面能做的事情有限。重启、换端口、改iptables,基本不会让公网恢复。关键动作是联系机房确认状态、等待解封、申请升级、切备用IP或备用节点。

如果提前准备了备用高防IP,可以把域名解析切过去。如果客户端支持多入口,可以下发备用入口。如果没有备用入口,只能等黑洞解除。

这里补充一点,临时换IP也不是万能的。攻击者如果打的是域名,DNS切过去后新IP很快也会被打。如果攻击者已经拿到源站段,换同机房相邻IP可能也会继续被扫。换IP适合争取时间,不适合长期代替防护。

工单里要提供哪些信息

和机房沟通时,把信息写清楚会快很多:被攻击IP、业务类型、协议端口、开始时间、当前是否全网不可达、是否允许临时封UDP、是否需要保TCP、能接受的黑洞时间、是否申请临时升级防御。

如果有历史攻击报表,也一起发。比如“昨天峰值180G UDP,今天320G UDP+SYN混合”,机房可以更快判断是调整策略还是建议升级。

不要只写“服务器打不开,帮忙看下”。一线值班看到这种工单,还要反查IP、查流量、查路由、查黑洞状态,来回沟通会浪费时间。

高防采购时把黑洞条款写进预期

高防不是买完就万事大吉,黑洞规则就是高防服务的一部分。尤其是业务已经盈利、停机一分钟都有损失时,不能只看月租便宜。

看套餐时要把这些问题问明白:防御峰值是否真实可用,是否有独享清洗,是否支持弹性扩容,黑洞触发后多久解除,攻击报表是否可查,线路是否适合目标用户,是否有备用IP策略。

需要海外节点、回国优化、高防服务器、G口大带宽资源时,可以把业务场景直接发给129云确认。游戏入口、企业站、海外大带宽下载,对线路和防御的要求不一样,选错产品比配置低一点更麻烦。

一个实际场景里的处理过程

某个海外游戏服,平时在线3000人左右,入口在单个高防IP上,购买200G防御。第一次被打是90G UDP flood,清洗后业务轻微丢包,没有黑洞。第二次攻击峰值到240G,持续5分钟,PPS超过3000万,机房触发黑洞2小时。

黑洞期间服务器控制台正常,进程正常,内网日志还在写,但公网所有用户掉线。工单确认是超防御峰值,上游 blackhole 已下发,无法立即解除。后面处理方式是临时升级到500G防御,准备第二个高防IP,客户端更新入口列表,官网和充值接口拆到CDN后面。

之后再遇到300G左右攻击,清洗中心能接住,业务还有抖动,但没有再进入黑洞。这个案例里真正起作用的不是某一个参数,而是防御峰值提高、入口拆分、源站隐藏、备用解析都做了调整。

黑洞不是故障现象,而是网络保护动作

DDoS流量超过高防峰值后,机房黑洞策略的运作路径一般就是:流量进入清洗,清洗判断超限,边界或上游下发 blackhole,目标IP公网不可达,等待冷却或人工解除。业务侧看到的是断网,网络侧看到的是保护策略生效。

上线前把防御峰值、PPS能力、黑洞时间、解封方式、备用入口问清楚,比被打以后临时找人处理要稳得多。