当VPN未连接时,可以阻止特定的应用程序 . Block torrent program if VPN is not connected . 本质很简单:Windows有两个网络组"Public"和"Private" . 当您在专用网络上时,应用程序将被阻止,但不会通过公共网络阻止 .

What I want 是允许通过专用网络连接 Build VPN连接,但不允许任何其他连接通过专用(也不允许入站,也不允许出站) . 然后,当 Build VPN连接(公共网络)时,允许通过该公共网络的所有连接 .

我的以太网连接设置为专用网络,我的VPN设置为公共网络 .

Outound rules:

  • Private Profile 中,我将"Outbound connections:"设置为"Block"(默认为允许)

  • Public Profile 中,我将"Outbound connections:"设置为"Block"(默认为允许)

  • 除了mDNS(UDP本地5353到远程任何)之外,我删除了所有出站规则

  • 我添加了一条规则:允许,所有配置文件,UDP,本地端口任意,远程端口53(用于DNS查找)

  • 我添加了VPN程序:所有配置文件,允许,任何协议,任何本地端口,任何远程端口

Inbound Rules:

  • 我添加了VPN程序:所有配置文件,允许,UDP和TCP,任何本地端口,任何远程端口

到现在为止还挺好!通过这些配置,我的VPN程序可以创建连接,并获取新的IP地址 . 但是,所有其他连接仍然被阻止 .

Now the problem ,我创建了另一个出站规则,以允许Public配置文件的所有内容 . Windows防火墙告诉我私有和公共配置文件都处于活动状态(连接VPN时) . 虽然,当我打开Firefox时,我根本没有连接......

  • 如果我将最后一个出站规则设置为允许所有私有,我在VPN丢弃时 Build 连接,但在VPN打开时没有连接 .

  • 如果我将最后一个出站规则设置为允许所有公共和私有,我连接VPN时都有连接 .

My Question: 当私有和公共网络处于活动状态时,我需要更改以允许所有内容,但只有当私有网络处于活动状态时才需要阻止 .

注意:我还尝试默认允许所有出站,并设置规则以阻止私有下的所有出站 . 到目前为止,这种方法也失败了 . 似乎私有规则覆盖公共规则?