一、先搞清楚:商家说的「高防」到底包含哪些东西

高防不是一项开关,而是三件套的组合:流量清洗、路由黑洞、过滤规则。 很多人在这一步吃亏,是因为把「商家页面写着高防」直接等同于「我的机器能扛住大流量攻击」,而这两件事的差别,恰恰藏在配置表里读不出来的地方。
先把这三件套分开。 流量清洗是把判定为攻击的包在上游丢掉,你的服务器 IP 不变、业务照常响应,这是主力手段;路由黑洞是把整个 IP 直接从路由里摘掉,所有流量进黑洞,这是最后手段;过滤规则是最基础的,在主机或机房侧按特征丢包。
这三件套有三种不同的实现路径,选谁决定了你能不能扛住。 第一种是上游清洗,IDC 或运营商在你之前就把攻击流量剥掉,你只收到干净流量;第二种是机房本地清洗,机房网络设备上跑清洗引擎,延迟多一跳但成本低;第三种是主机商在主机上写规则拦截,配置最灵活,但对定制的应用层攻击几乎无效。
再看你能拿到的公开字段能说明什么。 商品库里跟防御相关的字段其实只有四个:bandwidth_mbps 是端口速率,traffic_gb_per_month 是每月流量额度,throttle_mbps 和 throttle_shared 是限速阈值和是否共享,traffic_reset_price 是超额流量的重置价格,再加上 ipv4_count 告诉你有几个 IPv4。
但这里必须讲清一件事:这些字段里没有任何一个写着「清洗阈值」或者「清洗单价」。 也就是说,你能从公开数据算出「弹药有多少」,算不出「枪有多准」。 清洗能力和流量额度是两件事,前者要问商家或看商品页原文,后者自己就能算。
这一节的结论直接决定后面的算法:清洗是按流量计费的,流量额度才是你真正的弹药量。 所以买高防的第一步不是问「能防多少 G」,而是问「超了会怎样、每 TB 多少钱」。
二、被攻击是什么样子:四种能自己认出来的表现

在被攻击的时候,绝大多数人是先慌后查,顺序反了。 正确顺序是先认出攻击类型,再决定动作。下面四种表现可以靠服务器上的三个数字认出来,不需要买任何工具。
表现一:带宽被打满,但你的站点还在正常响应。 这是最典型的流量型攻击特征——攻击流量在到达你的应用之前就被丢弃了,所以你的 Web 服务看起来毫发无损,但对外出口已经饱和。判断依据是网卡累计流量在涨,而应用日志里的请求数没变。
表现二:连接数被耗尽,网站大面积 502 或 504,但 CPU 并不高。 攻击者用大量半开连接或长连接占住你的连接池,你的 Nginx 或应用服务拿不出连接去处理正常请求。这时候 top 看起来很闲,但 Nginx 报 too many open files 或者 upstream timed out。
表现三:流量很小,但业务被打穿。 你的 IP 被单独针对,DNS 记录被改、hosts 被污染,或者对方只打你的业务端口。这种情况下总流量甚至可能比正常业务还低,只看带宽监控是发现不了的,必须同时看请求日志里的来源分布。
表现四:应用层打穿,流量特征完全正常。 对方伪装成正常用户调用你的接口,爬你的接口、刷你的活动页、撞你的登录。这类攻击在带宽图上是一条平线,任何按流量计费的清洗方案对它都无效,这一点在第七节会展开。
这四种表现还有一个共同的识别信号:日志里出现了你从没见过的东西。 具体是陌生 UA、异常多的 POST 请求、集中在某个不存在的路径上的访问、或者大量请求只取静态资源不取正文。正常流量的来源分布是有形状的——新访客、搜索引擎爬虫、注册用户三类比例稳定。如果某一类占比突然压倒性地高,那就是有人在做跟正常业务不一样的事,哪怕总流量一点没变。
另外要区分「被攻击」和「自己把自己打挂了」。 一次数据库慢查询、一个没限制的爬虫脚本、一张被反复请求的大图,都会让监控曲线看起来很像攻击。区分方法很直接:看请求的来源分布和路径分布,不看流量曲线。 曲线只告诉你有事发生,分布才告诉你是什么事。
下面这组命令可以在机器上直接跑,把四种表现对应的数字读出来:
# 网卡累计收发(判断表现一:流量涨但请求数没涨)
cat /proc/net/dev | awk 'NR>2 {rx+=$2; tx+=$10} END {printf "收 %.2f GB, 发 %.2f GB\n", rx/1073741824, tx/1073741824}'
# 连接数(判断表现二)
ss -s
ss -tan state established | wc -l
# 每秒新建连接速率(判断表现二/三)
watch -n1 "ss -tan | grep -c SYN-SENT"
# 来源 IP 分布 Top20(判断表现三/四)
awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -rn | head -20
# 请求速率(判断表现四:总量平、但请求数异常)
awk '{print $4}' /var/log/nginx/access.log | cut -d: -f1 | uniq -c | tail -20
把这五个数字记成一组基线,平时跑一次存下来。 被攻击的时候能立刻说出「哪些数变了」,这比任何感觉都可靠。
三、算账:高防到底要花多少钱,用真实单价算出来

