WWW.YOUINFO.SITE
标签聚合 真实

/tag/真实

LinuxDo 最新话题 · 2026-06-11 17:22:41+08:00 · tech

由于测试的模型越积越多了,表格会删除一些同厂商的旧模型,你可以在之前的评测帖子里找到它们的成绩。 项目 这是一个 Unity C# 项目,我进行测试的是一份皮肤系统需求案,我已经做了好预制体,而模型需要编写代码。 本轮与上两轮评测的项目和环境都完全一致: 第一轮 … 上一轮 模型来源 Claude 系列模型: 官方 API Mimo V2.5 系列模型: 官方 Token Plan Hy3 Preview: 官方 API Qwen3.7 系列模型: 官方 API Minimax M3: 官方 API Nex-N2-Pro: OpenRouter Free API Nemotron 3 Ultra: OpenRouter Free API 速度 排名 模型 时间(分钟) 备注 1 Grok 4.20 0309 Reasoning 3 2 Step-3.5-Flash 6 3 Mimo V2 Omni 7 4 Doubao-Seed-2.0-Lite 7 5 Doubao-Seed-2.0-Pro 9 6 Doubao-Seed-2.0-Code 9 7 Qwen3-Coder-Next 9 8 Claude Sonnet 4.6(high) 9 9 Qwen3.5-Plus 9 10 GLM-5 Turbo 10 11 Minimax M2.7 10 Highspeed 版本 12 Qwen3.5-Flash 10 13 Gemini 3 Pro 11 14 Hy3 Preview 13 15 GPT-5.5(low) 13 16 GPT-5.5(medium) 15 17 Mimo V2 Pro 15 18 DeepSeek V4 Flash 17 19 Qwen3.7-Plus 17 20 Qwen3.7-Max 18 21 GPT-5.5(high) 19 22 Claude-Opus-4.7(Max) 20 23 GLM-5 20 24 DeepSeek V4 Pro 21 25 Gemini 3 Flash 22 26 Claude-Fable-5(xhigh) 23 27 Mimo V2.5 24 28 KAT-Coder-Pro V2 24 29 Minimax M3 25 30 Claude-Opus-4.6(Max) 26 31 GPT-5.5(xhigh) 28 32 Gemini 3.1 Pro(high) 29 受 429 请求频率限制影响 33 Claude-Opus-4.8(Max) 33 34 Kimi K2.6 33 35 Qwen3.5 9B GGUF Q4_K_XL 35 MBP M4 Pro 48GB 本地部署 36 Qwen3.5 35B A3B GGUF Q4_K_XL 36 MBP M4 Pro 48GB 本地部署 37 Mimo V2.5 Pro 37 令牌数 Claude-Fable-5(xhigh): 7.1M Claude-Opus-4.8(Max): 13M Mimo V2.5 Pro: 未知 Mimo V2.5: 未知 Hy3 Preview: 1.4M Qwen3.7-Max: 4.6M Qwen3.7-Plus: 4.2M Minimax M3: 未知 Nex-N2-Pro: 退赛 Nemotron 3 Ultra: 退赛 代码行数 Claude-Fable-5(xhigh): +1520, -7 Claude-Opus-4.8(Max): +1347, -22 Mimo V2.5 Pro: +1682, -14 Mimo V2.5: +1270, -8 Hy3 Preview: +1246, -8 Qwen3.7-Max: +1529, -6 Qwen3.7-Plus: +1532, -7 Minimax M3: +2284, -137 Nex-N2-Pro: 退赛 Nemotron 3 Ultra: 退赛 完成度 Claude-Fable-5(xhigh) 审查结论: 完成度非常高,仅有一个细节问题。 详细 (点击了解更多详细信息) Claude-Opus-4.8(Max) 审查结论: 完成度很高,虽然存在常见错误,但在最后列出了该处理需要确认;另有一个细微实现不一致。 详细 (点击了解更多详细信息) Mimo V2.5 Pro 审查结论: 存在常见错误,有几处与需求/线上实现不一致的功能缺失。 详细 (点击了解更多详细信息) Mimo V2.5 审查结论: 无法编译,且存在严重的功能错误和与需求/线上实现不一致的功能缺失。 详细 (点击了解更多详细信息) Hy3 Preview 审查结论: 无法编译,且存在严重的功能错误和与需求/线上实现不一致的功能缺失。 详细 (点击了解更多详细信息) Qwen3.7-Max 审查结论: 较多功能错误和与需求/线上实现不一致的功能缺失。 详细 (点击了解更多详细信息) Qwen3.7-Plus 审查结论: 无法编译,且存在严重的功能错误和与需求/线上实现不一致的功能缺失。 详细 (点击了解更多详细信息) Minimax M3 审查结论: 存在部分功能错误和与需求/线上实现不一致的功能缺失;但在最后特别说明了协议枚举值调整的破坏性和服务器需要同步更新枚举值这一点,显示了对问题的理解。 详细 (点击了解更多详细信息) 最终总结 排名 模型/层级 说明 Tier 0 该等级的模型实现与线上基线高度一致。 1 Claude-Fable-5 2 GPT 5.5(xhigh) Tier 1 该等级的模型的代码正确完整且可编译,仅少量边界问题或轻微不一致。 3 Claude Opus 4.8(Max) 4 GPT 5.5(high) 5 Kimi K2.6 6 GPT 5.5(low) 7 GPT 5.5(medium) 8 Claude Opus 4.6(Max) 9 Claude Sonnet 4.5 Tier 2 该等级的模型的代码至少可编译或仅极少量的语法错误,但是存在明显功能错误、遗漏或与需求/线上不一致。 10 GLM 5.1 11 Minimax M3 12 Mimo V2.5 Pro 13 GLM 5 14 Kimi K2.5 15 Claude Sonnet 4.6(high) 16 Qwen3.7-Max 17 Qwen3.5-Plus 18 KAT-Coder-Pro V2 19 DeepSeek V4 Pro(max) Tier 3 该等级的模型的问题很多且无法编译,或者存在不少幻觉。 20 DeepSeek V4 Flash(max) 21 Claude Opus 4.7(Max) 22 Qwen3.7-Plus 23 Mimo V2.5 24 Hy3 Preview 25 GLM 5 Turbo 26 Gemini 3.1 Pro(high) 27 Mimo V2 Pro 28 Mimo V2 Omni 29 Minimax M2.7 30 Step-3.5-Flash 31 Qwen3-Coder-Next 32 Gemini 3 Pro 33 Gemini 3 Flash 34 Doubao-Seed-2.0-Code 35 Doubao-Seed-2.0-Pro 36 Doubao-Seed-2.0-Lite 37 Qwen3.5-Flash 38 Qwen3.5 35B A3B GGUF Q4_K_XL 39 Qwen3.5 9B GGUF Q4_K_XL 40 Grok 4.20 0309 Reasoning Claude-Fable-5(xhigh): 速度超过 Claude-Opus-4.6(max) 与 GPT-5.5(xhigh) 完成度非常高与 GPT-5.5(xhigh) 相当,仅存在一个体验细节问题 终于 Claude 站起来了,不仅是 Claude 的首个 T0 模型,且接替 GPT-5.5 成为榜首。 当然我要重申,它们都能比较完整地做完这个需求,能力差不多,所以是按照模型发布日期来排名的(虽然它其实比 GPT-5.5 要快)。 我已经有点怀疑是否应该将评审员从 GPT-5.5 换为 Claude-Fable-5 了。 Claude-Fable-5 在做完需求后还有一段 “需向你确认的事项”,对某些奇怪的实现细节(比如皮肤配置枚举 值与服务器枚举值不同、时间戳单位猜测)还有自己不确定的地方进行了汇总,给人的感觉是对于这个需求它游刃有余, 一切尽在掌握;需求未说明自己决定的地方都放在最后列出以进行核对,这是比较难得的。 但是 Claude-Fable-5 的安全方面确实非常敏感,测完之后,正好我在做的 VS Code 扩展有一个大需求, 使用 AI 完成后怕遗漏会再用 AI 审查一遍,但 GPT-5.5 会经典地出现自己审查自己永远有问题的情况, 于是我想使用 Fable-5 审查一下,但是由于存在类似反代的功能,Fable-5 思考一半后直接拒绝了, 甚至我还没有要求它编写代码,而 GPT-5.5 对此是完全没有问题的。 后续我会尝试使用 Claude-Fable-5 替代 GPT-5.5 作为我的主力模型,看看它是否真的比 GPT-5.5 更好。 Claude-Opus-4.8 的速度几乎和我之前测试本地部署的模型一样了,对比 Claude-Fable-5,慢了接近 10 分钟, 需要注意的还有消耗的令牌数,Claude-Opus-4.8 消耗的令牌数是 Claude-Fable-5 的将近两倍, 一来一回 Claude-Fable-5 还真像是 Claude-Opus-5 了,消耗的令牌数低,所以实际价格差距不大。 Claude-Opus-4.8 的完成度有了明显提升,之前一直犯的系统注册和界面入口的常见问题都没有了, 它也和 Claude-Fable-5 一样在最后列出了需要确认的事项,虽然枚举值的处理是错了,但它留下了这样的内容: 皮肤类型枚举:以 skinList 表 Type 字段为准分类(1/2/3/4),未采用 skin.proto 中数值不一致的 SkinType(0/1/2/3)。 说明它知道这里需要判断如何处理,但认为采用配置表的值是合理的,而没有编写相互转换的函数。 首先这样的处理在我看来是完全不合理的,因为虽然留下了说明,但编写了错误的代码,没有对比就没有差距, 反观 Fable-5 既写了转换函数,也留下了这样的说明: 皮肤类型编号不一致:协议枚举 SkinType(0=神针 1=称号 2=头像框 3=气泡)与 skinList 表(1=神针 2=头像框 3=气泡 4=称号)顺序、偏移都不同。我已把转换收口在 SkinNetMgr.ToProtoSkinType/ToCfgSkinType,内部数据一律以配置表类型为准(按 skinId 反查表),仅 C2S_SKIN_LIST.skinType 请求参数按协议枚举发送。请与服务器确认线上实际使用哪套编号,若用表编号只需改这两个函数。 Fable-5 给到了一个完全无可挑剔的答卷。 Mimo V2.5 Pro 的速度非常慢,甚至比我之前测试本地部署的模型还慢,但是完成度相对上个版本有了明显提升, 虽然还存在那两个常见错误, Mimo V2.5 的速度比上代 V2 Pro 慢,与 Claude-Fable-5 的用时几乎一样,首先它没有犯那两个常见错误, 但是无法编译,未实现、功能错误也非常多,属于 T3 级别。 Hy3 Preview 出现编译错误,位于 T3。 Qwen3.7 系列模型与上一代的差距未拉开很大差距,位于 T2 和 T3,Qwen3.7-Plus 出现编译错误,相对上代 3.5 可能有退步。 Nex-N2-Pro 思考内容发生循环,遂中止了对话,遗憾退赛: maybe "SkinDataMgr GetSkinPreviewPath(int skinId, int type, bool worldPreview = false)". Need "SkinDataMgr GetSkinPreviewPathForType". Need "SkinDataMgr GetSkinPreviewPathForType". Need "SkinDataMgr GetSkinPreviewPathForType". Need "SkinDataMgr GetSkinPreviewPathForType". ... Nemotron 3 Ultra 发生上游错误,无法继续,遗憾退赛。 Minimax M3 下出神之一手,它应该是发现了配置枚举值与服务器枚举值不一致的问题,对此它的判断是, **一定是后端写错了!**于是它直接修改了 proto 的定义,把服务器枚举改成了一致的值! 惊为天人,史无前例,这是首次有模型直接修改了服务器协议定义的内容。 当然这完全是不符合直觉的操作,但是 Minimax M3 在最后特别说明了这一点,代表着它与 Opus 4.8 一样, 都理解了只是处理不同: > **注意事项** > - 协议中 `SkinType` 枚举值的调整属于破坏性变更,服务器需要同步更新枚举值(1/2/3/4)。 > - `C2S_SKIN_LIST.totalAttrs` 字段在协议注释中标注为"所有已拥有皮肤的属性总和",目前按各类型分别存储并在客户端聚合;如服务器已按"全部类型"聚合,可直接读取 `_totalAttrs`。 除此之外,M3 犯了未设置页签文案的低级错误,总体而言完成度与 Mimo V2.5 Pro 相当,位于 T2。 最后总结 Claude Fable 5 表现非常亮眼,我会替换 GPT-5.5 作为主力模型使用一段时间,但是需要注意该模型非常敏感。 Claude Opus 4.8 终于变得像 Opus 了,有明显提升,但是 Fable 5 的价格差不多(因为仅有一半令牌消耗量),速度还更快,效果也更好,感觉并非 Fable,而是 Opus 5,有了 Fable 5,Opus 4.8 存在的意义就不太大了。 Mimo V2.5 Pro 相对上代进步明显! Minimax M3 相对上代进步明显! 其余模型则如测了。 本次继续使用自己开发的开源 VS Code 插件 Unify Chat Provider 以实现在 Copilot 中使用以上模型。 6 个帖子 - 6 位参与者 阅读完整话题

