我想通过 Windows 上的应用程序将流量重定向到特定网络接口。这通常称为“拆分隧道”,许多人经常这样做以选择性地发送流量,例如通过 VPN。
SuperUser 中有几个答案建议:
- 使用以下软件将不支持 SOCKS 的应用程序“SOCKS化”代理程序
- 使用以下软件强制绑定IP强制应用程序使用特定接口
- 根据目标 IP 或域实施一些限制
- 使用虚拟机
- 使用网络接口指标
- 使用防火墙阻止应用程序流量
您可以通过查看以下问题的答案来找到大部分建议:
所有这些方法要么太过黑客(例如 ForceBindIP 在 DLL 中注入信息),要么无法实现每个应用程序隧道的目标(例如按目标 IP 进行过滤没有用)。
一般来说,似乎没有官方的方法来实现此功能。
尽管如此,我注意到某些 VPN 供应商提供了此功能(通常他们称之为白名单/黑名单应用程序)。他们是如何实现的?他们是否使用类似于他们自己的 ForceBindIP 实现的东西?
一些允许在 Windows 上按应用程序进行拆分隧道的 VPN:质子VPN和PureVPN。此外,ProtonVPN 似乎确实为 VPN 创建了一个新的网络适配器,因此他们必须有办法通过该接口路由特定于应用程序的流量。
最后,如果它有任何帮助(或进一步混淆),Windows 文档说明了一种实现此目的的方法,但它是通过使用VPN 配置文件和 MDM。