这一节是全文最硬的部分,所有数字都来自公开商品库里带真实价格的机型,可以逐条核对。 算账的目的一不是比谁便宜,而是算出「一次攻击吃掉多少额度、还剩几发」。
先看三档真实在售的机型(云途系列,按月付费,人民币结算):
| 机型 | 月价 | 内存 | 硬盘 | 端口 | 月流量 | 每 GB 内存 | 每 GB 硬盘 | 每 TB 流量 |
|---|---|---|---|---|---|---|---|---|
| 云途 HK.DS.M | 350 元 | 32 GB | 480 GB | 1000Mbps | 10000 GB | 10.94 元 | 0.729 元 | 35.84 元 |
| 云途 DS.ES.C | 700 元 | 64 GB | 800 GB | 2000Mbps | 40000 GB | 10.94 元 | 0.875 元 | 17.92 元 |
| 云途 HK.DS.S | 800 元 | 128 GB | 6000 GB | 2000Mbps | 40000 GB | 6.25 元 | 0.133 元 | 20.48 元 |
第一笔账:流量单价。 HK.DS.M 是每 TB 流量 35.84 元,DS.ES.C 是 17.92 元,HK.DS.S 是 20.48 元。同样买 40000GB 流量,DS.ES.C 的流量成本比 HK.DS.M 低整整一半。 而 HK.DS.S 的每 TB 流量 20.48 元比 DS.ES.C 的 17.92 元略高,但它的硬盘单价只有 0.133 元,是三档里最低的。
第二笔账:超额流量的价格。 商品库里有 traffic_reset_price 字段,HK.DS.M 是 200 元,DS.ES.C 和 HK.DS.S 都是 500 元。折成单价:HK.DS.M 的 10000GB 是 9.77 TB,200 元 ÷ 9.77 TB 约等于 20.48 元/TB;DS.ES.C 和 HK.DS.S 的 40000GB 是 39.06 TB,500 元 ÷ 39.06 TB 约等于 12.80 元/TB。也就是说流量撞顶之后,大额套餐的重置单价反而比小额套餐更便宜。
第三笔账:一次攻击吃掉多少额度。 假设攻击峰值是 20 Gbps,持续 20 秒:20 Gbps 等于 2500 MB/s,20 秒就是 50000 MB,约 48.8 GB 流量。HK.DS.M 的 10000GB 额度够挨 205 次这样的攻击,DS.ES.C 和 HK.DS.S 的 40000GB 够挨 820 次。 这就是流量额度在防御场景里的真实含义:它不是「月费附赠的流量」,它是你能挨多少次打的弹药。
第四笔账,也是最容易被忽略的一笔:单机端口速率根本扛不住大攻击。 2000Mbps 的端口跑满是每秒 250 MB,一个 20 Gbps 的攻击是 2500 MB/s,需要 10 个这样的端口才接得住。所以大流量攻击必须由上游清洗来挡,机器自己的额度只是缓冲,不是防线。 这一点决定了第三节之后所有配置思路。
顺便说清另一条产品线的量级,供做预算时参考(美元结算): sixtynet 的 LAX-LARGE 是 1600 美元每年,折合 133.33 美元/月,16 GB 内存、320 GB NVMe 硬盘、10000Mbps 端口、40000GB 月流量,每 GB 内存 8.33 美元、每 TB 流量 3.41 美元。它和 HK.DS.S 的月流量额度同样是 40000GB,但计价币种不同,横向比之前先确认你实际付的是哪一种币,不要把两个数字直接放一起比大小。
四、防护能力怎么验收:六个必须实测出来的数字

