返回所有文章
发布于 · 作者 Renaud Deraison

在 Bromure 里运行 VPN——以及一份关于 Cloudflare WARP 的通俗入门

VPN 到底在做什么,它做不到什么,为什么在 Bromure 中以配置文件为粒度运行 VPN 会改变匿名性的格局,以及 Cloudflare WARP 在引擎盖下究竟是怎样运作的。

网络上的匿名性不是黑客才关心的问题。每当你不希望自家的杂货店、保险公司、孩子的学校,还有六家广告网络知道你凌晨一点读了哪些文章时,你想要的就是它。

多数人会在出差、追剧,或是在网上挑一件不希望下周在弹窗广告里被反复推送的商品时想到 VPN。很少有人会去思考 VPN 究竟跑在哪里——是跑在操作系统上、路由器上,还是某个更有意思的地方。而这个看似不起眼的问题,其答案其实非常重要。本文将梳理 VPN 到底在做什么、它做不到什么、为什么在 Bromure 中以配置文件为粒度运行它会改变这道算式,以及——因为总有人问——Cloudflare WARP 究竟是什么。

你的 IP 地址是一张摘不下来的名牌。

你的电脑发往每一个网络服务的每一个请求,都带着你的 IP 地址。它必须带着:因为响应总得有地方送回来。麻烦的是,同一个家里出来的同一个 IP,通常会持续几天、几周甚至几个月保持不变——而这个时长,已经足够让互联网上每一条分析流水线把它当成一个稳定的标识符——「厨房餐桌旁的那台笔记本」——并在毫不相关的各个网站之间拼凑出那位坐在笔记本前的人,业余时间都做了什么。

家庭网络203.0.113.45新闻网站访客 203.0.113.45社交网络访客 203.0.113.45在线商店访客 203.0.113.45医疗论坛访客 203.0.113.45广告网络访客 203.0.113.45数据经纪商访客 203.0.113.45每一行上都是同一个数字。恭喜你——你成了每一个数据库里的主键。
同一个 IP 地址,在你访问的每一页、来自每一个网站、持续几周几个月地出现。这已经足够让广告网络和数据经纪商拼出一份详尽的画像——不需要 cookie,不需要登录。你的名牌是出厂就印好的。

IP 并不是互联网上唯一的标识符;cookie 和登录账号是更强的标识符。但 IP 是你关不掉的那一个。你可以清 cookie,可以拒绝登录,而 IP 照样要发出去,每一个请求上,都是同一个 IP。

这就是 VPN 要解决的问题。

VPN 到底在做什么——以及它做不到什么。

VPN——虚拟私有网络——会把你的流量改道经过一个中间服务器,于是你访问的网站看到的是 VPN 的 IP 地址,而不是你的。你的设备与 VPN 之间的流量是加密的,而网站看到的地理区域,是 VPN 选择的出口所在地。

真实 IP203.0.113.45加密隧道WireGuard / OpenVPN /IKEv2 · 所有载荷均不可见VPN 出口改写源 IP185.220.42.17网站看到的是访客 185.220.42.17ISP 能看到的一切,VPN 服务商也都看得到。你是在把信任从 ISP 换给了 VPN——不是在增加信任,而是在转移信任。
VPN 把你上网流量的回邮地址改写了。每一个网站看到的都是 VPN 的 IP,而不是你的。你与 VPN 之间的流量是加密的;VPN 与网站之间的流量则不是(不过其中绝大部分在应用层就已经被 TLS 包裹起来了)。

VPN 能带给你的:

你的 IP 对网站隐藏

网站看到的是 VPN 的 IP。他们的广告合作方看到的也是 VPN 的 IP。那些在互联网上跨站聚合访问数据的数据经纪商,最后只能围绕一个共享的出口来做聚合,而不是围绕你的家。

你的流量对 ISP 和本地网络隐藏

咖啡馆、机场、酒店,还有你的 ISP 看到的,都只是一条发往 VPN 的、经过加密的数据流。他们看不出你在访问哪些网站。DNS 查询也走 VPN,所以他们甚至连你在查什么都看不到。

你可以选择地理出口

大多数商业 VPN 允许你挑选国家。如果某个网站只在日本可用,或者你想看看海那边的朋友看到的是什么购物价格,VPN 就是最省事的答案。

你并不会因此变得匿名

这是要说实话的部分。VPN 隐藏的是你的 IP,而不是你的身份。如果你照样登录你一直在登录的那些账号,那你被识别的程度和以前没什么两样——只不过是换了一个 IP 而已。浏览器指纹、cookie、通行密钥以及「用 Google 登录」,并不在意 IP。

为什么把 VPN 跑在 Bromure 里面,是更合适的形状。

多数人把 VPN 跑在操作系统层面。整台机器要么 VPN 全开,要么 VPN 全关。这样做的问题有两重。

