我可以在 ubuntu 中为不同的应用程序使用不同的网络吗

我可以在 ubuntu 中为不同的应用程序使用不同的网络吗

我有 ubuntu 16.04,我已经在其中安装了 VPN 来下载东西。

现在我有将数据上传到亚马逊的应用程序 rclone。

rclone 是否可能不使用 VPN,但所有其他应用程序都使用它

答案1

绝对普遍地来说,不是即使在现代个人电脑中,也可以为每个应用程序设置一条路线。然而,有大量的部分的针对这一问题,提出了不同复杂程度的解决方案。

幸运的是,你的情况是最簡單有一种可能,因为基本上你有一个应用程序始终连接到同一个 IP 地址。你可以按如下方式操作。假设在启动 VPN 后,你有一个如下的路由表:

# ip route show
0.0.0.0/1 via 10.8.0.5 dev tun0 
default via 192.168.73.1 dev eth0  proto static  metric 100 
10.8.0.0/24 via 10.8.0.5 dev tun0 
10.8.0.5 dev tun0  proto kernel  scope link  src 10.8.0.6 
128.0.0.0/1 via 10.8.0.5 dev tun0 
169.254.0.0/16 dev eth0  scope link  metric 1000 
192.168.73.0/24 dev eth0  proto kernel  scope link  src 192.168.73.66  metric 100 
IPAddress.Of.Remote.VPN.Server via 192.168.73.1 dev eth0 

并且你的申请,克隆想要连接到具有 IP 地址的服务器1.2.3.4。您所要做的就是通过默认网关添加路由(IE, 唯一的那个没有VPN,192.168.73.1以上)至1.2.3.4

sudo ip route add 1.2.3.4/32 via 192.168.73.1 dev eth0 src 192.168.73.66

(我使用了我的界面,它被称为eth0以及我的电脑的 IP 地址,192.168.73.66,您必须根据具体情况进行调整)。这只是指示路由表绕过您的虚拟接口,该接口称为tun0但可能tap0点对点0,或者你的情况是这样的。

其实,使用的原理和我使用的是一样的 尽管表面上毫无关联,但答案却类似。

相关内容