Watch-IP

VPN 检测的局限:一个网络标记能告诉您什么

Watch-IP 给出的 VPN、Tor 或数据中心标记,是与一份维护中的名单进行的匹配,而不是实时的行为分析——它说明的是,截至名单最近一次刷新时,该连接的 IP 与该类别下的某个已知网络相匹配。false 表示当前加载的名单中没有匹配项,而不是经过验证的干净连接,并且 IPv4 与 IPv6 之间的覆盖范围存在实质性差异。

基于名单的检测如何运作

Watch-IP 会将发起连接的 IPv4 或 IPv6 地址,与另行维护的 Tor 出口节点、商业 VPN 提供商、数据中心/托管网络、已知威胁地址段或 ASN,以及国家制裁网络运营商名单分别进行比对。命中会将对应字段(isTor、isVpn、isDatacenter、isThreat、isSanctionedNetwork)置为 true。这只对出现在 Watch-IP 已加载名单中的网络有效——无论某个 VPN 或代理服务在技术上做得多好,只要不在任何名单中,就无法被检测到。

false、缺省与 true 含义各不相同

缺省的 security 对象,意味着您的方案根本不包含这项数据——而不是表示该连接已被检查并判定为干净。已包含字段上的 false 值,意味着当前加载的名单中没有匹配项,这是一种比“安全”弱得多的说法:名单覆盖范围天然是不完整的,一个刚出现的小型 VPN 提供商可能尚未被收录。切勿将未经评估或值为 false 的结果,展示为“干净”“安全”或“已验证”——这些措辞所声称的确定性,超出了一次名单匹配所能支撑的范围。

IPv6 存在真实的覆盖缺口

IPv4 连接会与全部五个类别进行比对。IPv6 连接会与除 Tor 之外的所有类别进行比对——目前没有免费的 IPv6 Tor 出口名单来源,因此无论某个 IPv6 连接是否真的是 Tor 出口,isTor 始终返回 false。如果您的审查逻辑依据 isTor 进行分支判断,那么 IPv6 访问者得到的将是一种在结构上就更弱的检查,而不仅仅是不同的结果。

这些名单未能覆盖的内容

住宅代理服务——即经由真实消费者 IP 地址而非数据中心转发流量——是一个比商业 VPN 或 Tor 检测难度大得多的问题,当前的名单并未覆盖它们。任意 IP 查询端点(GET/POST /v1/lookup)完全不会返回该数据块;这是与发起连接的浏览器绑定的 GET /v1/geo 能力,无法针对已存储或所提供的 IP 单独请求。

一种审慎的审查策略

请将 isVpn 或 isDatacenter 与账户历史及其他信号一起,作为人工审查队列的一项输入——而不是自动拦截的唯一依据。出于隐私偏好、企业网络或差旅等正当理由使用 VPN 与共享网络的合法用户大有人在,因此仅凭单一标记就直接拦截的策略,会拒绝真实客户。将一个网络标记与同一事件中的第二个信号(例如一次一次性邮箱匹配)结合使用,比单独依赖任何一个信号都更站得住脚,也更适合作为转入审查的依据。

本文并未声称的内容

本文描述的是 Watch-IP 自身基于名单的实现,而不是关于整个行业 VPN 检测能力上限的一般性论断。Watch-IP 不检测住宅代理,不验证身份,其名单也是按计划刷新(存储在我们自有的存储中),而不是持续实时更新的——一次缓慢或失败的刷新会降级为陈旧或空的数据,读起来与“没有匹配”别无二致。

参考来源

由 Watch-IP 编辑团队撰写(2026-09-06)。已参照 apps/api/src/lib/threat-store.ts 与 apps/api/src/lib/threat-sources.ts 完成审校。

相关页面