「商家说能防」不是验收标准,六个数字才是。 下面每一条都能测、都能留证,买之前问得到,买了之后验得了。
数字一:清洗触发延迟 ≤ 60 秒。 从攻击流量到达你机器到端口恢复正常,中间的等待时间。超过 60 秒,你的业务在清洗生效前就已经被拖垮了。这条通常只能问商家确认时延范围。
数字二:清洗期间合法请求成功率 ≥ 95%。 清洗不是把整个端口一起掐掉,理想状态是只丢攻击包、放过正常包。如果清洗是整 IP 拉黑式处理,这个数字会掉到 0。 测法是在攻击期间从国内网络持续请求一个固定页面,统计成功率。
数字三:恢复后的实测速率 ≥ 标称端口速率的 80%。 清洗之后端口往往还有一段时间在恢复期,这时候你的可用带宽可能只有标称值的一半。下面这条命令可以压测:
# 持续压测 30 秒,看平均速率和抖动
iperf3 -c 商家测试IP -P 4 -t 30
数字四:1 MB 测试文件下载时间 < 2 秒。 用一个固定大小的文件做基准,任何一次抽测超过 2 秒就说明链路在当时是拥塞的。
数字五:内存谷值 < 15%。 攻击期间你的应用还要跑,内存必须留有余量。命令是 free -m 看 available 那一行,长期低于 15% 说明机器没有为突发流量预留空间。
数字六:黑洞策略响应时间 ≤ 30 秒。 如果最终要拉黑洞,人工触发的响应时间就是你的止损时间。这条同样是问商家确认。
这六个数字有个共同的坑:商家给你的答案往往是「没问题」「都可以」。 所以每一条都要追问到一个可以核对的量级——清洗触发延迟要具体到秒数,清洗上限要具体到 Gbps,成功率要具体到百分比,黑洞响应要具体到分钟。问不出具体数字,本身就是一条信息:说明这套防御没有明确的指标。
还有一个必须自己做的动作:把六个数字写下来,存到和第二节那五个基线数字同一个文件里。 被攻击之后你会需要它们做对比,而事到临头去找数据是来不及的。
最后提醒一个验收顺序上的细节:先在低峰时段验,别在业务高峰验。 清洗能力不足的表现是「把正常流量也吃掉」,这个现象在高峰期最容易被误判成业务自己变慢了。在低峰期做一次故意触发,确认正常请求不受影响,才算真验过。
六个数字凑齐之后,你的结论就是一句可以写进邮件的话:「攻击开始后 X 秒端口恢复,期间合法请求成功率 Y%,恢复后实测速率 Z Mbps,内存谷值 N%。」 而不是「商家说有高防」。
五、清洗、限速、封禁、黑洞:四种处置手段的差别

