目录
科普原理

加密隧道与代理有什么区别?

加密隧道和代理都能替你转发流量,但工作层级、接管范围和是否加密都不同。本文用对照表和时序图讲清两者的区别,以及现代客户端为什么用「虚拟网卡 + 规则分流」把两者的优点结合起来。

最后更新:

加密隧道和代理都是「替你转发流量的中间人」,区别主要有三点:接管范围、是否加密、工作的层级。普通代理通常只接管配置了它的程序(比如浏览器),本身不加密,大多工作在应用层或会话层;加密隧道通过虚拟网卡接管整台设备的流量,从你的设备到服务器全程加密,常见的工作在网络层。现代客户端则把两者结合起来:用虚拟网卡接管全部流量,再按规则决定哪些走加密通道、哪些直连。

插图:左边房子只有浏览器窗口把明信片交给快递员,其他门各自直接寄出;右边房子所有门都汇入同一条封闭的加密管道
  1. ① 普通代理只有浏览器把信交给它
  2. ② 其他程序直连游戏、聊天、命令行各走各的路
  3. ③ 沿途可见明信片的内容和去向都看得到
  4. ④ 整机接管所有程序的流量都被接住、加密
  5. ⑤ 一条加密通道全部汇入同一条管道,沿途看不到内容
  6. ⑥ 隧道服务器在另一端拆开再转发

一张表看懂区别

普通代理(HTTP / SOCKS5)加密隧道
工作层级应用层 / 会话层:转发某个连接或请求多在网络层:转发整个 IP 数据包
接管范围只有配置了代理、并且遵守设置的程序整台设备的所有程序,包括命令行和游戏
加密本身不加密设备到服务器全程加密
沿途能看到什么你通过代理访问了哪些地址;未加密的内容只能看到你连接了隧道服务器
是否需要系统授权一般不需要需要(创建虚拟网卡要用户同意)
典型用途公司上网出口、只让浏览器换出口、开发调试公共 Wi-Fi 保护、远程办公、整机跨地区访问

区别一:接管范围——一个程序还是整台设备

代理靠的是「程序自觉」:浏览器读取系统或自己的代理设置,把请求交给代理。可很多程序根本不读这个设置,例如命令行工具、部分游戏和聊天软件,它们会照常直接联网。

加密隧道走的是另一条路:在系统里创建一块虚拟网卡,并把默认路由指向它。程序不需要做任何设置,它们发出的每一个数据包都会先经过虚拟网卡,自然就进了隧道。具体原理见 加密隧道是什么 和 系统代理、全局模式与 TUN 模式。

区别二:加密——内容和去向能不能被看到

HTTP 代理和 SOCKS5 协议本身都不加密。你连到代理的这一段,同一 Wi-Fi 的人或运营商能看到你让代理去连哪个地址,访问 HTTP 网站时还能看到全部内容,甚至连代理的用户名和密码也是明文传输的。

加密隧道则在你的设备和隧道服务器之间建立加密通道,沿途只能看到「这台设备在和隧道服务器通信」,以及数据的大小和时间。

一张时序图对比

假设你的电脑上同时开着浏览器和一个游戏,分别用普通代理(只在浏览器里设置)和加密隧道,看看流量是怎么走的:

浏览器 游戏 / 其他 App 运营商网络 代理 / 隧道服务器 网站 普通代理(只在浏览器里设置) 请求交给代理(目标明文可见) 1 代你访问 2 游戏不读代理设置,直接连接 3 加密隧道(虚拟网卡接管整台设备) 浏览器流量,全程加密 4 游戏流量,同样加密 5 解密后代你访问 6 访问网站 7
细线是未加密的数据,运营商能看到目标地址;粗线是加密数据。
步骤发生了什么运营商能看到
①浏览器把请求交给代理,请求里写着要访问的目标地址你在用代理,以及要访问的目标地址
②代理替你访问网站——(这一段在代理和网站之间)
③游戏不读浏览器的代理设置,直接连接自己的服务器游戏的全部连接,就像没有代理一样
④浏览器的流量进入虚拟网卡,被加密后送往隧道服务器只有加密数据,看不出目标
⑤游戏的流量同样被虚拟网卡接住、加密只有加密数据,看不出目标
⑥–⑦隧道服务器解密,再替你访问网站或游戏服务器——(这一段在服务器和网站之间)

区别三:工作层级

  • HTTP 代理工作在应用层,理解 HTTP 协议,能看到请求的网址(HTTPS 下只能看到域名);
  • SOCKS5 工作在会话层,只负责转发 TCP / UDP 连接,不关心里面是什么协议;
  • 加密隧道常见的工作在网络层,把整个 IP 数据包加密后封装起来,上面跑什么协议都能转发。

分层的概念可以回顾 网络分层模型。

现代客户端的做法:虚拟网卡接管 + 规则分流

如今两者的界限越来越模糊。主流的客户端通常这样工作:

  1. 用虚拟网卡(TUN)接管整台设备的流量,不依赖程序自觉;
  2. 按规则分流:本地网站、局域网设备直连,海外服务走加密通道,广告域名可以直接拒绝;
  3. 用加密的协议传输走加密通道的那部分流量,沿途无法看到内容和真实去向。

这样既有加密隧道的「全覆盖、全加密」,又避免了所有流量都绕远路,本地网站照样快。穿山甲就是这种做法,分流的设置见 分流规则详解。

怎么选?

你的需求更合适的方式
只想让浏览器换个出口,临时用一下代理即可
在公司、学校网络里按要求配置上网出口代理(按网络管理员的要求)
在机场、咖啡店等公共 Wi-Fi 上保护隐私加密隧道
命令行、游戏、各种 App 都需要访问海外服务加密隧道(虚拟网卡接管)
希望本地网站不受影响、海外服务又稳定虚拟网卡接管 + 规则分流

相关阅读

常见问题

加密隧道一定比代理慢吗?

不一定。加密和解密的计算开销在现代设备上很小,速度主要取决于线路质量和服务器的距离。一条优质的加密隧道线路,往往比一个拥挤的免费代理快得多。

代理加上 HTTPS,是不是就和加密隧道一样安全了?

不完全一样。HTTPS 保护了网页的内容,但你连接代理的那一段如果不加密,沿途的人仍然能看到你通过代理访问了哪些网站;而且只有配置了代理的程序才受保护。

为什么有些客户端既叫「代理」又能接管整台设备?

现代客户端通常在本机用虚拟网卡接管所有流量,再通过加密的代理协议发往服务器。从接管方式看它像加密隧道,从传输协议看它又是一种代理,两者的界限已经越来越模糊。

还没有安装穿山甲?

支持 iPhone / iPad、Mac、Windows 与 Android。新用户注册即送 7 天会员体验。

下载客户端
← 全部文章