DDoS攻击流量超过高防清洗上限之后,流量牵引和黑洞哪个损失小

DDoS流量打到高防清洗上限以后,很多人第一反应是继续牵引,觉得“能洗一点是一点”。实际使用中发现,这个判断不一定对。超过清洗上限之后,最怕的不是业务已经被打挂,而是清洗集群、回源链路、机房出口、上游BGP路由一起被拖进异常状态,最后从一个IP不可用,变成一段业务、一组节点甚至整个机房侧都受影响。

这里讨论的不是“高防有没有用”,而是攻击量已经超过了购买防护能力,比如买了100Gbps防御,实际进来180Gbps、300Gbps甚至更高。这时候继续做流量牵引,还是直接黑洞,要看损失口径:是保住剩余用户访问,还是先保住源站、保住其他业务、保住线路信誉。

先把两个动作说清楚:牵引不是魔法,黑洞也不是处罚

流量牵引一般是通过BGP宣告、DNS切换、Anycast调度或者运营商侧引流,把攻击流量导到清洗中心。清洗中心识别SYN Flood、UDP Flood、ACK Flood、HTTP Flood、CC等流量,把正常流量转发回源站。

黑洞是把目标IP的流量丢弃。简单理解就是这个IP暂时从网络里“消失”,用户访问不到,攻击流量也进不来。很多云厂商在攻击超过防护阈值后会自动黑洞,不是为了省事,而是为了保护上游线路和同机房其他用户。

实际场景里,黑洞经常让业务方很难接受,因为它是明确的不可用;但继续牵引如果已经洗不动,表现可能更糟:用户部分能进、部分超时、登录成功但支付失败、游戏能连上但频繁掉线,排障时间会被拉得很长。

攻击超过清洗上限时,继续牵引的真实风险

假设业务买的是100Gbps高防,平时峰值业务带宽只有200Mbps。攻击突然打到160Gbps,如果清洗中心还有冗余,有些厂商会短时间抗住一部分;如果清洗池已经满了,继续牵引会出现几个很典型的现象。

一是清洗后回源流量不稳定。清洗中心在高压下误杀率会上升,正常TCP连接也可能被丢。用户侧看到的不是完全打不开,而是偶发502、连接重置、接口超时。

二是回源链路被打穿。有些业务接入高防后,源站还在普通云服务器或者IDC机房,清洗中心回源走公网。如果攻击里混了大量伪装正常协议的流量,回源侧承压后,源站CPU、conntrack、Nginx worker、数据库连接池都会被拖满。

三是触发上游限速或强制黑洞。尤其是单线机房或者防护资源不是独享的环境,攻击量持续超过合同防护值,上游运营商不会一直陪着扛。到最后还是黑洞,而且可能黑洞时间更长。

多说一句,DDoS不是只看Gbps。100Gbps UDP Flood和3000万pps小包攻击,对设备压力完全不一样。清洗上限里通常有带宽、pps、连接数、新建连接速率、HTTP请求速率这些隐含指标。很多业务看合同只看“多少G防御”,真正被打时才发现pps先到顶。

黑洞的损失很直接,但边界清楚

黑洞的损失就是目标IP不可访问。对外看,这个IP上的网站、游戏服、API全部断掉。它的好处也很直白:攻击流量不会继续压源站,不会继续占用清洗资源,不会影响旁路业务。

如果业务架构里一个IP只承载单个区服、单个入口、单个活动页,黑洞的损失是可控的。比如某个游戏一区入口IP被黑洞,二区、三区和官网还在;某个营销落地页被黑洞,主站和支付链路还在。这种情况下,黑洞往往比硬扛更划算。

如果一个IP上挂了太多东西,黑洞就会非常痛。比如官网、API、支付回调、管理后台、下载服务都共用一个高防IP,一黑洞就是全断。这类问题不是黑洞策略本身造成的,而是业务入口没拆开。

用损失来算:牵引和黑洞不是同一类成本

可以按业务损失做一个粗略口径。假设某业务每小时在线收入2万元,攻击持续2小时,源站有3组服务。

场景A:继续牵引,攻击180Gbps,防护上限100Gbps。结果是30%用户能访问,70%用户超时,同时源站负载打满,数据库连接池耗尽,恢复后还要清理异常订单和缓存脏数据。直接收入损失约2.8万元,后续补单、客服、用户投诉还要继续消耗。

场景B:直接黑洞被攻击IP,黑洞2小时。该入口完全不可访问,但源站、数据库、其他入口正常。直接收入损失4万元,但恢复动作简单,黑洞解除后业务状态干净。

表面看A损失更小,因为还有30%用户能进;实际一线处理时,经常更愿意选B。原因是A会制造“半死不活”的状态,业务链路被污染,监控告警满屏,研发、运维、客服都不知道先救哪里。B是硬中断,但范围明确。