第一重问题是粒度。VPN 开着的时候,每一个应用——你的邮件客户端、你的 Slack、你的 App Store 更新、你的 Dropbox 同步——都会走 VPN。这可能会破坏登录(「我们注意到你从德国登录」),可能拖慢一切,也会把「你在用 VPN」这件事泄露给你打过交道的每一个服务。

第二重问题是泄漏。VPN 关着的时候,某个在后台默默干活的应用,可能在一个你本以为自己是匿名访问的网站上,亮起你的真实 IP。一次 DNS 泄漏,一次 WebRTC 泄漏,网站就能把你和那个真实连接对上号。

Bromure 采取的是另一种方式:每一个配置文件都是独立的虚拟机,各自有自己的网络配置。一个配置文件可以跑在 WARP 上。另一个可以走直连。第三个可以挂在一个从德国出口的付费商业 VPN 上。第四个可以挂在 Tor 上。它们彼此互不可见。而宿主操作系统——你的真实 IP、你的真实连接——上面根本没有跑任何 VPN,因为它也用不着。

一台笔记本,一个真实 IP——四个世界宿主 · 不挂 VPN,直接上网工作企业应用不挂 VPN(直连)银行仅用于金融不挂 VPN(避免被风控)个人新闻与社交Cloudflare WARP(隐藏 IP,免费)研究随手点开的链接付费 VPN · 德国出口(指定地理位置)互联网直接使用宿主 IPCloudflare WARPCF 边缘 IP付费 VPN · 德国Frankfurt 出口 IP
在传统的操作系统里,VPN 是一个作用于整台机器的开关。在 Bromure 里,每个配置文件都是一个独立的网络世界。宿主走它正常的互联网;每个配置文件可以按你希望的方式来路由它的流量——而这个选择,不会泄漏到配置文件之外。

这种形状悄悄带来三个后果。

不会发生意外的关联。 工作配置文件与研究配置文件不共享源 IP。你在「个人」里登录过的网站看到的是 WARP 的出口;你在「研究」里打开的网站看到的是一个德国商业出口。它们没办法从网络层面把两个会话对上号。

配置文件之间没有泄漏。 一次 DNS 泄漏、一次 WebRTC 泄漏、一个配置错误的应用——这些都只局限在虚拟机本地。某个配置文件里一个行为不端的页面,无法发现宿主的真实 IP,因为宿主的真实 IP 根本就不在这个配置文件的网络命名空间里。它在隔壁那堵墙的另一边。

会话结束,路由随之结束。 一个挂着 WARP 的一次性会话,在你关闭窗口时就被拆除。下次你再打开同一个配置文件时,上一个会话留下的任何东西——cookie、缓存、WireGuard 密钥、IP 分配——全都不复存在。VPN 和那个窗口一样转瞬即逝。

Cloudflare WARP 入门。

WARP 是 Cloudflare 面向消费者的类 VPN 产品。让人容易困惑的是,它既是一个人人都能用的免费服务,也是一个付费产品,并且还与一整套同样冠以 WARP 之名的商业产品并存(1.1.1.1 for Families、Zero Trust、Gateway)。本节谈的是免费的个人版,也就是大家常问的那一个。

你的设备Bromure 配置文件WireGuard 客户端加密隧道WireGuard (UDP 51820)或 MASQUE (QUIC/HTTP3)CLOUDFLARE 边缘最近的 PoP全球 300 多个城市DNS 经由 1.1.1.1能看到解密后的流量互联网看到的源 IP是一个 Cloudflare IP没有国家选择器。出口所在地 = Cloudflare 离你最近的 PoP 在哪里。
WARP 在引擎盖下究竟在做什么。你的流量会在一条 WireGuard 隧道中被加密(在较新的客户端上,也可能是一条 MASQUE/QUIC 隧道),在离你最近的 Cloudflare 边缘节点终止,再从 Cloudflare 的网络出口出去。DNS 查询通过 1.1.1.1,单独加密。不存在国家选择器;出口就在 Cloudflare 网络中离你最近的那一个节点。

一段非常简短的历史:WARP 最初是 Cloudflare 的 1.1.1.1 DNS 解析器的消费者侧产物,于 2019 年发布。思路很简单——Cloudflare 本来就已经拥有地球上最大的边缘网络之一用于分发网站,那么在同一套边缘节点上再终止一条 WireGuard 隧道,只是多加了很小的一步。最初的客户端使用的是 Cloudflare 自己的 Rust 版 WireGuard 实现(BoringTun);较新的客户端则加入了 MASQUE——一种构建在 HTTP/3 与 QUIC 之上的较新 VPN 风格协议,它在许多敌意网络中更难被阻断。

WARP 能带给你的:

免费,开始时不用注册账号

基础版 WARP 是免费的。不用信用卡,不用邮箱。设备标识是在本地生成的;以后想升级付费版也可以,但开箱体验就是「装好、连上、完事」。

快,因为 Cloudflare 的边缘无处不在