四种手段经常被混着叫「高防」,但它们的作用点完全不同,选错顺序会让攻击持续更久。
流量清洗是第一道也是最主要的一道。 特征是把攻击包在上游丢掉,你的业务 IP 始终在线,用户无感。它按流量消耗额度,所以它和你的月流量预算是同一笔钱。
限速是第二道,作用是保护你的应用而不是保护你的机器。 商品库里的 throttle_mbps 字段就是限速阈值,throttle_shared 标注这个阈值是否对共享带宽生效。这两条都为空、且 throttle_shared 为 false,意味着商品库里没有登记任何限速规则,也就是流量套餐本身不设限速上限。 但这不等于端口是独享带宽,端口是否独享必须单独问。
封禁是第三道,专门对付定向攻击。 把攻击源 IP 或网段加进黑名单,请求直接丢弃。它的前提是你的 IP 没有被单独针对,否则对方换一批源地址就绕过去了。
黑洞是最后一道,也是最后手段。 把整个 IP 从网络里摘掉,攻击流量无处可去,你也不可达了。用黑洞意味着你的业务完全中断。 它的意义是:用一段确定的服务中断,换掉一段不确定的持续掉线。
四者的正确使用顺序是:先清洗,清洗压不住再叠加限速,仍不行才考虑定向封禁,最后才是黑洞。 顺序反过来——比如一上来就黑洞——你会用最贵的方式解决本来能用最便宜方式处理的问题。
这四种手段还有一个「代价维度」的差别,选型时必须一起看。 清洗的代价是流量额度,限速的代价是业务响应变慢,封禁的代价是误封正常用户的可能,黑洞的代价是业务完全中断。四种代价的量级完全不同:流量额度超了还能花钱买回来,黑洞中断的每一分钟都是真金白银的损失。
所以有一个非常实用的判断原则:任何时候,只要业务还能响应,就不要用黑洞。 你可以用降级服务(第八节动作三)来替代黑洞,代价小得多。黑洞是留给「业务已经不可用、且攻击还在持续」这一个状态的。
还有一个容易忽略的点:这四层是叠加的,不是互斥的。 清洗可以配着限速一起开,限速可以配着封禁一起用。配置的时候要问清「这些措施能不能叠加、叠加后谁优先」,因为有的清洗方案在触发时会把限速一起关掉,这会让你的兜底失效。
六、防御场景下的带宽和流量怎么算才不浪费

这一节把第三节的算账方法再推一步,给你在下单前就能用的一组数。
第一步,先算流量额度和端口速率的关系。 HK.DS.S 的 40000GB 流量按 30 天摊:40000 GB 是 40960000 MB,除以 30 天再除以 86400 秒,约合每秒 15.8 MB,也就是 126 Mbps。它的端口是 2000Mbps,所以流量额度只相当于端口速率的 6.3%。 HK.DS.M 的 10000GB 同理摊出来是每秒 3.95 MB,约 32 Mbps,相当于 1000Mbps 端口的 3.2%。
这个算式说明: 你在正常运营时,永远用不满端口;端口速率决定的是「你被攻击时能扛多久」,流量额度决定的是「你能扛多少次」。
第二步,按攻击场景倒推该买多大额度。 如果你的业务正常每月消耗 2000GB 流量(相当于日均 50000 次页面访问、每页 1.3MB 的站点量级),那 HK.DS.M 的 10000GB 里有 8000GB 是余量,够按第三节的算式再挨 164 次 20 Gbps 的攻击。 如果你的业务正常每月就要 12000GB,HK.DS.M 的额度在第一次大规模攻击时就会打满,这时正确选择是 DS.ES.C 或 HK.DS.S 这种 40000GB 档位的。
第三步,留 30% 的余量。 需要的额度应该是实际用量的 1 除以 0.7,也就是约 1.43 倍。按 2000GB 的正常用量算,你要准备 2000 ÷ 0.7 ≈ 2857GB 才够用。 理由是清洗期间你的业务不会完全停,正常的业务流量会继续消耗额度;余量留 30% 是下限,如果你的业务流量本身波动大(比如有大促、有爬虫),余量要留到 50%。
第四步,算清楚超额之后每 TB 多少钱。 用第三节算过的重置单价:小额档约 20.48 元/TB,大额档约 12.80 元/TB。如果你的攻击强度大到额度经常被打穿,那么大额档 + 低重置价的组合,比小额档便宜得多。
七、什么情况下不该选高防:四类场景和它们的替代方案