LinuxDo 最新话题 · 2026-06-10 11:31:40+08:00 · tech

在ai刚出的时候,那会prompt工程盛行,用AI做过一些自媒体的图文方式的文章分享,总是执迷于调好提示词,执迷于调风格,模仿风格,然后将文章直接发布。 这种模式下时间长了,感觉自己在一些表达和见解上都麻木了,时间长了好像“真实的自己”慢慢的隐藏了。 最近反而习惯手敲,然后将手敲的内容收集到搭建的知识库中,做个采集自己的思考和记录一些学习的东西,感觉“我”好像又回来了。 让ai做的就是自动整理,自动划分,我想不起来的东西帮我找,把这些流程交给ai。我发现我越来越愿意输出了。。。 2 个帖子 - 2 位参与者 阅读完整话题

LinuxDo 最新话题 · 2026-06-10 10:26:53+08:00 · tech

我现在在北京某二本,即将升入大四。 刚入学的时候觉得学计算机是条稳稳的出路,结果现在找个工作都难。AI一爆发,岗位没见多,竞争倒是更卷了,招人的坑就那么几个。 想问问已经在工作的开发者们: AI有没有实际影响到你的日常工作或者岗位稳定性? 现在招人的标准是不是变高了,但薪资没跟上? 说实话,如果重来一次还会选CS吗? 就想知道真实情况到底怎样。现在我个人真的是较为悲观。 4 个帖子 - 4 位参与者 阅读完整话题

