OpenVPN的多种configuration

我有OpenVPN设置路由所有stream量通过VPN。 我想知道是否有方法来切换是否所有的stream量路由或只是每个客户端的networkingstream量。

例如,如果我在不受信任的networking上,我希望所有的stream量通过VPN路由。 然而,后来在一个可信networking上,我可能只想SSH访问机器,但不希望所有的stream量路由,因为它会不必要的慢。

这可能吗?

如果服务器发布默认路由给你,你可以忽略它,例如

route delete default tun0 

并且可以类似地恢复您的pre-vpn-connection默认路由。

另一方面,如果服务器不发布这样的路由,则可以select将所有stream量路由到VPN上,但是在这种情况下,您将需要确保(a)VPN服务器配备了处理这个,并知道如何将您的stream量NAT /路由到互联网,并处理答复,(b)确保您没有多个默认路由,并且仍然可以到达VPN端点。

总之,假设你控制你的客户端,你可以控制其路由表,并且可以设置你喜欢的方式。 减less路由到服务器比它可能希望是容易的; 路由超过它可能需要的合作,或至less是其能力; 但两者都有可能。

基于删除@MadHatter提出的路线的想法,我创build了一个别名,基本上做到这一点:

 sudo openvpn --config /path/to/config --route-nopull sudo ip route add xxxx/24 dev tun0 

其中xxxx/24是您通过VPN连接到的内部networking的path。

现在我可以使用这个别名,当我只想要内部networking的stream量被VPN,并且使用没有--route-nopull的configuration,如果我想所有的stream量通过VPN路由。