这一节是反着写的,因为高防是最容易被过度购买的产品。以下四种情况,基于机房位置、线路类型、计费方式和 IP 资源这些公开事实,不涉及任何商家的好坏判断。
场景一:只是做展示站,PV 很低,且没有可被利用的价值。 攻击者不会花成本去打一个没人看的站。此时买高防是把弹药钱花在不会开火的地方。 替代方案:选最便宜的普通套餐,把流量额度花在业务上,前面挂一层免费 CDN 做静态缓存;把预算留给 IP 质量和线路。
场景二:攻击来自应用层,刷接口、爬页面、撞登录。 这类攻击的总流量可能只有几十兆,你的流量额度根本不会被消耗,按流量计费的清洗方案对它无效,因为清洗判定的依据是流量特征。替代方案:接口加鉴权和频率限制、登录加验证码、对爬虫按 UA 和行为特征拦截,同时在 CDN 层做限速。这一类场景的正确顺序是先修应用,再谈防御。
场景三:攻击是定向的,而且你只需要一个 IP。 定向攻击的特点是只打你,换 IP 就能断开。如果你的商品库配置里 ipv4_count 是 1,而商家允许更换 IP,那么换 IP 的成本通常远低于长期持有高防的成本。 替代方案:买多 IP 机型做 IP 池、用 DNS 做轮换,或者把入口放到有清洗能力的分发层后面。注意这是机房与 IP 资源层面的事实,不是对任何商家的评价。
场景四:你需要长期扛住 10 Gbps 级别的持续攻击。 按第三节的算式,2000Mbps 的端口最多接住 250 MB/s,一个 10 Gbps 的攻击是 1250 MB/s,单机端口无论如何都接不住。替代方案:不要在单机上堆配置,而是找带上游清洗的产品,让攻击流量在进你机房之前就被处理掉。这类场景里「买更大的机器」是无效动作,唯一有效的动作是把清洗点前移。
这四种场景之外,还有一类人不需要高防:机器定位是开发测试。 测试机的 IP 没有业务价值,攻击者不会浪费时间,这时候高防溢价是纯粹的浪费。
八、被攻击时的应急流程:五个动作的先后顺序

这一节按时间顺序写,动作顺序错了会白白损失掉本可挽回的时间。
动作一,0 到 15 分钟:先留证,不要先重装。 被攻击现场的信息是最有价值的,日志、监控曲线、攻击特征,重装会把它全抹掉。至少做三件事:截图监控面板、导出访问日志、把网卡累计流量记下来。
动作二,15 到 30 分钟:判断攻击类型,对照第二节。 流量涨但请求数没涨,是流量型;连接数爆但 CPU 闲,是连接型;流量正常但来源集中,是定向型;请求数异常但流量平,是应用层。类型判错,后面所有动作都是白做。
动作三,30 到 45 分钟:自己先降载。 关掉非核心服务、给日志和备份任务降优先级、必要时把站点切到静态页。这一步不需要等商家响应,能立刻减少损失。
动作四,45 到 60 分钟:联系机房,把证据摆出来。 沟通时给出四个数字:你的 IP、攻击开始的具体时间、你的实测峰值流量、你的业务类型。这四个数字是商家判断要不要给你开清洗的直接依据,比「我的网站打不开」有用得多。
动作五,恢复后:先小流量验证,再放量。 端口恢复后先用自己的监控看 30 分钟,确认清洗没有把你的正常流量一起吃掉,再切回全量业务。并且把这次的峰值流量和持续时间记下来,下次买配置时这就是你的算账输入。
# 恢复后验证:连续 30 次请求的成功率与耗时
for i in $(seq 1 30); do
curl -s -o /dev/null -w "%{http_code} %{time_total}\n" https://你的站点/
sleep 1
done
九、下单前必须问清的六个问题

