环境能启动,不等于这个身份是干净的。配置里一个小小的矛盾——UA 说是 Windows 但内核报的是另一套平台特征、代理出口在另一个时区、两个环境用了同一个指纹种子——都可能让账号在目标站点上被判为关联。客户端为此提供了两个工具:指纹质检查配置是否自洽,身份体检查运行结果是否泄漏或撞车。
两个工具的分工
| 工具 | 检查时机 | 回答的问题 |
|---|---|---|
| 指纹质检 | 环境启动前后都可以跑,不需要真实访问站点 | 这份配置本身有没有矛盾和缺失 |
| 身份体检 | 环境运行中,需要在环境内打开页面实测 | 跑起来之后,真实暴露出来的身份是否一致、是否重复 |
体检会驱动环境内页面做实测,因此必须在环境运行时执行,并且依赖页面能正常加载。质检是静态检查,环境没启动也能给出大部分结论,适合在批量启动前先过一遍。
指纹质检:配置是否自洽
质检逐项比对环境配置,常见检查项包括:
- UA 与伪装平台:UA 里的平台标识与伪装平台不一致属于强指纹矛盾,会让站点直接判定环境异常;
- UA-CH 客户端提示:缺失或与 UA 不匹配时,现代站点更容易发现矛盾;
- WebGL 渲染器与 Canvas:渲染器不可用或与平台明显不匹配,会被部分站点标记为可疑环境;
- 屏幕参数:宽度、高度、色深出现 0 值等异常配置;
- 时区配置:是否填了合法的 IANA 时区,以及环境内实测是否真的生效;
- 代理配置与出口时区:主机端口是否完整、出口时区与环境的时区设置是否一致;
- 内核版本:指定的内核是否真实存在于本机,否则启动会回退到最新版;
- 启动参数与脚本引用:附加参数是否合理、引用的脚本是否还存在。
结果通常分三档:通过、提醒、失败。提醒项不一定会立刻出问题,但在同一个环境里堆得越多,被识别为异常的概率越高;失败项则建议修好再启动,尤其是 UA 平台矛盾与内核缺失这两类。
质检发现「代理出口时区与环境时区不一致」时,先确认代理地区,再决定改时区还是换代理。只改时区不改出口,等于把矛盾从一处挪到另一处。
身份体检:运行结果是否干净
体检在运行中的环境里做实测,主要看四件事:
- 代理出口 IP 与地区:读取实际出口,确认与配置一致。未配置代理时出口就是本机 IP,此时不存在代理不一致问题,但也就失去了地区隔离;
- 出口时区与语言:出口地区、环境时区、浏览器语言三者互相印证,任何一项落后都会形成可被比对的信号;
- WebRTC 泄漏:检查是否有绕过代理的真实网络路径暴露出来,这是最容易被忽视的泄漏来源;
- Canvas 画布签名与指纹种子唯一性:确认渲染签名没有异常,且该环境的指纹种子在全库范围内唯一——种子重复意味着两个环境本质上是同一个身份。
体检记录会保留「最近一次检测」的时间与结果。代理更换、环境迁移、长时间未启动之后,都建议补检一次,而不是沿用上一次的结论。
批量守护:把检查固化成流程
环境一多,逐个点检不现实。批量守护支持对选中的一批环境统一执行质检、状态快照与配置分发:
- 批量质检:一次拿到整批环境的问题清单,按严重程度排序处理;
- 批量快照:在改动之前留下状态快照,出问题可以回滚;
- 批量分发:把统一的配置下发到多个环境,避免手工逐条修改导致配置漂移。
建议的顺序是:先快照,再分发,最后质检。这样即使分发引入了新问题,也能回到分发前的状态。
什么时候必须跑
- 新建或克隆环境后,第一次启动之前;
- 更换代理、调整时区或语言设置之后;
- 批量启动前,对整批环境做一次守护;
- 账号出现频繁验证、登录异常或关联提示时,先体检再决定是否换身份。
常见问题
质检全部通过,账号还是被关联
质检覆盖的是配置矛盾,运营行为与内容层面的关联(同一支付方式、同样的操作节奏、重复的素材)不在检查范围内。要把身份和环境、代理、行为三件事一起看。
体检提示环境内页面不可用
通常是环境还没真正启动完成,或目标页面被拦。等页面加载完成后再重试;反复失败时先确认代理是否可用。
指纹种子可以重新生成吗
可以,但要求环境处于停止且未锁定状态。重新生成种子会改变整套指纹数据,等于换了一个新身份,不建议在账号已有稳定登录历史时随意重生成。
体检结果会保存多久
客户端保留最近一次检测的时间与结论,用于快速判断是否需要补检。完整的历史结论不做长期存档,需要留证时请自行导出。