[ PROMPT_NODE_24070 ]
Ddos 常见陷阱
[ SKILL_DOCUMENTATION ]
# DDoS 常见问题 (Gotchas)
## 常见错误
### "误报拦截了合法流量"
**原因**: 敏感度过高、操作错误或缺少例外
**解决方案**:
1. 降低特定规则/类别的敏感度
2. 先使用 `log` 操作进行验证(企业高级版)
3. 使用自定义表达式添加例外(例如,IP 白名单)
4. 通过 GraphQL Analytics API 查询标记的请求以识别模式
### "攻击穿透"
**原因**: 敏感度过低或操作错误
**解决方案**: 提高到 `default` 敏感度并使用 `block` 操作:
typescript
const config = {
rules: [{
expression: "true",
action: "execute",
action_parameters: { id: managedRulesetId, overrides: { sensitivity_level: "default", action: "block" } },
}],
};
### "自适应规则不工作"
**原因**: 流量历史不足(需要 7 天)
**解决方案**: 等待基准建立,检查仪表板上的自适应规则状态
### "区域覆盖被忽略"
**原因**: 账户覆盖与区域覆盖冲突
**解决方案**: 在区域级别配置,或移除区域覆盖以使用账户级别设置
### "日志操作不可用"
**原因**: 未使用企业高级版 DDoS 计划
**解决方案**: 使用低敏感度的 `managed_challenge` 进行测试
### "超出规则限制"
**原因**: 覆盖规则过多(免费/专业/商业版:1,企业高级版:10)
**解决方案**: 使用 `and`/`or` 在单个表达式中合并条件
### "无法覆盖规则"
**原因**: 规则为只读
**解决方案**: 检查 API 响应中的只读指示器,使用其他规则
### "无法禁用 DDoS 防护"
**原因**: DDoS 托管规则集无法完全禁用(全天候防护)
**解决方案**: 设置 `sensitivity_level: "eoff"` 以实现最小缓解
### "表达式不被允许"
**原因**: 自定义表达式需要企业高级版计划
**解决方案**: 对所有流量使用 `expression: "true"`,或升级计划
### "未找到托管规则集"
**原因**: 区域/账户没有 DDoS 托管规则集,或阶段错误
**解决方案**: 通过 `client.rulesets.list()` 验证规则集是否存在,检查阶段名称 (`ddos_l7` 或 `ddos_l4`)
## API 错误代码
| 错误代码 | 消息 | 原因 | 解决方案 |
|------------|---------|-------|----------|
| 10000 | 身份验证错误 | API 令牌无效/缺失 | 检查令牌是否具有 DDoS 权限 |
| 81000 | 规则集验证失败 | 规则结构无效 | 验证 `action_parameters.id` 是否为托管规则集 |