分流隧道的局限性
分流隧道的限制
2021年9月2日 功能
你已经来到我们分流隧道系列的中途!在第三部分,我们将稍微技术性地检查我们的分流隧道实现的一些限制,以及如何解决它们。
让我们直接进入分流隧道解决方案所面临的限制,我们同时也会提到如何应对这些限制。
名称解析
由于大多数平台上的 DNS 配置和使用方式,即使是被选择排除流量的应用程序,请求仍会在隧道内发送。
让我们使用游戏场景来看看这可能引发的问题
假设你身处日本,并连接到位于加州的 VPN 伺服器。为了在玩你最喜欢的线上游戏时实现低延迟,你使用分流隧道将游戏流量排除在外,让其不必穿越海洋。
和许多线上游戏一样,你所玩的游戏伺服器遍布全球,并使用 DNS 来分配伺服器给玩家。因此,游戏会选择离你 VPN 位置最近的伺服器,在这个例子中是加州的伺服器。
因此,尽管你的游戏流量正在穿越隧道多亏了分流隧道,但它却发送到了遥远的伺服器,这意味著你无法感受到分流隧道本应提供的性能提升。
有两种方法可以减轻这个问题
在游戏客户端启用 DoH/DoTHTTPS 上的 DNS/TLS 上的 DNS,以覆盖 VPN 伺服器上的 DNS 劫持。这样 DNS 流量将被加密并在你和配置的 DNS 伺服器间传送。你可以尝试使用我们的 DoH/DoT 服务,但如果我们的 DNS 伺服器距离你较远,那么就无法获得任何收益。连接到附近的 VPN 伺服器。在这种情况下,游戏伺服器仍会根据 VPN 伺服器的位置来选择。但是,由于你和伺服器在同一区域,最终选择的应该是一个靠近你们的游戏伺服器。竞争网络软体在 Windows 中
如果你有多个应用程序内核驱动在竞争管理新的网络连接,可能会导致分流隧道停止工作。你会发现一些分流的应用程序处于离线状态。
可能会与分流隧道功能发生冲突的软体范例包括代理软体、防火墙和类似的安全软体。有时候,冲突是由于配置重叠造成的;有时候,仅仅是同时安装这些应用程序也可能导致冲突。
如果以这种方式导致分流隧道停止运作,那么只会影响分流的逻辑。安全性仍然得到保证,防泄漏保护也依然有效。换句话说,所有无法分流并且要进入隧道的流量都会安全阻挡。这与我们检查的其他分流隧道实现方式形成了鲜明对比。
此问题只能通过调整已安装应用程序的配置或其内部设置来解决。
本地通讯在 Windows 中
此问题仅在 Windows 的分流隧道实现中存在,因为出现了一些完美的适合条件。
存在著客户端软体尝试连接到本地主机的问题。被排除的应用程序通常无法连接到本地服务的 UDP 套接字。如果被排除的应用需要与本地机器上的守护进程进行通讯,并使用网络套接字进行通讯,这可能会造成问题。例如,如果被排除的应用尝试使用在本地机器上运行的代理服务。
对于这个问题没有通用的解决方法。你需要根据具体情况逐一调整配置。
连接生命周期在 Linux 中
此问题仅存在于我们在 Linux 上的分流隧道实现中。
从被排除的应用程序建立的大多数连接都依赖于 VPN 隧道的生命周期。但如果目的地地址位于本地网络,则会有例外情况,也就是说,与局域网中设备的连接。
因此,每当你切换 VPN 伺服器或明确断开 VPN 隧道时,受影响的连接将会中断。
我该如何使用 Mullvad 的分流隧道功能?
此功能目前可在 Windows、Android 和 Linux 版本的 Mullvad VPN 应用中使用。
你可以在 设置 gt 高级 gt 分流隧道 中找到这个设置。针对不同平台的具体细节,可以参见我们的 分流隧道指南。
接下来
此文章是关于分流隧道的五部分系列文章中的第三部分,全部由一位 Mullvad 开发者撰写。敬请期待下一部分,将讨论 分流隧道与流量泄漏。
如果你错过了之前的文章,欢迎你随意浏览:
什么是分流隧道?分流隧道何时有用?分流隧道的限制本文分流隧道会泄漏流量吗?安全分流隧道的基础为普世隐私权而奋斗,Mullvad VPN
蜜糖商店奈飞