Windows 校园网多网卡并行下载与 Steam/Clash 分流工具。
很多校园网会对单个账号、端口或网卡连接限速,例如每条链路约 100 Mbps。当一台 Windows
电脑同时连接了有线网卡、USB 网卡和 Wi-Fi,并且每张网卡都已经独立完成校园网认证、获得
自己的 IPv4 地址和网关、能够单独访问外网时,BrowserMuxQt 可以把下载器创建的不同 TCP
连接分配到这些网卡上,让多连接下载同时利用多条可用链路。
它通过本地 HTTP/HTTPS CONNECT 代理、PAC 规则、Windows 源接口绑定和临时主机路由完成 连接级调度,并提供 Steam 下载分流、单网卡限速和系统代理恢复。
| 已认证链路 | 每条链路上限 | 理论总上限 | 理论下载速度 |
|---|---|---|---|
| 2 张网卡 | 100 Mbps | 200 Mbps | 约 25 MB/s |
| 3 张网卡 | 100 Mbps | 300 Mbps | 约 37.5 MB/s |
实际速度通常低于理论值,并取决于下载服务器是否建立足够多的并发连接、校园网策略、链路质量 和本机性能。单个 TCP 连接仍然只能使用一张网卡。
- 每张网卡都已通过校园网门户、客户端或 802.1X 独立完成认证。
- 每张网卡都有可用的 IPv4 地址和默认网关,并且单独测试可以访问外网。
- 校园网管理规定允许同一用户或设备同时使用这些链路。
- 下载程序会建立多个连接,例如浏览器分段下载、Steam 内容 CDN 或多线程下载器。
- Windows 10/11 允许程序添加临时路由;Steam 分流操作需要管理员权限。
如果第二、第三张网卡本身无法直连外网,BrowserMuxQt 不会把它们算作可用链路,也无法修复 校园网交换机、认证服务器或准入系统对并发连接的限制。
- 程序检测所有带 IPv4 网关的联网网卡,并逐张进行直连健康检查。
- 浏览器访问已知下载域名时,PAC 将请求交给本地 BrowserMux 代理。
- BrowserMux 为每个新 TCP 连接选择一张健康网卡,同时绑定源 IP 和 Windows 接口编号。
- 多连接下载的不同连接因此可以分别占用不同网卡,而失败网卡会暂时冷却并自动切换。
- 可将每张网卡限制在例如
90 Mbps,避免单条链路持续顶满;这不保证校园网不会再次限速。 - 停止使用时,程序只恢复自己保存过的系统代理设置,并清理自己添加的临时路由。
Steam 下载和 Steam 网页不是同一种流量:
- Steam 商店、社区、登录主站:优先交给 Clash,适合网页需要代理的环境。
- Steam 游戏内容与 CDN:交给 BrowserMux 或
DIRECT,避免大型下载消耗代理套餐流量。 - 普通网页:可选择回退到 Clash。
- 游戏实时流量:不进行多网卡聚合,建议固定到延迟最稳定的一张网卡。
Clash 规则应将 Steam 内容域名放在宽泛的 steampowered.com 网页规则之前,并把 Steam
下载策略组设为 DIRECT。订阅更新后应重新检查规则顺序。程序会自动探测 Clash 当前监听
端口,但不会修改 Clash 的订阅、节点或套餐。
- 不是网络桥接,也不会把三张物理网卡伪装成一条更快的二层链路。
- 不是 LACP、网卡 Bonding 或 MPTCP;这些方案需要交换机、服务器或远端聚合节点配合。
- 不会拆分单个 TCP 连接,因此单连接下载不一定提速。
- 不会降低游戏延迟,也不建议让实时游戏连接在多张网卡之间切换。
- 不会绕过校园网认证、隐藏账号或设备记录,也不会规避学校的并发检测和使用规定。
- 自动发现带 IPv4 网关的物理网卡。
- 使用源 IP 和 Windows
IP_UNICAST_IF绑定出站连接。 - 对每张网卡及总流量分别限速。
- PAC 模式将已知下载域名交给 BrowserMux,其余网页可回退到 Clash。
- Steam 商店、社区和登录主站可优先走 Clash,内容 CDN 保持直连。
- 自动探测 Clash 当前监听端口,兼容端口变化。
- Steam 路由脚本会备份配置,并记录临时主机路由供停止时清理。
- 异常退出后可恢复 BrowserMux 自己安装的 Windows 代理设置。
- Windows 10/11
- Python 3.10 或更高版本
- PowerShell 5.1 或更高版本
python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install -r requirements.txt
python browser_mux_qt.py- 确认每张网卡均已认证,并且单独绑定该网卡时可以访问外网。
- 如果普通网页或 Steam 网页需要代理,先启动 Clash。
- 启动 BrowserMuxQt,检测并选择两到三张网卡。
- 设置单网卡和总带宽上限。
- 点击启动代理并安装 PAC。
- Steam 分流需要管理员权限来添加或删除临时主机路由。
- 停止使用时点击恢复系统代理。
程序默认将有线网卡排在 Wi-Fi 前面,但只有健康检查通过的网卡才会参与调度。
.\build_exe.ps1 -Target Stable生成文件位于 dist\BrowserMuxQt-CN3-Stable.exe。
python -m unittest discover -s tests -p "test_*.py" -v- 下载速度取决于服务器并发、校园网策略、认证状态和实际链路质量。
- 本工具不会绕过网络认证,也不隐藏账号、设备或端口记录。
- 不要在未经许可的网络上进行多账号或多链路聚合。
- 桥接多个上联口可能触发环路、MAC 漂移或交换机端口保护,不应用来叠加带宽。
- 使用临时路由前请关闭重要网络任务,并保留程序生成的备份。