给中国大陆访问检测做预算,关键不是只数有多少域名,而是同时明确检测方式、节点数量和执行频率。100 个域名每天检查一次,与每小时检查一次,计划用量相差 24 倍;GFW 全量检测再增加网络节点,还会改变每轮数量。把这些变量写清楚,才能比较方案,而不是等账单出来后猜费用来自哪里。
本指南使用截至 2026 年 10 月 11 日核对的公开单价,说明 DNS 污染与 GFW 全量检测的预算方法。示例是纯算术模拟,不是真实账户流水或检测实测;价格可能调整,开始使用前请查看当前价格页及实际估价。
1. 先选检测范围,再选 API 或 Console
如果你首先要回答“这些域名是否报告 DNS 污染”,可以从 DNS 污染检测开始。它按域名计量,不需要用户选择节点。如果还要观察 HTTP Host、TLS SNI 两个维度及汇总结果,选择 GFW 全量检测,并选择与你的客户网络相关的节点。GFW 全量包含这三个维度,不是完整浏览器访问、业务交易验证或全部七种检测方法。
Console 适合由平台持续安排检测、查看历史和处理告警;API v2 适合批量检查,并由你自己的程序安排调用、查询和保存结果。API 的单价与 Console 不同,但不要仅比较每次价格:采用 API 时,也需要自行管理调度、幂等请求、结果保存和后续处置。具体范围见检测方式及GFW 全量检测指南。
2. 两类检测的计费单位与当前单价
| 检测方式 | API v2 | Console |
|---|---|---|
| DNS 污染检测 | $0.0075/域名/次 | $0.0100/域名/轮次 |
| GFW 全量检测 | $0.0075/域名/节点/次 | $0.0100/域名/节点/轮次 |
DNS 污染检测没有额外的用户节点乘数。GFW 全量使用组合检测自身的单价,按域名和实际节点数量计量;不要因为结果包含三个分项,再把费用乘三。单独创建其他检测方法时,应使用该方法自己的价格,不能套用这里的组合价格。
检测价格和账户余额以美元计,不是人民币,也不是一个未说明价值的“积分”。API 与 Console 的当前价格分别查看,文章中的数值不是长期报价。
3. 用同一公式计算每天与每月预算
设域名数为 D、每天计划检测轮次为 R、GFW 实际节点数为 N、对应渠道和方法的单价为 P:
- DNS 每天计划费用:D × R × P。
- GFW 全量每天计划费用:D × N × R × P。
- 30 天计划费用:每天计划费用 × 30。
按固定间隔全天运行时,每天计划轮次可以用 1440 ÷ 检查间隔(分钟)计算。下面假设有两项独立任务:100 个域名每 60 分钟检查一次 DNS 污染;另有 20 个域名在 3 个实际节点上每 720 分钟进行一次 GFW 全量检测。两项任务都连续运行 30 天,单价不变,所有计划结果均被接受,没有额外复查。
| 模拟任务 | 每天计划数量 | API 每天/30 天 | Console 每天/30 天 |
|---|---|---|---|
| 100 域名 DNS,每小时一次 | 100 × 24 = 2400 域名次 | $18.00/$540.00 | $24.00/$720.00 |
| 20 域名 GFW,3 节点,每天两轮 | 20 × 3 × 2 = 120 域名节点次 | $0.90/$27.00 | $1.20/$36.00 |
| 两项任务费用合计 | 分别按各自方法计量 | $18.90/$567.00 | $25.20/$756.00 |
这不是同时使用两种渠道的合计账单。API 一列表示全部通过 API 安排,Console 一列表示全部由 Console 监控。两项任务如果包含相同域名,也仍然是两种独立检测,预算不能自动合并。实际费用以被接受的结果数量和本次检测记录的价格快照为准;暂停、错误、追加检查或配置变化都会使实际用量与模拟不同。
4. 通过分层频率与节点选择控制计划用量
先把域名分成核心入口、重要业务域名与低频观察对象,再为每组安排合理频率。例如,若上面的 100 域名 DNS 任务改为每 120 分钟一次,每天轮次从 24 降到 12,Console 计划费用变为每天 $12.00、30 天 $360.00;保留 GFW 任务后,两项合计每天 $13.20、30 天 $396.00。这是减少计划用量的结果,同时也降低了观察频率,不是免费获得相同覆盖。
GFW 节点应围绕客户所在地区和运营商选择。一个父节点代码或 "all" 可能展开为多个当前可用子节点;界面选了三个标签,不一定就是三个实际节点。API 创建前核对估价中的 planned_node_count,节点范围变更后重新估价,不把“所有节点”当成固定数量。
提交前还应去重。统一大小写、核对国际化域名的规范化身份,并把不同业务系统汇总到一份目标清单;规范化后的重复目标仍可能成为独立任务。跨批次、跨 Console 任务或人为复查的重复检测也要计入预算。反过来,不要把不同子域名误删成同一个目标。
5. 区分估价、预留与有效结果结算
API v2 先用最终检测参数调用 /task/estimate,审核 unit_price、currency、planned_target_count、planned_node_count、planned_quantity、estimate_cost 和 available_balance,再创建批次。估价不是创建,创建成功也不是检测完成。目标、节点或方法改变后,应重新估价;节点可用性和价格也可能在估价与创建之间变化。
API 创建批次时校验可用余额并预留待结算费用,记录创建时的价格快照;Console 使用对应监控轮次记录的快照。有效结果被接受后按该快照计费,未消费的预留部分释放。账户余额、预留金额与可用余额表达不同状态:有余额并不代表这笔余额全部可以用于新任务。Console 的持续监控也要为后续轮次保留充足余额。
按 API v2 公开契约,超时、节点错误以及因余额不足而未接受的结果不收费,但“目标异常”不等于“检测无效”。有效结果报告 DNS 污染、HTTP Host reset 或 TLS SNI 异常,仍可能是完成并计费的检测;不能把正常判定作为付费前提。合法 HTTP 响应也不必是 200,更不代表完整网站或业务操作成功。判定为 null 也不能直接用来推断费用,请分别查看结果语义与对应批次或监控轮次的计费记录。
6. 幂等重试与查询不会重复产生检测费
每个逻辑批次创建前生成并保存一个 Idempotency-Key,同时保存完整请求体。创建响应丢失或超时、受理状态不明时,同一账户用同一个 Key 和相同请求重试,会返回原批次,不会重复预留或重复扣费。相同 Key 改成不同请求会返回 40901。键随批次数据保留 24 小时,过期后再用该键会被视为新请求,不能当作永久去重机制。
取得 batch_id 后查询原批次,而不是为了“看看有没有完成”再创建一次。重复结果报告、查询和读取分页不会重复收取该次检测费;这不等于所有其他服务、重新创建的批次或额外复查都免费。保存原始金额字符串,程序记账使用十进制类型,不用二进制浮点数累计账务。
完整参数和错误处理见API 文档;需要接入流程与示例时,参阅DNS 与 GFW 批量 API 指南。不要把账户密钥写进文章、浏览器脚本或公开日志。
7. 单任务与单批次上限不是总用量上限
Console 目前每个任务最多配置 200 个域名,API v2 每次预估或创建提交 1–1000 个目标。这是单任务、单请求的范围,不是所有任务相加的总数限制,也不是购买后附送的免费额度。拆成更多任务或批次不会自动减少相同检测计划的数量。
超过单次范围时,分批整理目标并为每个逻辑批次保存独立幂等键和批次 ID;预算仍按全部目标、实际节点和轮次相加。API v1 是同步单域名接口,不能把它当作一个批量请求来计算。Console 频率按当前编辑页面的选项配置,不把价格估算器中的示例当成新的产品能力。
8. 创建前与运行后的预算核对清单
- 列出每组域名及业务目的,确认使用 DNS 污染还是 GFW 全量;明确是否有意对同一域名做两种检查。
- 记录唯一目标数、实际节点数、检查间隔和计划运行天数,按当前渠道单价计算;额外复查单列,不假设已包含。
- 在价格页核对 USD 单价,API 用最终参数重新估价,检查计划数量与可用余额;需要大规模持续运行时,为下一轮预留资金余量。
- 创建后保存配置、估价、批次 ID 和幂等键的关联,不保存或输出密钥。API 在到期前保存需要的结果和计费信息。
- 运行一段时间后,按同一日期范围和方法对比计划数量、已接受结果数量与实际费用。发现差异时先查重复目标、节点展开、临时复查、暂停和未接受结果,不仅看域名总数。
- 变更频率、节点或目标前重新计算,并记录变更时间。需要持续任务时从Console 使用入口开始,自动化接入则使用公开 API 文档。
好的预算既能解释花费,也能解释覆盖:哪些域名、哪些网络、多久观察一次。先把这些范围与结果保存方式确定下来,再逐步调整用量,比用一个不说明检测范围的“每月多少钱”更有操作价值。