当我使用 VPN 并连接到具有注册或登录功能的公共 wifi(Amtrack、机场、一些咖啡馆和图书馆)时,需要很长时间并且会加载许多失败的网页才能最终正常工作并显示登录窗口,通常需要 15 分钟或更长时间。
我已经尝试了一切这里,以及尝试从网络浏览器访问 8.8.8.8(谷歌的 DNS)的单独提示。这些想法似乎都无济于事——但关闭 VPN 可以立即奏效。
为什么 VPN 会阻碍这种检测?除了关闭网络应用程序并暂时禁用 VPN 之外,还有其他(安全的)解决方法吗?
我在 Mac 上,但在这里询问,因为我怀疑这是一种与操作系统无关的现象。
答案1
为什么 VPN 会阻碍这种检测?除了关闭网络应用程序并暂时禁用 VPN 之外,还有其他(安全的)解决方法吗?
具有基于浏览器的登录页面(又名“强制门户”)的 Wi-Fi 网络通过拦截普通的 HTTP 请求以及普通的 DNS 查询来工作,并使响应重定向到本地网络的登录网页而不是您想要的真实服务器。
但是,当您连接到全隧道 VPN 时,这些请求对本地网络不再可见 - 它们被隧道传输到加密的 VPN 连接中。事实上,对于许多人来说使用 VPN 的意义是为了防止被当地网络拦截。
当然,大多数网络实际上会阻止所有非 HTTP 流量,直到您登录,因此 VPN 隧道请求最终无处可去。很可能这 15 分钟就是您的 VPN 软件放弃并完全关闭隧道所需的时间。
操作系统可以通过专用的强制门户检测服务来解决这个问题,该服务会单独测试每个接口,绕过系统的路由表(例如 Linux 上的 NetworkManager 就是这样做的)——然后以同样绕过 VPN 的方式打开登录网页。(当然,绕过 VPN 通常是不受欢迎的,许多“以隐私为导向”的 VPN 应用程序会尝试各种方法来阻止它。)
除此之外,只要您的所有网页浏览都通过 VPN,就没有真正的解决方法。
答案2
需要注意的是:当您已经运行 VPN 时,登录公共 WiFi 将不起作用。
您应该在登录公共 WiFi 时关闭 VPN,然后只有当您可以上网时再将其重新打开。
无需停止所有应用程序,除非那些在这种情况下有问题的应用程序。根据我的经验,在我遇到的所有情况下,操作系统都会自动使用新的互联网进行新连接。
只有永远保持连接打开的程序才会出现问题,但这样做的程序并不多,因为这违反了良好做法。大多数网站都会断开连接打开时间过长的情况。
或者,正如用户 Arjan 所指出的,如果某些正在运行的程序在后台不断建立连接,这可能发生在建立公共 WiFi 连接和 VPN 连接之间的短暂时间内。