Proxifier 代理原理、准备工作与使用教程

从工作原理到分流规则,介绍使用 Proxifier 前需要准备什么,以及如何配置 SOCKS5 代理、DNS 和直连规则。

Proxifier 是一款强制代理工具。它能够让原本不支持代理设置的程序,通过 SOCKS 或 HTTPS 代理访问网络。

需要注意的是,Proxifier 本身不提供代理线路。它更像一个流量调度器:拦截程序发起的网络连接,根据预先配置的规则,决定让连接通过代理、直接访问、进入代理链,或者直接阻止。

本文介绍 Proxifier 的基本原理、开始使用前需要准备的内容,以及 Windows 环境下的常见配置方法。

一、Proxifier 的工作原理

浏览器等程序通常可以主动读取系统代理设置,但一些命令行工具、旧软件或专用客户端不会使用系统代理。Proxifier 可以在这些程序建立网络连接时介入,并按照规则重新安排连接路径。

其基本流程如下:

1
2
3
4
5
6
7
8
9
应用程序发起连接
Proxifier 捕获连接
从上到下匹配 Proxification Rules
Proxy / Chain / Direct / Block
代理服务器或目标服务器

每条规则可以根据以下条件匹配:

  • 应用程序,例如 abc.exe
  • 目标域名或 IP,例如 *.example.com
  • 目标端口,例如 80;443
  • 应用、目标地址和端口的组合。

规则支持四种常用动作:

动作 作用
Proxy 通过指定代理服务器连接
Chain 通过代理链连接
Direct 不经过代理,直接连接目标
Block 阻止连接

Proxifier 的规则按照从上到下的顺序匹配,连接命中第一条符合条件的规则后便不再继续匹配,因此规则顺序非常重要。

Proxifier 与系统代理、VPN 的区别

系统代理主要对主动读取代理设置的软件生效;Proxifier 则可以根据进程强制转发连接,因此更适合精确控制某个程序。

Proxifier 也不等同于完整 VPN。它主要适用于 TCP 连接,而游戏、语音通话、QUIC/HTTP3 等功能可能依赖 UDP。如果目标是代理所有协议和系统流量,代理客户端的 TUN 模式或 VPN 通常更合适。

二、开始前需要准备什么

1. 一个可用的代理入口

这是最重要的准备工作。至少需要知道以下信息:

1
2
3
4
服务器地址:127.0.0.1、远程 IP 或域名
端口:例如 1080、7891
协议:SOCKS5、SOCKS4 或 HTTPS
账号密码:代理要求认证时需要

代理入口可能来自:

  • Clash 或 Mihomo 提供的本地 SOCKS/Mixed 端口;
  • v2rayN 提供的本地 SOCKS 端口;
  • SSH 动态端口转发;
  • 公司或服务商提供的远程 SOCKS5/HTTPS 代理。

一般推荐优先选择 SOCKS5,兼容性相对较好。

订阅链接以及 VLESS、VMess、Trojan、Shadowsocks 节点通常不能直接填入 Proxifier。应先让 Clash、Mihomo 或 v2rayN 等客户端连接节点,再将客户端开放的本地 SOCKS5 端口交给 Proxifier。

2. 确认本地代理端口

在代理客户端中查看端口配置,常见形式如下:

1
2
3
HTTP Port: 7890
SOCKS Port: 7891
Mixed Port: 7890

例如客户端显示 SOCKS 端口为 7891,则 Proxifier 中可以填写:

1
2
3
Address: 127.0.0.1
Port: 7891
Protocol: SOCKS5

3. 明确代理范围

配置前应先决定哪些流量需要经过代理:

  • 仅代理某个程序;
  • 仅代理指定域名或端口;
  • 除局域网外全部代理;
  • 代理 Proxifier 能处理的全部 TCP 连接。

仅代理指定程序通常最稳定,也最不容易影响系统中的其他软件。

同时应找到程序真正联网的 .exe 文件。部分软件会先运行启动器,再由启动器创建其他进程,实际联网的可能不是启动器本身。可以通过任务管理器或 Proxifier 的连接日志确认。

4. 避免重复代理

如果目标程序内部已经设置了 HTTP 或 SOCKS 代理,通常应将其恢复为直接连接,再交给 Proxifier 统一处理,否则可能形成双重代理:

1
应用内部代理 → Proxifier 再次代理 → 连接异常

代理客户端本身仍需保持运行,因为 Proxifier 需要连接它提供的本地端口。

5. 准备直连例外

建议始终让本机回环地址直接连接:

1
2
3
localhost
127.0.0.1
::1

如果还需要访问路由器、NAS、打印机或公司内网,可以将以下私有地址段设为直连:

1
2
3
10.0.0.0/8
172.16.0.0/12
192.168.0.0/16

这样可以避免全局代理导致本地代理端口或局域网设备无法访问。

6. 安装与权限

建议从 Proxifier 官网 获取安装程序。Windows Standard Edition 安装时需要管理员权限,并会安装相应的网络组件。

Portable Edition 无需正常安装,但不能处理部分后台服务及没有图形界面的应用。如果需要代理系统服务或命令行程序,通常应使用 Standard Edition。

三、配置 Proxifier

1. 添加代理服务器

打开 Proxifier,依次进入:

1
Profile → Proxy Servers → Add