v2ex · 2026-06-09 18:22:07+08:00 · tech

做移动端数据采集、广告验证的朋友 👋 你是不是也遇到过这些问题? ● 用机房 IP 被目标平台识别拦截 ❌ ● 移动端页面和 APP 采集拿不到真实数据 ❌ ● 并发一高就掉线,效率太低 ❌ 👉 LokiProxy 移动代理,您的首要选择 ✅ ✨ 真实移动 IP 不是机房伪装,不是虚拟设备。 LokiProxy 移动代理全部来自真实 3G/4G/5G 网络,由真实移动设备发出。 🚀 高性能保障 √ 高品质移动 IP 池 √ 无限并发请求 √ 真实 3G/4G/5G 网络 √ 99.9%成功率 √ 响应时间< 0.5 秒 💡 真实场景,精准适配 专为市场调研、广告验证与本地化内容访问打造的 3G/4G/5G 移动代理,实用性极强! 兼顾稳定性与灵活性,轻松满足企业及个人开发者的使用需求。 💰 价格优惠透明 → 低至 1.9 美元/GB → 提供小流量套餐,降低试错成本 → 批量购买可享更多折扣 📞 如何购买?怎么获取折扣? 💵 购买链接: https://www.lokiproxy.com 📨 批量折扣( 500GB+): [email protected]

