01. 背景与现象
在构建基于 Clash + Antigravity + Proxifier 的复杂分流网络环境时,常遇到两个核心冲突,严重影响“查资料”与“游戏”之间的切换体验:
反作弊冲突 (EA Anti-Cheat):
启动《战地1》时,EAAC 拦截启动并报错:
本软件无法与游戏同时使用:Proxifier。即使关闭软件界面也无效。

防火墙阻断 (Stateful Inspection):
电脑重启后,Proxifier 工作正常,但 Antigravity 无法连接。目前的临时方案是“关闭 Windows 防火墙 -> 连接成功 -> 再开启防火墙”,但这显然不是长久之计。
02. 原理分析 (Root Cause)
A. 为什么关了软件还是报错?
Proxifier 依赖内核驱动 ProxifierDrv.sys 接管流量。该驱动默认为“自动启动 (Auto)”。关闭 GUI 界面仅仅是杀死了用户层进程,内核层的驱动依然在运行。EAAC 只要检测到该驱动驻留,就会认定环境不干净并实施拦截。
B. 为什么需要开关防火墙?
这是防火墙的状态检测 (Stateful Inspection) 机制导致的。Antigravity 启动时的初始握手(Handshake)被防火墙规则拦截。短暂关闭防火墙允许连接建立后,连接状态变为 ESTABLISHED。此时再开启防火墙,默认规则会放行已建立的连接,产生“看似好了”的假象。
03. 解决方案 A:驱动热切换脚本 (解决游戏报错)
通过批处理脚本实现“游戏模式”与“工作模式”的一键切换。
步骤:
- 新建文件
ProxifierSwitch.bat。
- 复制下方代码。
- 右键 -> 以管理员身份运行。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
| @echo off cd /d %~dp0
:: Check for Admin rights net session >nul 2>&1 if %errorLevel% == 0 ( goto :MENU ) else ( echo [ERROR] Right-click and select "Run as administrator" pause exit )
:MENU CLS ECHO ========================================== ECHO Proxifier Driver Manager ECHO ========================================== ECHO. ECHO [1] GAME MODE (Stop Driver) ECHO [2] WORK MODE (Start Driver) ECHO [3] Check Status ECHO. SET /P "ID=Select (1-3): "
IF "%ID%"=="1" GOTO GAMEMODE IF "%ID%"=="2" GOTO WORKMODE IF "%ID%"=="3" GOTO STATUS EXIT
:GAMEMODE :: Use sc.exe to ensure compatibility with PowerShell sc.exe stop ProxifierDrv sc.exe config ProxifierDrv start= demand ECHO. ECHO [OK] Driver Stopped. Ready to launch game. PAUSE GOTO MENU
:WORKMODE ECHO. ECHO [WARNING] Ensure Game is COMPLETELY CLOSED! ECHO Restoring driver while game is running risks a BAN. ECHO. PAUSE sc.exe config ProxifierDrv start= demand sc.exe start ProxifierDrv :: Optional: Auto-start GUI (Remove "::" below to enable) :: start "" "C:\Program Files (x86)\Proxifier\Proxifier.exe" ECHO. ECHO [OK] Driver Started. PAUSE GOTO MENU
:STATUS sc.exe query ProxifierDrv PAUSE GOTO MENU
|
04. 解决方案 B:防火墙白名单 (解决 Antigravity 阻断)
依靠开关防火墙来恢复连接存在安全隐患。正确的做法是添加永久放行规则。
步骤:
- 以管理员身份打开 CMD 或 PowerShell。
- 直接复制并运行以下两条命令(已配置好 Antigravity 路径):
1 2 3 4 5
| :: 允许 Antigravity 入站连接 netsh advfirewall firewall add rule name="Antigravity_Allow_In" dir=in action=allow program="Your Antigravity.exe Path" enable=yes
:: 允许 Antigravity 出站连接 netsh advfirewall firewall add rule name="Antigravity_Allow_Out" dir=out action=allow program="Your Antigravity.exe Path" enable=yes
|
05. 总结
- 对于 EAAC/BattlEye: 必须在内核层停止
ProxifierDrv 服务(使用脚本中的 sc stop)。
- 对于网络软件: 遇到冷启动连接失败,应配置精准的防火墙规则(Allow Rule),避免破坏系统整体安全性。
06.参考文章