再换一个场景:金融API、支付回调、企业SaaS后台,如果继续牵引导致接口间歇性超时,可能出现重复扣款、订单状态不一致、第三方回调失败。这个时候黑洞某个入口,反而比让请求随机失败更安全。

什么时候继续牵引损失更小

攻击超过标称上限,不代表一定马上黑洞。如果超过幅度不大,比如100Gbps防护遇到110Gbps到130Gbps攻击,且清洗中心还有弹性资源,继续牵引通常值得尝试。尤其是攻击波动明显,峰值只持续几分钟,清洗策略能动态调整,这种没必要立刻牺牲可用性。

还有一种是业务有多入口调度。比如主入口走高防BGP,备用入口走另一个高防节点,DNS TTL设置得比较短,客户端也有备用域名或备用IP。攻击打满其中一个节点时,可以继续牵引一部分流量,同时把新用户调度到其他节点。此时牵引的目标不是“全量扛住”,而是争取迁移窗口。

实际使用中发现,游戏行业比较常见这种打法。登录服、网关服、战斗服拆开,登录入口被打时,在线用户尽量不掉;新登录用户切备用线路。攻击量如果不是压倒性超过防护,继续牵引能保住在线盘。

什么时候黑洞损失更小

攻击量明显超过清洗上限,比如买100Gbps防御,进来300Gbps以上,且持续10分钟以上,继续牵引意义就不大了。清洗设备不是无限桶,硬接只会让丢包、误杀、延迟一起上来。

如果源站已经出现CPU打满、连接数耗尽、带宽跑满,建议尽快黑洞被攻击入口。源站被拖死之后,恢复时间比黑洞更难控。黑洞解除可能几分钟恢复,源站进程、数据库、缓存、队列被打乱后,恢复可能要半小时甚至几小时。

如果同机房还有其他核心业务,也倾向于黑洞。比如一个客户把活动页放在高防IP后面,但源站和主业务在同一内网交换区域。攻击穿透后把内网、负载均衡、NAT网关拖满,主业务跟着异常,这种损失会扩大。

这里补充一点,运营商或云厂商的黑洞不一定只看你买的防护值,也看攻击对上游网络的影响。某些线路,比如CN2、GIA这类精品线路,本身优势是低延迟、稳定路由,不是拿来硬扛大流量DDoS的。高价值线路一旦被大流量攻击污染,上游通常会更快触发保护策略。

业务类型不同,选择会完全不一样

Web官网、企业展示站、下载站这类业务,如果没有强交易属性,攻击超过防护上限后,黑洞损失通常更小。页面打不开虽然影响品牌,但不会产生复杂数据一致性问题。

游戏业务要拆开看。登录入口被打,可以黑洞单入口并切备用;战斗服被打,要看是否影响在线玩家。如果继续牵引导致大面积掉线、回档、匹配异常,损失会比黑洞某个区服更大。

电商和支付链路最怕半可用。用户提交订单成功,但支付回调失败;支付成功,但订单状态没更新;库存扣了,订单没生成。这类场景下,如果清洗质量已经不稳定,宁愿让入口明确不可用,也不要让交易链路随机失败。

API业务要关注调用方重试。很多B端客户会设置自动重试,接口一旦间歇性超时,重试流量会放大压力。DDoS流量还没完全打死业务,客户侧重试先把服务压死,这种情况在线上见过不少。

高防容量怎么选,不能只按平时业务带宽算

平时业务只有50Mbps,不代表买50Gbps防护就够。DDoS攻击量和业务真实带宽关系不大,更多看行业、对手成本、攻击资源池、业务是否有明显收益点。

中小型企业站、普通后台系统,100Gbps级别防御通常够覆盖大多数常见攻击。比如129云的金华电信-B型,8C CPU、8G DDR4 ECC、1TB硬盘、100Mbps独享带宽、1TB流量,带100Gbps防御,适合电信单线访问为主、预算敏感但需要基础高防的业务。购买前建议把源站隔离、端口收敛、回源白名单一起规划,不要只看“防御多少G”。需要确认攻击历史和线路适配,可以直接联系400-9177118问清楚防护策略、黑洞阈值和解封规则。

如果业务在香港,主要追求大陆访问质量,香港CN2大宽带-C型这类精品CN2线路更适合低延迟访问、企业站、跨境业务、轻量游戏入口。它的价值在链路质量,不建议把CN2当大流量DDoS硬抗入口。被攻击风险高的业务,前面还是要接专门高防或分离防护入口。