v2ex · 2026-06-09 16:15:09+08:00 · tech

最近看到有人说 ping0.cc (很多人用来查 IP 纯净度/风控值的工具)在偷偷收集用户真实 IP 。我不喜欢人云亦云,直接打开浏览器 F12 抓了一遍包、扒了它的前端 JS ,我擦,居然实锤了。下面每一条你都能自己复现。 手法一:WebRTC 抓真实 IP ,再 POST 回服务器 打开 ping0 时,它的 check.js 里有个 peer()函数(代码混淆过,但逻辑很清楚): - 新建 RTCPeerConnection ,配上 STUN 服务器; - 监听 ICE candidate ,从候选串里把 IP 抠出来; - 然后 axios.post (/ip/peer, { ip: 你的真实 IP }),发回 ping0 自己的服务器。 WebRTC 这个 IP 能绕过你的代理/VPN——这正是它"危险"的地方。你以为在用代理 IP 查询,它却从 WebRTC 拿到了你代理背后的真实地址,还发回了服务器。 抓包里你会看到一个 POST https://ping0.cc/ip/peer 。 手法二:双栈( IPv4 + IPv6 )交叉强制抓取 ping0 的页面同时从两个子域名加载脚本: https://ipv4.ping0.cc/geo/jsonp/ipv4cb https://ipv6.ping0.cc/geo/jsonp/ipv6cb ipv4.ping0.cc 只解析 A 记录、 ipv6.ping0.cc 只解析 AAAA 记录——这样强制你的浏览器分别走 IPv4 和 IPv6 各连一次。哪怕你只用 IPv6 上网,它也能把你的 IPv4 钓出来(反之亦然)。双栈用户的两个地址,一个都跑不掉。 手法三:把你的 IPv4 和 IPv6 配对,记到服务器(最致命) 这是压死骆驼的一根稻草。ping0 的 JS 原文(去混淆后): js axios({ method: 'get', url: '/logv6/' + window.ipv6 + '/' + ip }) 也就是说,它会发一个: GET https://ping0.cc/logv6/ {你的 IPv6}/{你的 IPv4} 把你的 IPv6 和 IPv4 配成一对、记到 ping0 的服务器上。这已经不是"检测"了,这是建立你真实身份的关联档案。我实测时这个请求确确实实发出去了,URL 里就明晃晃挂着我这台机器的两个真实地址。 复现步骤( 30 秒,你自己验) 1. 浏览器打开 https://ping0.cc ,按 F12 → Network (网络)面板; 2. 刷新页面; 3. 在请求列表里搜 peer 、logv6 、ipv4.ping0 ,三个都在; 4. 点开 logv6/...那条,URL 里就是你的 IPv6/IPv4 配对。 这意味着什么 - 你拿 ping0 测一个代理/VPS 的 IP 时,它可能顺手把你本机的真实 IP 也抓走、还把你的 v4/v6 关联起来记档; - 对在意匿名性、做跨境/多账号/科学上网的人,这是实打实的去匿名风险。 ### 怎么保护自己 - 浏览器禁用 WebRTC ( Firefox 改 media.peerconnection.enabled=false ,Chrome 装 WebRTC 控制类插件); - 或者,换一个不这么干的网站。

