网站突然打不开,监控里入站带宽冲到几十个 G,服务器日志里全是陌生 IP,多半是遭遇了 DDoS 攻击。这种流量足以压垮普通服务器或小带宽线路,自建机房很难单独扛住。云上的流量清洗就是为这种情况准备的。

阿里云清洗怎么工作
清洗的思路很直接:攻击流量先送到一套过滤系统,识别后丢掉,正常请求再转回你的服务器。阿里云的这项能力通过 DDoS 防护产品提供,常见的有基础防护、原生防护和高防 IP 几档。
对业务方来说,有两件事最实在。攻击流量不再直接压到自己的服务器上。清洗节点分布在云厂商的大规模网络里,单台服务器的带宽不再决定能扛多大的攻击。
一次清洗经过哪些环节
以常见的引流方式为例,一次清洗大致经过下面四步:
- 引流:开启防护后,业务的访问入口会切到清洗中心。域名解析指向清洗节点,或者公网 IP 通过高防实例对外提供服务,请求先到清洗节点,不直接打到源站。
- 检测:系统根据协议特征、请求频率和来源分布判断是否异常,常见的有 SYN 洪泛、UDP 反射和 HTTP 慢速连接。
- 清洗:判定为攻击的流量被丢弃或限速,正常请求继续放行。
- 回注:干净流量经专线或加密隧道回到源站。用户通常只会感觉访问速度有轻微变化。
回注这一步最容易出问题。源站 IP 如果没有隔离好,攻击者可以绕过清洗中心直接访问。所以配置时要让源站只接受清洗节点的回源地址,其他来源一律拒绝。
几档产品怎么选
阿里云的 DDoS 防护按防护能力和计费方式分档。选的时候主要看三件事:可能的攻击规模、业务对延迟的敏感程度,以及预算。
- 基础防护:免费提供,能挡住规模较小的常见攻击。适合个人站点或测试环境。业务一旦开始有收入,就该考虑升级。
- 原生防护:按防护规模和业务带宽计费,适合访问量稳定、希望日常就有基础防护的中小型业务。
- 高防 IP:防护峰值更高,适合电商、游戏、金融这类被攻击后损失大的业务。购买前要确认它和现有域名、负载均衡怎么对接,否则切换时容易卡住。
防护峰值、计费规则和地域限制经常调整。下单前请以阿里云官网和控制台的当前说明为准,这里的分档只说明大致思路。
开通和切换的步骤
控制台的按钮位置会随改版变化,下面只列顺序和要点,实际操作以页面为准。
- 先确认对象。核对要防护的是哪个公网 IP 或哪个域名,并确认这些资源属于当前账号和地域。对象选错了,防护等于没开。
- 提前调短 DNS 缓存时间。切换前一两天把域名解析的 TTL 调短。否则旧记录在各地缓存里可能持续好几个小时,仍有一部分流量直接打到源站。切换稳定后再改回原值。
- 配置清洗与回源。在防护实例中填入源站地址,设置回源方式,再把源站安全组改为只允许清洗节点的回源地址访问 80 和 443 端口。这一步要先做,再切解析。
- 切换解析并验证。把域名解析指向防护入口,尽量选流量较低的时段操作。然后从外部网络分别访问首页、登录和下单接口,确认页面、接口和支付回调都正常。
- 留好回切方案。写下回切到原解析的步骤和负责人。如果清洗策略误伤了正常请求,回切同样受 DNS 缓存影响,所以要尽早决定是否回切,不要等问题扩大。
一个示意案例
下面是一个用来说明流程的示意场景。其中的数字是为了讲清楚步骤而设定的,不代表任何真实客户的数据。
设想一个中型电商网站在大促前一周,晚上经常页面超时。运维人员起初怀疑数据库慢查询,花了两天才发现问题在流量层面:入站流量两小时内从平时的 300 Mbps 涨到 4 Gbps,大部分是来自多个地区的 UDP 请求,源地址很分散。
处理时大致做了这几件事:
- 把域名切换到已开通高防 IP 的实例上,并把源站 IP 从公网解析记录中移除。
- 对 UDP 请求设置速率阈值,超出正常业务模式的部分直接丢弃。
- 对 HTTP 层的频繁请求启用访问频率限制,同时放行搜索和下单接口。
- 源站安全组只允许清洗节点的回源地址访问 80 和 443 端口。
切换后的第一个晚上,页面超时率从约 12% 降到 1% 以下,源站 CPU 也回到平时水平。团队又观察了两周,发现攻击集中在凌晨出现,于是把阈值改成按时段调整。
这个例子里,阈值是最难定的部分。设得太低,正常用户会被误拦。设得太高,攻击流量会穿过去。阈值要靠平时的流量数据来定,不能凭感觉。
配置时的几个提醒
- 先记录正常流量。没有攻击时,记下访问量、请求类型和主要来源地区,阈值就以这些数字为依据。
- 源站 IP 要藏好。历史 DNS 记录、邮件头、子域名和部分第三方服务都可能暴露源站 IP。上线清洗前,逐一排查这些地方。
- 白名单别漏。搜索引擎爬虫、支付回调、监控探针这类来源要提前加入白名单,否则清洗规则可能把它们当成异常流量拦下。
- 攻击结束后复盘日志。检查清洗日志和源站日志,看误杀和漏过各有多少,再调整策略。
小结
阿里云清洗把攻击流量挡在源站之外,让正常请求回到业务服务器。选档时先估计攻击规模和损失。开通时先锁定防护对象、调短 DNS 缓存、配好回源白名单,再切换解析。阈值和白名单要建立在真实流量数据上,源站 IP 也要一直保密。