---
title: "无痕模式能防指纹吗：IP、DNS、WebRTC 与浏览器指纹逐项对照"
description: "无痕模式只管本机不留记录，不改出口 IP、DNS 和大部分浏览器指纹。本文给出普通窗口与无痕窗口的逐项对照表和可照做的自测步骤，说明各层该分别怎么处理。"
url: https://cdnping.org/blog/incognito-mode-privacy-myths
language: zh-CN
published: 2026-10-24
category: "IP 与隐私"
tags: ["无痕模式","浏览器指纹","隐私","WebRTC","DNS 泄漏"]
source: cdnping.org
license: Free to quote and summarize with a link to the url above.
---
# 无痕模式能防指纹吗：IP、DNS、WebRTC 与浏览器指纹逐项对照

无痕模式防不住指纹，也不会隐藏 IP。它做的事情很窄：这个窗口里的浏览记录、Cookie、表单数据在关闭后不保存在本机。所以讨论「无痕模式 指纹」时要先分清，网站认出你靠的是出口 IP、DNS、WebRTC 地址、Canvas 与硬件特征、时区语言这些东西，它们大多和本机有没有留下记录无关。

下面按层拆开，先给结论表，再给一套自己就能做的对照测试，最后说明每一层如果确实想减少暴露，该去哪里处理。

## 无痕模式到底做了什么？

各家浏览器名字不同：Chrome 叫无痕模式（Incognito），Edge 叫 InPrivate，Firefox 叫隐私浏览，Safari 叫无痕浏览。核心行为基本一致：

- 打开一个独立的会话，Cookie、localStorage、IndexedDB、缓存都放在临时存储里，和普通窗口隔离。
- 关闭所有无痕窗口后，这些临时数据被清掉，历史记录不写入。
- 多数浏览器在无痕窗口里默认不加载扩展，除非你手动允许。
- 下载的文件、新加的书签会保留，它们不属于「会话数据」。

Chrome 的官方帮助页写得很直白：无痕模式不会对你访问的网站、雇主或学校、网络服务提供商隐藏你的活动。后面所有内容都从这句话出发。

## 哪些东西变了，哪些没变？

这是用同一台电脑、同一网络，先在普通窗口、再在无痕窗口打开 [/ip](/ip) 时，各检测项按原理应当出现的情况。不同浏览器的跟踪保护策略不同，「指纹」一栏以你自己测出来的为准。

| 检测项 | 普通窗口 → 无痕窗口 | 原因 |
|---|---|---|
| 出口 IP（IPv4 / IPv6） | 不变 | 由系统网络和路由决定，浏览器窗口类型管不到 |
| IP 类型、归属地、纯净度 | 不变 | 跟着出口 IP 走 |
| DNS 解析服务器 | 通常不变 | 走系统解析或浏览器的 DoH 设置，无痕窗口沿用同一套 |
| WebRTC 暴露地址 | 不变，可能更糟 | 如果你靠扩展拦 WebRTC，无痕窗口默认不加载扩展，拦截会失效 |
| Canvas / WebGL 指纹 | 多数情况不变 | 取决于显卡、驱动、系统字体渲染；少数浏览器在隐私窗口加噪声 |
| 硬件指纹（核心数、内存档位、屏幕） | 不变 | 读的是设备本身的参数 |
| 时区、语言、字体 | 不变 | 来自系统设置 |
| User-Agent、内核版本特征 | 不变 | 同一个浏览器程序 |
| Cookie 与登录状态 | 变：从空白开始 | 这是无痕模式真正隔离的部分 |
| 本机历史与缓存 | 变：关闭后清除 | 同上 |

能变的只有最后两行。前面那些，正是不依赖 Cookie 就能把你认出来的部分，[浏览器指纹是什么](/blog/browser-fingerprint-explained-self-check) 里有逐项解释。

## 怎么自己做这组对照？

不需要装任何东西，两个窗口各测一次即可。