v2ex · 2026-06-09 16:15:09+08:00 · tech

最近看到有人说 ping0.cc (很多人用来查 IP 纯净度/风控值的工具)在偷偷收集用户真实 IP 。我不喜欢人云亦云,直接打开浏览器 F12 抓了一遍包、扒了它的前端 JS ,我擦,居然实锤了。下面每一条你都能自己复现。 手法一:WebRTC 抓真实 IP ,再 POST 回服务器 打开 ping0 时,它的 check.js 里有个 peer()函数(代码混淆过,但逻辑很清楚): - 新建 RTCPeerConnection ,配上 STUN 服务器; - 监听 ICE candidate ,从候选串里把 IP 抠出来; - 然后 axios.post (/ip/peer, { ip: 你的真实 IP }),发回 ping0 自己的服务器。 WebRTC 这个 IP 能绕过你的代理/VPN——这正是它"危险"的地方。你以为在用代理 IP 查询,它却从 WebRTC 拿到了你代理背后的真实地址,还发回了服务器。 抓包里你会看到一个 POST https://ping0.cc/ip/peer 。 手法二:双栈( IPv4 + IPv6 )交叉强制抓取 ping0 的页面同时从两个子域名加载脚本: https://ipv4.ping0.cc/geo/jsonp/ipv4cb https://ipv6.ping0.cc/geo/jsonp/ipv6cb ipv4.ping0.cc 只解析 A 记录、 ipv6.ping0.cc 只解析 AAAA 记录——这样强制你的浏览器分别走 IPv4 和 IPv6 各连一次。哪怕你只用 IPv6 上网,它也能把你的 IPv4 钓出来(反之亦然)。双栈用户的两个地址,一个都跑不掉。 手法三:把你的 IPv4 和 IPv6 配对,记到服务器(最致命) 这是压死骆驼的一根稻草。ping0 的 JS 原文(去混淆后): js axios({ method: 'get', url: '/logv6/' + window.ipv6 + '/' + ip }) 也就是说,它会发一个: GET https://ping0.cc/logv6/ {你的 IPv6}/{你的 IPv4} 把你的 IPv6 和 IPv4 配成一对、记到 ping0 的服务器上。这已经不是"检测"了,这是建立你真实身份的关联档案。我实测时这个请求确确实实发出去了,URL 里就明晃晃挂着我这台机器的两个真实地址。 复现步骤( 30 秒,你自己验) 1. 浏览器打开 https://ping0.cc ,按 F12 → Network (网络)面板; 2. 刷新页面; 3. 在请求列表里搜 peer 、logv6 、ipv4.ping0 ,三个都在; 4. 点开 logv6/...那条,URL 里就是你的 IPv6/IPv4 配对。 这意味着什么 - 你拿 ping0 测一个代理/VPS 的 IP 时,它可能顺手把你本机的真实 IP 也抓走、还把你的 v4/v6 关联起来记档; - 对在意匿名性、做跨境/多账号/科学上网的人,这是实打实的去匿名风险。 ### 怎么保护自己 - 浏览器禁用 WebRTC ( Firefox 改 media.peerconnection.enabled=false ,Chrome 装 WebRTC 控制类插件); - 或者,换一个不这么干的网站。

