是否可以在家庭网络中设置每个域/应用程序代理?

是否可以在家庭网络中设置每个域/应用程序代理?

我经常使用 VPN。问题是,大多数时候我并不想让所有东西都通过 VPN 连接传输。我只是想要访问某个被 ISP/政府屏蔽的应用程序、域或服务。

就像 Android 上的 YouTube 应用,或笔记本电脑上的 Twitter 网站。我必须始终保持 VPN 处于打开状态并处于连接状态才能访问这些服务。这会降低已可访问网站的连接速度,或使在线支付变得混乱等......

我想知道是否有办法使用 vpn/代理连接,可以针对每个应用程序/域进行设置?

我知道这在普通调制解调器和 wifi 站上无法实现。但也许可以有一台可以充当中间件或自定义路由器的 PC/服务器。它可以查看请求,查看哪些请求符合管理员设置的规则,并应将其定向到 VPN 服务器。

我在想也许有一个树莓派,或者一台小型电脑,上面有一个可以做到这一点的 nodejs 应用程序……?

顺便说一句,想出标题的名字很难,但如果您对这个问题有一个好的标题,请继续编辑。

答案1

除发出请求的 PC 之外的其他设备执行此操作会非常困难,尽管您可以通过缓存推送内容并让其发挥一些魔力 - 但非常困难、混乱且依赖协议。

然而,有一个相当简单的中间立场 - 你可以通过 IP 地址来完成,而不是通过域名。IP 范围,这是相对简单的。

VPN 看起来就像一个虚拟连接。通常,要么所有内容都通过它路由,要么只路由特定范围(对于企业而言)。也就是说,它在操作系统看来就像一个标准连接,因此(假设远程端执行 NAT 或您有一个与之关联的“正确”IP)您可以简单地将一些 IP 地址/范围路由到 VPN,默认路由到常规连接。具体如何执行此操作取决于您的操作系统和 VPN 类型和提供商,但最坏的情况下,带有路由的脚本应该可以满足您的要求。

更加困难的是配置一个强大的路由器(例如 dd-wrt)来根据端口执行基于策略的路由。

答案2

您正在寻找的功能称为“拆分隧道”,基本上是通过 VPN 路由某些流量,而不路由其他流量。您可以在 Windows/Mac 上在一定程度上做到这一点。但如果 VPN 提供商支持,则更容易通过使用其软件来访问它。尽管您获得的控制程度在不同的 VPN 之间有很大差异,并且许多 VPN 不将其作为一项服务包含在内。

对于家庭网络,VPN 供应商定制的 wifi 路由器附带其软件并内置此功能,一些 VPN 供应商还提供流行路由器的固件。这些可以使家庭网络的路由/拆分隧道设置变得容易得多。尽管您可能可以通过手动配置安装了 DD-WRT 或 Tomato 的路由器来实现相同的结果,正如 @davidgo 提到的那样。

当然,您可以使用中间件,例如 raspberry Pi。不过,以同样的价格购买兼容 DD-WRT 的路由器可能更简单。

供参考,Comparitech 的文章如何分割隧道 VPN 流量

相关内容