1. **固定环境**。关掉代理切换、不要换网络，整个测试期间保持同一个出口。
2. **普通窗口测一次**。打开 cdnping 的 [/ip](/ip)，等所有检测项跑完。记下：出口 IPv4、出口 IPv6（如有）、DNS 泄漏检测里看到的解析服务器、WebRTC 检测里暴露的地址、硬件指纹和 Canvas 指纹的摘要值、时区和语言。
3. **生成一张结果图**。页面支持生成带水印的结果图，也可以选择隐藏 IP，方便保存和对比。指纹在本地计算，不上传。
4. **打开无痕窗口重复第 2、3 步**。Chrome / Edge 用 Ctrl+Shift+N，Firefox 用 Ctrl+Shift+P，macOS 上把 Ctrl 换成 Cmd；Safari 用 Cmd+Shift+N。
5. **逐行比对**。把两次结果填进下面这张表：

```text
检测项              普通窗口        无痕窗口        是否相同
出口 IPv4           ____________    ____________    [ ]
出口 IPv6           ____________    ____________    [ ]
DNS 解析服务器      ____________    ____________    [ ]
WebRTC 暴露地址     ____________    ____________    [ ]
Canvas 指纹摘要     ____________    ____________    [ ]
硬件指纹摘要        ____________    ____________    [ ]
时区 / 语言         ____________    ____________    [ ]
```

6. **换一个浏览器再做一轮**（可选）。同一台电脑上 Chrome 和 Firefox 的结果放在一起看，比单看一个浏览器更能说明问题：变的往往是 User-Agent 和 Canvas，不变的是 IP、时区、硬件。

如果你在第 5 步发现无痕窗口的 WebRTC 多暴露了一个地址，基本可以确定是扩展没有在无痕窗口里启用。

## 为什么无痕模式不能隐藏 IP？

IP 是网络层的东西。浏览器发出的每个请求都从系统的网络栈出去，经过路由器、运营商，最后到达网站。无痕窗口只是换了一个存 Cookie 的地方，请求走的线路完全一样，网站看到的源地址自然也一样。

能改变出口 IP 的只有网络层面的变化：换网络、走代理或企业网络出口。即便如此，也要看规则是否覆盖到浏览器的所有流量。双栈网络下可能出现 IPv4 走了代理、IPv6 仍直连的情况，这时网站可能同时看到两个出口，排查方法见 [IPv6 代理不生效](/blog/ipv6-dual-stack-proxy-mismatch)。[你的 IP 地址到底暴露了什么](/blog/what-your-ip-address-reveals) 讲了一个出口 IP 能被读出哪些信息：大致位置、运营商、机房还是家宽、信誉记录。

## DNS 和 WebRTC 在无痕窗口里会不会不一样？

**DNS**：无痕窗口用的解析器和普通窗口相同。如果系统用的是运营商 DNS，你访问的每个域名运营商都能看到，开不开无痕都一样。浏览器里开启的 DNS over HTTPS 是全局设置，对无痕窗口同样生效。想改这一层，看 [DNS over HTTPS 配置指南](/blog/dns-over-https-setup-guide)，原理部分在 [/learn/dns-leak-webrtc-leak](/learn/dns-leak-webrtc-leak)。

**WebRTC**：这是最容易被误判的一项。很多人在普通窗口里装了扩展来限制 WebRTC，测试没有泄漏，就以为无痕窗口也安全。实际上 Chrome 和 Edge 的无痕窗口默认禁用扩展，那个限制就不在了。两个处理办法：

- 在扩展管理页里给该扩展打开「在无痕模式下启用」；
- 或者改用浏览器自身的设置来限制 WebRTC，不依赖扩展。各浏览器的具体位置见 [WebRTC 泄漏怎么关](/blog/fix-webrtc-leak-chrome-firefox-safari)。

改完之后回到 [/ip](/ip) 在无痕窗口里再测一次 WebRTC，确认生效。

## 指纹为什么在无痕窗口里基本不变？

浏览器指纹由许多项特征组合而成，大部分读的是设备和系统：

- **Canvas / WebGL**：让浏览器画一段图形再读回像素。显卡型号、驱动版本、字体抗锯齿方式都会影响结果，这些在无痕窗口里一个也没换。原理和自测方法见 [Canvas 与 WebGL 指纹](/blog/canvas-webgl-fingerprint-explained)。
- **硬件参数**：CPU 逻辑核心数、内存档位、屏幕分辨率和像素比。
- **时区、语言、字体列表**：来自操作系统。时区和 IP 归属地对不上，本身也是一个信号，[浏览器环境一致性](/blog/browser-environment-consistency) 里讨论过这种组合判断。