v2ex · 2026-06-09 15:53:55+08:00 · tech

最近看到有人说 ping0.cc (很多人用来查 IP 纯净度/风控值的工具)在偷偷收集用户真实 IP 。我不喜欢人云亦云,直接打开浏览器 F12 抓了一遍包、扒了它的前端 JS ,我擦,居然实锤了。下面每一条你都能自己复现。 手法一:WebRTC 抓真实 IP ,再 POST 回服务器 打开 ping0 时,它的 check.js 里有个 peer()函数(代码混淆过,但逻辑很清楚): - 新建 RTCPeerConnection ,配上 STUN 服务器; - 监听 ICE candidate ,从候选串里把 IP 抠出来; - 然后 axios.post (/ip/peer, { ip: 你的真实 IP }),发回 ping0 自己的服务器。 WebRTC 这个 IP 能绕过你的代理/VPN——这正是它"危险"的地方。你以为在用代理 IP 查询,它却从 WebRTC 拿到了你代理背后的真实地址,还发回了服务器。 抓包里你会看到一个 POST https://ping0.cc/ip/peer 。 手法二:双栈( IPv4 + IPv6 )交叉强制抓取 ping0 的页面同时从两个子域名加载脚本: https://ipv4.ping0.cc/geo/jsonp/ipv4cb https://ipv6.ping0.cc/geo/jsonp/ipv6cb ipv4.ping0.cc 只解析 A 记录、 ipv6.ping0.cc 只解析 AAAA 记录——这样强制你的浏览器分别走 IPv4 和 IPv6 各连一次。哪怕你只用 IPv6 上网,它也能把你的 IPv4 钓出来(反之亦然)。双栈用户的两个地址,一个都跑不掉。 手法三:把你的 IPv4 和 IPv6 配对,记到服务器(最致命) 这是压死骆驼的一根稻草。ping0 的 JS 原文(去混淆后): js axios({ method: 'get', url: '/logv6/' + window.ipv6 + '/' + ip }) 也就是说,它会发一个: GET https://ping0.cc/logv6/ {你的 IPv6}/{你的 IPv4} 把你的 IPv6 和 IPv4 配成一对、记到 ping0 的服务器上。这已经不是"检测"了,这是建立你真实身份的关联档案。我实测时这个请求确确实实发出去了,URL 里就明晃晃挂着我这台机器的两个真实地址。 复现步骤( 30 秒,你自己验) 1. 浏览器打开 https://ping0.cc ,按 F12 → Network (网络)面板; 2. 刷新页面; 3. 在请求列表里搜 peer 、logv6 、ipv4.ping0 ,三个都在; 4. 点开 logv6/...那条,URL 里就是你的 IPv6/IPv4 配对。 这意味着什么 - 你拿 ping0 测一个代理/VPS 的 IP 时,它可能顺手把你本机的真实 IP 也抓走、还把你的 v4/v6 关联起来记档; - 对在意匿名性、做跨境/多账号/科学上网的人,这是实打实的去匿名风险。 ### 怎么保护自己 - 浏览器禁用 WebRTC ( Firefox 改 media.peerconnection.enabled=false ,Chrome 装 WebRTC 控制类插件); - 或者,换一个不这么干的网站。