填写代理信息:

  • Address:代理地址,例如 127.0.0.1
  • Port:SOCKS 或 HTTPS 代理端口;
  • Protocol:通常选择 SOCKS Version 5
  • Authentication:远程代理要求认证时填写账号密码。

填写后点击 Check 测试代理。如果连接和数据传输测试均成功,说明代理入口基本可用。

2. 创建程序分流规则

进入:

1
Profile → Proxification Rules

例如只让 Telegram 通过代理:

1
2
3
4
5
Name: Telegram
Applications: telegram.exe
Target Hosts: Any
Target Ports: Any
Action: SOCKS5 127.0.0.1:7891

然后将 Default 设置为 Direct。规则顺序可以是:

1
2
3
1. Localhost  → Direct
2. Telegram   → SOCKS5 127.0.0.1:7891
3. Default    → Direct

这样只有 Telegram 会经过代理,其他程序保持直接连接。

3. 配置全局代理

如果希望 Proxifier 能处理的连接默认都通过代理,可以将 Default 的 Action 改为指定代理:

1
2
Localhost → Direct
Default   → SOCKS5 127.0.0.1:7891

不建议删除默认的 Localhost → Direct 规则,否则本机程序之间的通信可能被错误发送给代理。

4. 按域名进行分流

例如只让某个网站通过代理,可以新建规则:

1
2
3
4
Applications: Any
Target Hosts: example.com; *.example.com
Target Ports: Any
Action: Proxy

该规则应放在 Default 之前。

5. 配置局域网直连

在全局代理规则之前创建一条规则:

1
2
3
Name: LAN Direct
Target Hosts: localhost; 127.0.0.1; 10.0.0.0/8; 172.16.0.0/12; 192.168.0.0/16
Action: Direct

随后再让 Default 通过代理,即可实现“局域网直连、其他连接走代理”。

四、DNS 解析设置

进入:

1
Profile → Name Resolution

启用 Resolve hostnames through proxy 后,域名会交给代理端解析,适用于以下情况:

  • 本地 DNS 无法正确解析目标域名;
  • 不希望域名查询直接发送给本地 DNS;
  • 域名在本地和代理所在地的解析结果不同。

不过,代理 DNS 模式可能为域名分配类似 127.8.*.* 的临时占位地址,这时按目标 IP 编写的 Proxifier 规则可能无法正常匹配。

通常可以先保留自动检测模式;只有遇到 DNS 解析失败或确实需要代理解析时,再强制启用该功能。

五、如何检查代理是否生效

Proxifier 主窗口会显示实时连接信息,包括:

  • 发起连接的应用和进程;
  • 目标域名、IP 与端口;
  • 命中的规则;
  • 使用的代理服务器;
  • 连接成功、失败或超时状态。

启动目标程序后,观察 Connections 和日志区域。如果对应连接显示命中了指定规则并经过代理,说明配置已经生效。

还可以让浏览器通过该规则访问 IP 查询网站,对比代理前后的出口 IP。

六、常见问题

1. 代理测试成功,但程序仍然无法联网

程序可能主要使用 UDP,而 Proxifier 主要处理 TCP。游戏、语音通话及浏览器 QUIC/HTTP3 都可能遇到这种情况。浏览器可以尝试关闭 QUIC,使其回退到基于 TCP 的连接;如果软件高度依赖 UDP,则应考虑 TUN 模式或 VPN。

2. 日志中出现连接循环或大量失败

依次检查:

  • 代理客户端自身是否被错误地再次代理;
  • 127.0.0.1localhost 是否保持直连;
  • 目标应用内部是否又配置了一层代理;
  • Proxification Rules 的排列顺序是否正确。

3. 浏览器代理可用,但 Proxifier 检查失败

填写的代理可能只是普通 HTTP 代理,并不支持 CONNECT 隧道。普通 HTTP 代理能力有限,建议确认服务端支持 HTTPS CONNECT,或者改用 SOCKS5。

4. 开启代理后无法访问内网

localhost、私有 IP 地址段和公司内部域名加入 Direct 规则,并确保直连规则位于全局代理规则之前。

5. SOCKS5 是否等于加密连接

不等于。SOCKS5 主要负责流量转发,本身不保证传输内容加密。访问 HTTPS 网站时,网站流量仍由 HTTPS 保护;但本机到远程 SOCKS5 服务器之间的其他数据未必加密。使用远程代理时,应确保代理来源可信,并优先通过安全的加密隧道承载连接。

七、最小可用配置清单

正式使用前,可以按照下面的清单检查:

1
2
3
4
5
6
7
□ 代理客户端已经运行
□ 已确认代理地址、端口和协议
□ 优先使用 SOCKS5
□ Proxifier 的 Check 测试已经通过
□ 已找到需要代理的程序 .exe
□ Localhost 与局域网地址保持直连
□ 目标程序没有配置重复代理

一个常见的最小配置如下:

1
2
3
4
5
6
7
8
代理客户端:Clash / v2rayN
代理入口:127.0.0.1:7891
代理协议:SOCKS5

Proxifier 规则:
Localhost → Direct
指定程序  → SOCKS5 127.0.0.1:7891
Default   → Direct

完成这些设置后,Proxifier 就可以在不影响其他程序的前提下,让指定应用稳定地通过代理访问网络。

comments powered by Disqus
Wishing you good luck and happiness every day!今天小雨,愿每一次阅读都带给你温暖与收获
使用 Hugo 构建
主题 StackJimmy 设计