Proxifier + Antigravity + Clash 兼容性指南 (EAAC 反作弊系统防火墙修复)

01. 背景与现象

在构建基于 Clash + Antigravity + Proxifier 的复杂分流网络环境时,常遇到两个核心冲突,严重影响“查资料”“游戏”之间的切换体验:

  1. 反作弊冲突 (EA Anti-Cheat):

    启动《战地1》时,EAAC 拦截启动并报错:

    本软件无法与游戏同时使用:Proxifier。即使关闭软件界面也无效。

    img

  2. 防火墙阻断 (Stateful Inspection):

    电脑重启后,Proxifier 工作正常,但 Antigravity 无法连接。目前的临时方案是“关闭 Windows 防火墙 -> 连接成功 -> 再开启防火墙”,但这显然不是长久之计。

02. 原理分析 (Root Cause)

A. 为什么关了软件还是报错?

Proxifier 依赖内核驱动 ProxifierDrv.sys 接管流量。该驱动默认为“自动启动 (Auto)”。关闭 GUI 界面仅仅是杀死了用户层进程,内核层的驱动依然在运行。EAAC 只要检测到该驱动驻留,就会认定环境不干净并实施拦截。

B. 为什么需要开关防火墙?

这是防火墙的状态检测 (Stateful Inspection) 机制导致的。Antigravity 启动时的初始握手(Handshake)被防火墙规则拦截。短暂关闭防火墙允许连接建立后,连接状态变为 ESTABLISHED。此时再开启防火墙,默认规则会放行已建立的连接,产生“看似好了”的假象。

03. 解决方案 A:驱动热切换脚本 (解决游戏报错)

通过批处理脚本实现“游戏模式”与“工作模式”的一键切换。

步骤:

  1. 新建文件 ProxifierSwitch.bat
  2. 复制下方代码。
  3. 右键 -> 以管理员身份运行
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 阻断)

依靠开关防火墙来恢复连接存在安全隐患。正确的做法是添加永久放行规则。

步骤:

  1. 管理员身份打开 CMD 或 PowerShell。
  2. 直接复制并运行以下两条命令(已配置好 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.参考文章

Comments