传统 VPN 会把你的流量回传到为数不多的几十个数据中心之一,然后从那儿出去。Cloudflare 在全球 300 多个城市运营 PoP。你的流量多绕的那一小步通常很短,对许多用户来说,由于 Cloudflare 的中转对等,WARP 甚至比不挂 VPN 还要更快一些。

加密的 DNS

默认情况下,隧道内部的 DNS 查询通过 DoH 或 DoT 发往 1.1.1.1。你的 ISP、你的公司网络,还有咖啡馆的路由器,都看不到你在查哪些域名——而在未加密的网络里,这些查询本来可能是明文传输的。

一份你能看得懂的隐私承诺

Cloudflare 多次发布过 WARP 的隐私审计报告(由第三方审计机构出具——最近一次是 KPMG),声明 IP 地址和浏览历史不会被记录,也不会用于广告。这份策略并非无懈可击,但它比多数免费 VPN 要好得多,并且具备实际意义上的可审计性。

WARP 不是什么。

很容易高估 WARP 的作用。在把它当作完整的隐私方案之前,有几点需要记在心里。

它不是地理选择型 VPN

免费版 WARP 没办法让你「从日本出去」。出口 PoP 取决于你在哪儿。想做地区解锁,你还是得靠带国家选择器的商业 VPN,或者提供区域控制的 WARP+ 变体。

信任从 ISP 转到了 Cloudflare

你的流量只加密到 Cloudflare 边缘。之后由 Cloudflare 把它路由出去,送上公共互联网。Cloudflare 能看到你连接的每一个域名、每一次 DNS 查询、每一个未加密的字节(尽管其中大部分都被 TLS 包裹着)。你是在用 ISP 的可见性换 Cloudflare 的可见性——如果你不信任自己的 ISP,这是一次真实的升级,但它仍然是一个单一的、广为人知的信任锚点。

它挡不住指纹识别

VPN 隐藏的是你的 IP。它不会改变你的 user-agent 字符串、已安装字体列表、屏幕分辨率、WebGL/canvas 指纹和 TLS 签名。装备齐全的追踪器照样可以跨 IP 把你关联起来。藏起 IP 只是抬高了门槛;并没有把战场抹平。

有些网络会直接阻断 WARP

公司网络、部分机场以及某些国家会侦测并阻断标准的 WARP 端点。MASQUE 能有所缓解,但并不是万能。如果 WARP 在某个网络上怎么都连不上,通常不是软件的 bug——是网络在说不行。

在 Bromure 配置文件里使用 WARP。

机械操作的部分很简单。WARP 的配置可以从 1.1.1.1 应用里导出为一份 WireGuard 配置文件——任何 WireGuard 客户端都能识别的那种文件。你让 Bromure 配置文件指向这份文件,于是配置文件里做的所有事都会经过 Cloudflare。

因为配置是按配置文件粒度生效的,你可以把 WARP 配置文件留给日常阅读和浏览使用,而银行和工作配置文件继续走直连。与此同时,你的宿主操作系统根本没有跑任何 VPN——它不需要,因为宿主上没有任何东西想让自己的流量匿名化。匿名性恰好只存在于你需要它的那个地方。

给你一份简短的对照表,告诉你在什么时候伸手去拿哪样工具:

在以下情况使用 WARP……

你想对大多数网站隐藏自己的 IP,你身处一个并不完全可信的网络,你想要加密的 DNS,而且你也不想为此花钱或注册什么。对于你用来随手阅读、查资料以及随便逛逛的那个配置文件来说,这是不错的默认选择。

在以下情况使用付费商业 VPN……

你需要指定某个国家作为出口,你需要一家隐私政策更严格、或所在司法辖区不同于 Cloudflare 的服务商,或者你在做的事情可能因为共享 IP 而被限流。在大多数情况下比 WARP 更慢,但可控性更强。

在以下情况使用 Tor……

你需要在面对一个严肃对手时获得真正的匿名性——采访线索的记者、身处敌意国家的活动人士、研究对手自身基础设施的研究者。它比 WARP 或 VPN 都慢得多;能用的网站要少得多;但它所抵御的威胁模型本就不同。

在以下情况不挂 VPN……

你在登录自己的银行、医生或政府服务。这些网站天生就会对异常的 IP 起疑心,而 VPN 经常会触发额外的验证摩擦,甚至被直接拦下。为这类会话留一个干净的「真实 IP」配置文件不是多疑——这是方便。

结语。

你并不需要一个涉及国家行为体的威胁模型,才会想要对自己的 IP 有掌控权。你只是不想在你读过的每一页、你搜过的每一个词、你瞟过一眼随即后悔的每一件商品上,都被挂上标签而已。VPN 是用于这件事的最常见工具;WARP 则是一个很好的免费默认,适合任何想要基础功能而不打算订阅任何东西的人。而 Bromure——它把每个配置文件都放进各自独立的网络世界——让你能以这些工具本该具备的粒度来组合它们:不是按电脑、不是按应用,而是按世界。

装上 Bromure,建一个名叫「阅读」的配置文件,把它指向 WARP。看看当网络不再认识你时,它会是什么样子。