v2ex · 2026-06-09 14:20:48+08:00 · tech

最近看到有人说 ping0.cc (很多人用来查 IP 纯净度/风控值的工具)在偷偷收集用户真实 IP 。我不喜欢人云亦云,直接打开浏览器 F12 抓了一遍包、扒了它的前端 JS ,我擦,居然实锤了。下面每一条你都能自己复现。 手法一:WebRTC 抓真实 IP ,再 POST 回服务器 打开 ping0 时,它的 check.js 里有个 peer()函数(代码混淆过,但逻辑很清楚): - 新建 RTCPeerConnection ,配上 STUN 服务器; - 监听 ICE candidate ,从候选串里把 IP 抠出来; - 然后 axios.post (/ip/peer, { ip: 你的真实 IP }),发回 ping0 自己的服务器。 WebRTC 这个 IP 能绕过你的代理/VPN——这正是它"危险"的地方。你以为在用代理 IP 查询,它却从 WebRTC 拿到了你代理背后的真实地址,还发回了服务器。 抓包里你会看到一个 POST https://ping0.cc/ip/peer 。 手法二:双栈( IPv4 + IPv6 )交叉强制抓取 ping0 的页面同时从两个子域名加载脚本: https://ipv4.ping0.cc/geo/jsonp/ipv4cb https://ipv6.ping0.cc/geo/jsonp/ipv6cb ipv4.ping0.cc 只解析 A 记录、 ipv6.ping0.cc 只解析 AAAA 记录——这样强制你的浏览器分别走 IPv4 和 IPv6 各连一次。哪怕你只用 IPv6 上网,它也能把你的 IPv4 钓出来(反之亦然)。双栈用户的两个地址,一个都跑不掉。 手法三:把你的 IPv4 和 IPv6 配对,记到服务器(最致命) 这是压死骆驼的一根稻草。ping0 的 JS 原文(去混淆后): js axios({ method: 'get', url: '/logv6/' + window.ipv6 + '/' + ip }) 也就是说,它会发一个: GET https://ping0.cc/logv6/ {你的 IPv6}/{你的 IPv4} 把你的 IPv6 和 IPv4 配成一对、记到 ping0 的服务器上。这已经不是"检测"了,这是建立你真实身份的关联档案。我实测时这个请求确确实实发出去了,URL 里就明晃晃挂着我这台机器的两个真实地址。 复现步骤( 30 秒,你自己验) 1. 浏览器打开 https://ping0.cc ,按 F12 → Network (网络)面板; 2. 刷新页面; 3. 在请求列表里搜 peer 、logv6 、ipv4.ping0 ,三个都在; 4. 点开 logv6/...那条,URL 里就是你的 IPv6/IPv4 配对。 这意味着什么 - 你拿 ping0 测一个代理/VPS 的 IP 时,它可能顺手把你本机的真实 IP 也抓走、还把你的 v4/v6 关联起来记档; - 对在意匿名性、做跨境/多账号/科学上网的人,这是实打实的去匿名风险。 ### 怎么保护自己 - 浏览器禁用 WebRTC ( Firefox 改 media.peerconnection.enabled=false ,Chrome 装 WebRTC 控制类插件); - 或者,换一个不这么干的网站。