这一节是全文最省钱的清单。 上面九个章节里的所有结论,最后都收敛到这六个问题上。问清楚再付款,不要靠猜。
问题一:清洗的触发阈值是多少,是按流量、带宽占用率还是包速率触发? 这个数字决定了你正常业务流量会不会误触发清洗。
问题二:清洗流量是否计入我的月流量额度,清洗本身是否另外收费? 两种模式的总成本差很多,这是第八个问题的答案,也是第三节那笔账能不能成立的前提。
问题三:清洗能力的上限是多少 Gbps,超过之后会怎么处理? 直接决定了你需不需要在业务侧自己限速兜底。
问题四:黑洞策略是自动触发还是需要人工申请? 人工的话,响应时间就是你的止损时间,第六节那六个数字里的第六条要按这个来定。
问题五:超额流量怎么结算,是按 traffic_reset_price 那个价格吗? 拿第三节算过的重置单价去核对商家报价,如果对不上,说明你看到的套餐描述和产品库不是同一份数据。
问题六:IPv4 有几个、能不能换、换 IP 的响应时间是多久? 定向攻击的断路器就是 IP 池,第七节场景三的替代方案能不能用,全看这一条。
另外补一个必须澄清的字段: 商品库里 throttle_mbps 为空、throttle_shared 为 false,只表示产品资料里没有登记限速规则,不等于端口是独享带宽。独享与否是线路类型问题,必须单独问。
补充第七个问题,答案往往比前六个更值钱:这套防御是机房侧的,还是上游运营商侧的? 机房侧清洗和你 IP 段的运营商侧清洗,能力上限不是一个量级。问清楚这一点,你就知道自己的天花板在哪——第八节说的大流量攻击要靠上游挡,说的就是这个差别。
按你的情况,下一步该看哪家
上面讲的是判断标准,但多数人最后还是想问一句「那我该买谁」。按你的实际情况对照下面几条,直接去看对应的机型页比继续比价更快:
- 只想搭个站、预算优先:先看价格最低那档够不够用,别为用不上的配置付钱。看 justg 当前机型与价格
- 主要访客在国内、在意打开速度:先确认回程线路,再谈配置。看 vpckr 当前机型与价格
- 跑游戏服或实时业务:看上行抖动与防御能力,普通套餐往往不达标。看 zji 当前机型与价格
- 只是开发测试、临时用:按小时或月付,用完就删,别买年付。看 恒创科技 当前机型与价格
价格与库存以商家页面当日显示为准,下单前建议先确认退款窗口与是否支持按月付费。
十、按你的情况给结论:四类人的具体选择

最后给四类人各自明确的动作,不写「看情况」。
第一类:只做展示站、企业官网,PV 每月不超过两万。 目标是不中断,不是要反击。选 1000Mbps 端口、月流量 10000GB 这一档就够,公开单价里对应的是 350 元/月、每 TB 流量 35.84 元这一级别。 预算有限的话把多出来的钱放在 CDN 上,而不是高防上。下单前把第四节那六个数字问出来,只要商家答得出清洗阈值和黑洞响应时间就可以下单。
第二类:论坛、图片站、下载站,月流量本身就超过 8000GB。 你的正常流量和攻击流量要用同一份额度结算,所以直接上 40000GB 这一档,公开单价里是 700 元/月和 800 元/月两档:前者每 TB 流量 17.92 元、硬盘单价 0.875 元,后者每 TB 流量 20.48 元、硬盘单价 0.133 元。 需要存大量文件的选后者,要精打细算选前者。超额重置价两条都是 500 元,折合约 12.80 元/TB,撞顶也不至于失控。
第三类:跑游戏服、实时语音、对延迟敏感的业务。 你的第一诉求不是大流量,是端口稳定和抖动可控,所以不要单纯按流量额度挑大额档。 正确动作是:端口取 2000Mbps 这一档,流量额度按正常用量加 30% 余量,然后把第四节的第三、第五、第六条数字问清楚并实测。这类场景在第七节场景四的边界上,靠机器扛不住大攻击,必须确认清洗点在上游。
第四类:已经确认会被持续定向攻击,或者业务本身就是攻击目标。 不要指望单机额度,也不要指望换 IP 就能一直换下去——第八节动作四说的那种 10 Gbps 级别攻击,第四节的验收标准里没有一条是单机能过的。 正确动作是把预算从「更大内存、更多硬盘」转到「带上游清洗的方案」上,同时按第七节场景三准备 IP 池作为兜底。
四类人的共同动作是同一句话:先月付跑一个月,把第四节那六个数字全部实测一遍,再决定要不要转年付。 你需要的是能验证的数字,不是一个标着「高防」的标题。

喜欢
高兴
鬼脸
呵呵
无聊
伤心