Na generalidade absoluta, não é possível definir uma rota por aplicação, mesmo em PCs modernos. No entanto , existe um grande número de soluções partial para este problema, com diferentes graus de complexidade.
Felizmente para você, o seu caso é o mais simples possível, porque basicamente você tem um aplicativo que se conecta sempre ao mesmo endereço IP. Você faz da seguinte maneira. Suponha que, depois de ter iniciado a VPN, você tenha uma tabela de roteamento da seguinte forma:
# 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
e que o seu aplicativo, rclone deseja se conectar a um servidor com o endereço IP 1.2.3.4 . Tudo o que você precisa fazer é adicionar uma rota através do seu gateway padrão ( ie , a sem VPN, 192.168.73.1 acima) para < em> 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
(onde eu usei minha interface, que é chamada eth0 , e o endereço IP do meu pc, 192.168.73.66 , você terá que adaptá-los ao seu caso específico ). Isso simplesmente instrui a tabela de roteamento a ignorar sua interface virtual, que é chamada tun0 acima, mas pode ser tap0 , ppp0 , ou algo assim em seu caso.
Na verdade, o princípio usado é o mesmo que usei em esta resposta semelhante, embora aparentemente não relacionada.