海外电商、TikTok、亚马逊相关业务,用德国双ISP-B型这种双ISP环境,重点是账号环境、访问稳定性和区域网络,不是拿来承接国内大流量攻击。选机器时要把“业务访问质量”和“抗DDoS能力”分开看,混在一起很容易买错。

超过上限之前就要设计好“牵引失败后怎么死”

很多线上事故不是因为被打,而是因为没有预案。高防被打穿后,大家临时讨论要不要黑洞、黑洞哪个IP、业务会不会连坐,这个时间窗口里攻击还在持续。

比较稳的做法是把入口拆开。官网一个IP,登录一个IP,API一个IP,支付回调一个IP,管理后台不要暴露在同一个高防入口上。这样黑洞时可以只牺牲被攻击入口,不会一刀切。

源站必须隐藏。高防只是入口,如果源站真实IP泄露,攻击者绕过高防直接打源站,牵引和黑洞都很被动。源站安全组只允许高防回源IP访问,SSH、RDP、数据库端口不要公网裸奔。

DNS TTL不要设置得太长。很多业务TTL写3600秒甚至更高,攻击时想切入口,用户侧缓存不更新。高风险业务可以把关键域名TTL控制在60秒到300秒,配合多高防节点切换。

客户端业务要有备用入口。游戏客户端、App、SDK如果只写死一个域名,DNS被污染或入口黑洞后没有退路。至少保留备用域名、备用IP池、配置拉取通道。这里不是让所有用户平时都走备用,而是攻击时有切换空间。

黑洞时间也要提前问清楚

不同服务商黑洞规则差异很大。有的攻击停止后自动解封,可能15分钟到30分钟;有的需要人工工单;有的连续攻击会延长黑洞时间,比如第一次30分钟,第二次2小时,第三次24小时。这个规则必须在购买前问清楚。

还要问清楚黑洞粒度。是单IP黑洞,还是整个段受影响;是国内方向黑洞,还是全球黑洞;BGP线路和单线线路策略是否一样。实际处理时,这些细节决定损失大小。

有些业务买高防时只问“能防多少G”,但不问“超了怎么办”。真正出事时,超防后的处置规则比标称防护值更重要。比如100Gbps防御被120Gbps打,服务商是否允许短时弹性;被300Gbps打,是否直接黑洞;黑洞后能否换IP;换IP是否收费;这些都要提前写进运维预案。

判断牵引还是黑洞,可以看实时指标

攻击刚上来时,不要只盯流量图。要同时看清洗后回源带宽、源站CPU、连接数、负载均衡5xx、接口P95/P99延迟、数据库连接数、队列堆积、用户成功率。

如果攻击流量超过防护上限,但清洗后回源稳定,源站负载正常,用户成功率还能维持在90%以上,可以继续牵引观察,并准备切备用入口。

如果用户成功率掉到50%以下,接口大量超时,源站连接数持续上升,清洗后回源流量异常放大,继续牵引价值就很低。这个时候黑洞被攻击IP,保其他入口和源站,通常损失更小。

如果监控已经显示源站被打穿,不要再纠结“再撑一会”。源站一旦进入雪崩,缓存击穿、队列堆积、数据库慢查询、日志爆盘会一起出现。后面即使攻击停了,业务也不会马上恢复。

有时候不是二选一,而是先牵引再主动黑洞

线上更常见的动作是分阶段处理。攻击刚开始,先牵引,让清洗中心识别攻击特征,同时观察攻击规模。如果规模可控,继续清洗;如果规模持续升高,超过上限明显,就主动黑洞受攻击IP,避免被上游强制黑洞更长时间。

主动黑洞还有一个好处:可以在业务侧同步切换。比如先公告用户某区服维护,切备用登录入口,暂停部分非核心接口,再黑洞被打入口。被动等服务商强制黑洞,业务侧往往来不及做这些动作。

高防不是越贵越安全,关键是防护容量、线路质量、业务拆分、超限处置要匹配。100Gbps防御适合多数中小攻击场景,但如果业务长期被300Gbps以上攻击盯上,就要考虑更高防护池、Anycast高防、多节点调度,甚至把静态资源、登录、API、游戏网关分别做防护。

实际选择时更偏向这个判断

攻击超过上限不多,清洗后业务质量还能接受,继续牵引,争取时间切流量。

攻击超过上限很多,源站或回源链路已经不稳,黑洞被攻击入口,保源站和其他业务。

交易类、支付类、强状态业务,半可用的风险很高,清洗不稳定时更适合快速黑洞。

展示类、下载类、非核心活动页,可以承受短时不可用,黑洞成本相对更低。

多入口、多节点、多线路业务,可以把牵引当缓冲,把黑洞当隔离手段。单IP承载全部业务的架构,任何选择都会很痛,真正要改的是入口拆分和源站隐藏。