部分浏览器会在隐私窗口里启用更强的跟踪保护，例如对 Canvas 读取加入随机扰动，或者限制可枚举的字体。这类保护的覆盖范围和默认开关会随版本变化，请以浏览器官方说明为准，并且用上面的对照步骤自己验证，不要只看宣传文字。

还有一点容易忽略：指纹变得「更特别」也会让你更好认。如果全世界只有很少一部分人开着某个罕见组合，这个组合本身就成了标识。

## 无痕模式适合用在什么地方？

它在下面这些场景有用：

- **共用电脑**。在网吧、会议室电脑或朋友的电脑上登录邮箱，关窗口后不留登录状态和历史。
- **临时以「新访客」身份看页面**。排查前端问题时，想看没有任何 Cookie 和缓存的首次访问效果；或者确认某个页面在未登录状态下展示什么。
- **隔离同一网站的两个会话**。例如普通窗口登录自己的账号，无痕窗口看页面的公开状态，互不串 Cookie。注意，这里说的是开发调试，不是在平台上同时操作多个账号；后者请遵守对应服务的条款。
- **不想让某次搜索影响本机的推荐和自动补全**。

排查缓存相关的问题时，用无痕窗口复现通常比手动清缓存省事。

## 无痕窗口里的登录状态会留下什么？

无痕窗口不是「每个标签页一个新身份」。同一次无痕会话里，所有无痕标签页共享同一份 Cookie。你在一个无痕标签页登录了某网站，另一个无痕标签页打开它也是登录状态，直到你关掉全部无痕窗口。

另外，一旦登录，网站就知道你是谁，指纹和 IP 再怎么处理也没意义了。账号本身就是最强的标识。

## 想减少追踪，需要分别处理哪几层？

下面这张检查表按层列出处理手段和验证方式：

| 层面 | 无痕模式管不管 | 需要做什么 | 怎么验证 |
|---|---|---|---|
| 本机记录 | 管 | 用无痕窗口，用完关闭全部窗口 | 重开浏览器看历史 |
| Cookie 跨站跟踪 | 部分管 | 开启浏览器的第三方 Cookie 限制和跟踪保护 | 浏览器隐私设置页 |
| 出口 IP | 不管 | 网络层面处理；双栈网络检查 IPv6 是否一致 | [/ip](/ip) 看 IPv4 与 IPv6 |
| DNS | 不管 | 配置 DoH 或可信的解析器 | [/ip](/ip) 的 DNS 泄漏检测 |
| WebRTC | 不管 | 浏览器设置或在无痕中启用的扩展 | [/ip](/ip) 的 WebRTC 检测，在无痕窗口里测 |
| 指纹 | 基本不管 | 选择带指纹保护的浏览器或设置，保持常见配置 | 两种窗口对照，看摘要值是否变化 |
| 账号登录 | 不管 | 不需要登录时不登录 | 无 |

做完调整后，可以按 [开发者网络自检清单](/blog/developer-network-self-check-2026) 的顺序再整体过一遍，从出口 IP 一路查到延迟特征，确认没有漏掉的层。

## 常见问题

**InPrivate 和 Chrome 无痕模式有区别吗？**
在「本机不留记录」这一点上没有本质区别。差别在默认的跟踪保护等级和扩展策略，这些要看各自版本的设置页。

**无痕模式下公司或学校能看到我访问了什么吗？**
能。网络管理员看到的是经过网络的流量和 DNS 查询，和浏览器窗口类型无关。公司设备上如果装了管理软件，能看到的更多。

**开了无痕模式，网站还能用 Cookie 跟踪我吗？**
在这次无痕会话期间可以，会话内的 Cookie 正常工作。关闭所有无痕窗口后这些 Cookie 被清掉，下次打开是新会话。但网站仍可能通过 IP 和指纹把两次会话关联起来。

**为什么用无痕窗口打开 cdnping /ip，结果和普通窗口几乎一样？**
这正是预期结果。检测页读的是网络和设备特征，无痕模式本来就不改这些。如果有差异，通常出在 WebRTC（扩展未启用）或 Canvas（浏览器在隐私窗口加了扰动）。

---

cdnping 是面向开发者的免费网络观测站，没有登录，不卖数据。文中的对照可以随时在 [/ip](/ip) 上复做，检测方法说明见 [/methodology](/methodology)。
