OpenVPN 多種配置

OpenVPN 多種配置

我有 OpenVPN 設定來透過 VPN 路由所有流量。我想知道是否有一種方法可以切換是路由所有流量還是僅路由發送到每個客戶端該網路的流量。

例如,如果我位於不受信任的網路上,我希望所有流量都透過 VPN 路由。然而,稍後當在受信任的網路上時,我可能只想透過 SSH 存取計算機,但不希望路由所有流量,因為它會不必要地變慢。

這可能嗎?

答案1

如果伺服器向您發布了預設路由,您可以忽略它,例如

route delete default tun0

您可以類似地恢復 VPN 連線前的預設路由。

另一方面,如果伺服器不發布此類路由,您可以選擇透過 VPN 路由所有流量,但在這種情況下,您需要確保 (a) VPN 伺服器能夠處理此問題,並知道如何將您的流量進行NAT /路由到互聯網,並處理回复,並且(b) 確保您沒有多個預設路由,並且您仍然可以到達VPN 端點。

簡而言之,假設你控制了你的客戶,你就控制了除其他外它的路由表,您可以按照自己的喜好設定它們。路由較少的到伺服器比它希望的要容易;路由更多的比它可能需要的需要它的合作,或至少是它的能力;但兩者都是可能的。

答案2

基於刪除 @MadHatter 提出的路線的想法,我創建了一個別名,其本質上是這樣的:

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

x.x.x.x/24您透過 VPN 連接到的內部網路的路徑在哪裡。

--route-nopull現在,當我只想對內部網路的流量進行 VPN 處理時,我可以使用此別名;如果我希望所有流量都透過 VPN 進行路由,則可以使用設定 without 。

相關內容