CC攻击打满带宽之后高防节点清洗完流量还剩多少
CC攻击打满带宽之后,高防节点清洗完流量还剩多少
这个问题在现场经常遇到,问法一般是:“现在CC把带宽打满了,接高防之后,清洗完还能剩多少带宽给业务?”
这里要先把一个误区拆开。高防节点不是把攻击流量“压缩”一下再转发给源站,也不是说攻击来了10Gbps,清洗掉9Gbps,就固定剩1Gbps可用。高防清洗的动作更接近于:攻击流量在高防节点入口被识别、丢弃、限速或挑战,正常业务流量才会被放行到后端。
所以清洗完还剩多少,不是看攻击总量减掉多少,而是看正常业务本来有多少、清洗策略误伤多少、转发链路上限是多少、源站带宽和性能还能不能接住。
CC攻击打满带宽,打满的是哪里
实际使用中发现,很多人说“CC打满带宽”,其实场景不完全一样。
一种是源站IP暴露了,攻击直接打到源站公网口。比如源站只有100Mbps带宽,攻击请求虽然是HTTP层,但每个请求都带TLS握手、Header、Cookie、动态路径,叠加起来也能把入口带宽和连接数打满。这个时候如果只是买了高防IP,但业务DNS还没切过去,或者攻击流量仍然能直连源站,高防节点基本看不到这部分流量。
另一种是业务已经走高防IP或高防CDN,攻击打在高防节点上。高防节点入口可能看到5Gbps、20Gbps甚至更高的混合流量,但源站侧只会收到清洗后的回源请求。这个时候才有“清洗后还剩多少”的讨论价值。
还有一种比较麻烦,攻击不是纯CC,而是CC夹着SYN Flood、UDP反射、TLS握手洪泛一起上。业务侧看起来都是访问慢、502、带宽满,但清洗方式不一样。L3/L4流量主要靠流量清洗、黑洞、限速、协议校验;L7 CC更多靠访问频率、指纹、JS Challenge、验证码、URL规则、行为模型。
清洗完不是剩余带宽,而是放行的干净流量
高防节点清洗后,正常情况下进入后端的流量应该接近业务真实流量,而不是攻击峰值的一部分。
举个现场里比较常见的数据:
业务正常访问:80Mbps左右,峰值120Mbps。
攻击到高防节点:8Gbps,HTTP请求峰值120万QPS,其中大部分是伪造UA、固定路径、高频刷新。
高防策略生效后:攻击流量在节点侧被丢弃,回源流量稳定在90Mbps到150Mbps之间。
这时候不能说“8Gbps清洗完还剩150Mbps”,准确说法是:8Gbps里绝大部分不是业务流量,清洗后只放行了接近真实访问规模的流量。
再看另一个场景:
业务正常访问:300Mbps左右。
购买的高防转发带宽:100Mbps。
攻击入口:5Gbps。
清洗策略没问题,但业务高峰真实流量已经超过100Mbps。
这种情况下,清洗得再干净,用户侧还是会慢,因为转发带宽不够。高防防护峰值和业务可用带宽是两回事。50Gbps防护,不等于给业务提供50Gbps可持续访问带宽。
几个典型数据场景
源站100Mbps,被CC打满
源站带宽100Mbps,正常业务20Mbps到40Mbps。攻击直接打源站,入口跑满100Mbps,机器CPU可能还没满,但Nginx连接数、TLS握手、上游PHP或Java线程池已经开始堆积。
切到高防节点后,如果源站IP隐藏干净,攻击流量不再直达源站,高防节点侧看到的可能是1Gbps到10Gbps攻击。清洗后回源一般会落回30Mbps到60Mbps,看业务动态请求比例。如果有大量图片、视频、安装包这类静态资源没做缓存,回源还会偏高。
这里清洗后“剩多少”,大概率就是正常业务流量加上一点清洗漏放和探测流量,不会按攻击流量比例来算。
高防节点入口30Gbps,回源只有200Mbps
这个是比较理想的状态。高防节点入口承压30Gbps,规则命中比较准,恶意请求大部分被拦在节点侧。源站看到200Mbps左右,连接数稳定,业务能打开。
但要注意,200Mbps不一定全是正常用户。CC清洗不是数学过滤器,尤其是模拟浏览器、真实住宅IP、低频分布式访问,可能会有一部分穿透。实际运维时会继续看URL命中、状态码、单IP访问频率、地区分布、ASN来源、Cookie通过率,再把规则收紧。
清洗后只有20Mbps,但业务还是卡
这个现象也不少见。带宽看着不高,业务还是卡,原因通常不在带宽。
比如后端接口每个请求都查数据库,CC攻击专门打搜索、登录、订单查询这种动态接口。高防节点清洗后只放过去20Mbps,但QPS可能还有几千,数据库连接池被打满,Redis热点Key过期,应用线程阻塞,用户一样会感觉打不开。
所以看“剩多少”不能只盯Mbps。CC攻击更应该同时看QPS、并发连接数、请求路径、状态码、平均响应时间、源站CPU、数据库慢查询。
高防防护峰值、业务带宽、回源带宽要分开看
防护峰值是节点能扛多大攻击,比如50Gbps、100Gbps、300Gbps。这个数字主要对应攻击入口清洗能力。
业务带宽是用户正常访问能用多少,比如20Mbps、100Mbps、1Gbps。这个数字决定业务访问上限。
回源带宽是高防节点到源站之间实际转发的流量能力。对于高防IP、反向代理、高防CDN来说,回源链路质量很关键。线路抖动、跨运营商绕路、国际链路拥塞,都会导致清洗后流量不大但访问仍然慢。
多说一句,BGP、CN2、GIA这些线路名词要结合业务用户地区看。国内用户访问海外源站,走普通国际线路和走CN2 GIA,体验差异很明显。游戏、登录、支付、后台接口这种对延迟敏感的业务,不能只看防护峰值。
用一组数字把关系说清楚
场景A:正常业务50Mbps,攻击5Gbps,高防转发带宽100Mbps,源站带宽100Mbps。清洗准确时,源站收到大约50Mbps到80Mbps,业务大概率正常。
场景B:正常业务180Mbps,攻击5Gbps,高防转发带宽100Mbps,源站带宽300Mbps。即使清洗准确,用户也会被100Mbps转发带宽卡住,表现为高峰慢、部分请求超时。
场景C:正常业务30Mbps,攻击20Gbps,高防防护峰值10Gbps。节点入口已经超过防护能力,可能触发限速、丢包、黑洞或牵引异常。清洗后剩多少已经不是核心问题,节点先要扛住入口。
场景D:正常业务40Mbps,攻击3Gbps,源站IP暴露。高防节点清洗了DNS解析过来的流量,但攻击者继续直打源站IP,源站公网口仍然满。此时看高防报表会觉得“清洗后流量很干净”,但业务还是挂,因为源站没有藏住。
为什么有时候清洗后流量反而看起来更高
现场排障时会遇到一种情况:接入高防前,源站监控显示入口100Mbps满;接入高防后,源站入口变成150Mbps,感觉像是高防越洗越多。
这不一定是高防问题。原来源站100Mbps已经被打满,很多请求在公网入口就丢了,监控只能看到上限。接入高防后,链路恢复,真实用户请求重新进来,业务响应也开始回传,源站出口和入口都会变化。
还有一种原因是回源配置不合理。比如高防节点没有缓存静态资源,所有图片、JS、CSS都回源;或者健康检查频率过高;或者多个高防节点同时回源,源站看到的连接数比原来更多。这个要看回源日志,不要只看总带宽。
CC清洗会不会误伤正常用户
会,尤其是规则收得很紧的时候。
比如攻击者用真实浏览器指纹、真实IP池、低频访问业务核心接口,高防策略为了压住攻击,可能会启用JS Challenge、Cookie校验、验证码、访问频率限制。部分老旧浏览器、脚本客户端、小程序内嵌WebView、海外弱网用户,就可能被误判。
清洗后“剩下多少”里面,除了干净流量,还要看被挡掉的正常用户有多少。这个通常要结合业务日志看,比如登录成功率、支付回调成功率、API错误率、地区访问下降幅度。
实际使用中发现,单纯追求把回源流量压到很低不一定是好事。比如正常业务高峰本来80Mbps,清洗后只剩5Mbps,页面打不开、登录掉线,那很可能是策略过严,不是防护效果特别好。
源站隐藏没做好,高防清洗价值会被打折
高防接入后,源站IP要尽量不暴露。DNS历史解析、邮件服务器、接口回调、老版本App写死IP、对象存储回源白名单、第三方监控,都可能泄露源站。
攻击者拿到源站IP后,直接绕过高防打源站,清洗节点再强也挡不住这条路径。这个时候经常出现两个监控画面:高防后台显示攻击已清洗,源站机房后台显示带宽仍然满。两边都没撒谎,只是流量走了不同路径。
比较稳的做法是源站只允许高防节点IP段回源,其他公网访问全部丢弃。安全组、防火墙、iptables、Nginx allow/deny都可以做,但要注意高防节点IP段变更通知,别把自己业务挡死。
选择高防时不要只问能防多少G
购买时经常有人只问“能不能防100G”。这个问题要问,但不够。CC场景下还要问业务带宽、转发带宽、单IP连接数、HTTP/HTTPS规则能力、是否支持URL级策略、是否支持CC人机校验、回源线路、源站隐藏方式。
如果业务本身只有几十Mbps,偶发CC攻击,选择带单机防御的高防服务器会比较直接。比如西北地区企业站、接口站、小型业务,可以看129云的西安电信-C型,4C 8G、50GB SSD、20Mbps峰值上行、1个IPv4、50Gbps单机防御,电信单线,适合对区域线路和防护成本比较敏感的场景。
如果是海外电商、TikTok、亚马逊相关业务,访问来源复杂,除了防护还要看IP属性和线路稳定性。129云的美国双ISP-D型是16C 16G、150G SSD、100Mbps峰值、双ISP,适合电商、游戏、海外业务这类需要更高配置和IP属性的场景。
如果只是测试、轻量业务、海外小站,美国活动款2C 2G、30GB SSD、10Mbps、基础防御,成本会低一些。真遇到持续CC或大流量DDoS,再切更高防护规格。选型前可以直接问客服热线400-9177118,把业务正常带宽、攻击峰值、用户地区、是否HTTPS、源站是否能隐藏说清楚,比只报一个“我要防多少G”更容易匹配。
现场判断清洗后还剩多少,看这些指标更准
看高防入口攻击流量
入口攻击流量代表节点承压,比如5Gbps、30Gbps、100Gbps。这个数字用来看防护峰值是否够,不用拿它直接推算回源带宽。
看高防放行流量
放行流量才接近“清洗后剩下的流量”。如果业务正常是80Mbps,放行稳定在90Mbps上下,基本合理。如果突然放行到500Mbps,要查是否有漏放、缓存失效、静态资源全部回源。
看源站实际入口和出口
源站入口低不代表业务没压力,出口高也可能是正常用户恢复访问。Web业务经常是请求入口很小,响应出口很大,比如用户请求一个页面只有几KB,返回图片、接口数据、HTML可能几百KB到几MB。
看QPS和状态码
CC攻击更核心的是请求数。带宽只有30Mbps,但QPS打到2万,应用一样可能挂。状态码里如果499、502、503、504突然升高,说明链路或源站已经有阻塞。
看源站资源
CPU、load、连接数、Nginx active connections、数据库连接池、Redis延迟,这些指标要一起看。高防把大水挡住了,但源站应用本身太脆,少量穿透流量也能把业务打慢。
一个比较接近真实的排障过程
业务是HTTPS站点,正常晚高峰70Mbps左右,源站带宽100Mbps。晚上开始访问慢,机房监控入口跑满100Mbps,Nginx日志里同一个接口被大量访问,URL集中在/search和/api/list。
切高防后,DNS解析到高防IP。高防节点入口看到6Gbps混合流量,其中HTTP请求峰值几十万QPS。初始规则只做了基础频率限制,回源还有300Mbps,源站继续502。
后面把静态资源缓存打开,对/search加了频率限制,对/api/list加Cookie校验,并把异常UA和无Referer高频请求拦掉。十几分钟后,高防放行流量降到90Mbps左右,源站入口35Mbps,出口80Mbps,Nginx 502下降,业务恢复。
这里如果只问“6Gbps洗完还剩多少”,答案就是90Mbps左右。但这个90Mbps不是6Gbps扣出来的余量,而是策略收敛后允许进入业务链路的访问量。源站看到入口35Mbps,是因为请求体不大;出口80Mbps,是因为业务响应内容更多。
清洗后还剩多少,常见范围可以这样估
正常业务流量已知时,清洗后放行流量通常会围绕正常业务峰值上下波动。正常50Mbps,清洗后可能是50Mbps到100Mbps;正常200Mbps,清洗后可能是200Mbps到300Mbps。波动来自真实用户重试、攻击漏放、缓存回源、挑战页面、策略调整。
正常业务流量未知时,可以从攻击前一周同时间段带宽、CDN日志、Nginx access log、订单量、在线人数反推。游戏业务看在线和包量,网站看PV和静态资源占比,API业务看QPS和响应大小。
如果清洗后流量低于历史正常值很多,要怀疑误伤或用户还没恢复解析。如果清洗后流量远高于历史正常值,要怀疑规则没压住、源站暴露、静态资源回源过多、攻击伪装程度高。
高防节点清洗后的带宽不是越低越好
业务正常跑80Mbps,清洗后只剩10Mbps,同时在线掉了一半,订单量掉了三分之二,这不是防护漂亮,是正常用户被挡了。
业务正常跑80Mbps,清洗后稳定在100Mbps,状态码正常,响应时间正常,订单和登录恢复,这种才是健康状态。
CC防护现场更像调阀门。阀门开太大,攻击漏进来;阀门关太死,用户进不来。看报表时别只盯攻击拦截率,业务指标才是最终参照。
带宽被打满时的处理顺序
先确认流量是不是还在直打源站。如果源站IP暴露,高防侧配置再多也只能挡住经过它的流量。
再确认高防入口有没有超过防护峰值。入口超过防护能力时,要升级防护、换节点、做分流,不能只调CC规则。
然后看高防放行流量和源站承载能力是否匹配。放行100Mbps不代表源站一定能扛住,如果后端接口很重,几十Mbps也可能压垮数据库。
接着按URL、UA、Cookie、IP段、地区、ASN、访问频率去细化规则。不要一上来全站验证码,除非业务已经完全不可用。全站强挑战对登录、支付、小程序、App接口影响很大。
源站侧同步做限流和降级。搜索接口、列表接口、登录接口、短信接口都应该有自己的限流策略。高防挡外面的大流量,源站自己也要能扛住少量漏放和真实高峰。
一个容易忽略的点:HTTPS握手成本
CC攻击打HTTPS时,带宽不一定特别夸张,但握手成本很高。大量新建TLS连接会吃CPU,尤其是源站自己终止TLS时更明显。
如果高防节点支持HTTPS卸载,攻击连接在节点侧完成挑战和校验,源站只接收通过校验后的请求,压力会小很多。但证书配置、回源协议、SNI、HTTP/2支持情况要提前确认。
有些业务接入后出现偶发502,是因为高防到源站使用HTTPS回源,源站证书链不完整、SNI不匹配、TLS版本太旧,攻击时连接放大后问题暴露出来。这个和“清洗后剩多少带宽”不是一类问题,但现场经常一起出现。
按业务类型看清洗后的流量表现
企业官网
企业官网正常流量通常不大,几Mbps到几十Mbps。CC攻击打满100Mbps源站很常见。接高防后,如果静态资源缓存得好,回源可能只有几Mbps到十几Mbps。官网类业务重点是隐藏源站和缓存静态资源。
游戏登录和接口
游戏业务带宽不一定最大,但接口敏感。登录、注册、拉取角色、匹配接口被打,清洗后即使只剩几十Mbps,也可能因为QPS高导致后端异常。需要配合业务侧限流、队列、验证码或设备指纹。
电商和海外业务
电商业务正常波峰明显,活动期真实流量会突然上涨。清洗策略不能直接按平时流量写死,不然活动当天容易误伤。海外业务还要看BGP、CN2、GIA、双ISP这类线路条件,清洗后流量干净但链路绕路,用户一样会觉得慢。
清洗完到底还剩多少,可以用一句工程化的话描述
高防清洗后的剩余流量,大致等于真实业务流量,加上少量漏放攻击流量和清洗过程产生的校验流量,再受限于高防转发带宽、回源链路、源站带宽、源站性能。
如果正常业务是80Mbps,攻击是10Gbps,防护和规则都合适,清洗后看到80Mbps到150Mbps都算常见。如果正常业务是500Mbps,但只买了100Mbps转发,清洗后最多也只能按100Mbps这个瓶颈跑,访问体验不会好。
如果源站还暴露,清洗后高防报表里的数字再好看,也不能代表业务安全,因为攻击流量可能根本没经过高防节点。