我在家里的一台 Ubuntu 机器上安装了 OpenVPN,但当我连接到它时,我的所有网络流量都会经过它。我不希望发生这种情况。
我希望能够只看到本地 LAN 网络,但不路由所有流量。
这怎么可能呢?
谢谢!
答案1
凝结汤姆·延将 的评论转化为答案:
redirect-gateway
确保你的客户端配置中没有以下行- 添加以下行以过滤
redirect-gateway
从 VPN 服务器拉取的任何设置:
拉动过滤器忽略重定向网关
该方法记录在https://community.openvpn.net/openvpn/wiki/IgnoreRedirectGateway,但它只提到了--pull-filter
命令行参数,而不是如何将其添加到配置文件中。
为了完整性,那里还提到了另外两种方法:
- 忽略所有带有
route-noexec
或 的路线route-nopull
- 使用一组
route
指令覆盖它们。即使使用手动路由,这应该也能正常工作redirect-gateway def1
(通过提供四个/2
子网来覆盖def1
的两个/1
路由):
route 0.0.0.0 192.0.0.0 net_gateway route 64.0.0.0 192.0.0.0 net_gateway route 128.0.0.0 192.0.0.0 net_gateway route 192.0.0.0 192.0.0.0 net_gateway
答案2
如果你使用 Ubuntu 机器作为 OpenVpn 服务器,你可以在以下位置找到 OpenVpn 服务器配置
/etc/openvpn/server.conf
或者
/etc/openvpn/server/server.conf
如果你 cat 这个文件它看起来会像这样
ifconfig-pool-persist ipp.txt
push "dhcp-option DNS 8.8.8.8"
push "redirect-gateway def1 bypass-dhcp"
dh none
ecdh-curve prime256v1
tls-crypt tls-crypt.key
crl-verify crl.pem
ca ca.crt
cert server_3BYLUHGJfabF8i1.crt
key server_3BYLUHGJfabF8i1.key
auth SHA256
cipher AES-128-GCM
ncp-ciphers AES-128-GCM
tls-server
tls-version-min 1.2
tls-cipher TLS-ECDHE-ECDSA-WITH-AES-128-GCM-SHA256
client-config-dir /etc/openvpn/ccd
status /var/log/openvpn/status.log
verb 3
您必须评论## push "redirect-gateway def1 bypass-dhcp"
并添加要通过此 VPN 服务器的特定流量子网,例如
push "route 10.2.2.100 255.255.255.255" ## some internet server
push "route 54.201.1.19 255.255.255.255" ##example.com
保存此配置文件后,你可以重新启动OPENVPN服务
systemctl restart [email protected]
答案3
转到 Ubuntu 网络设置中的 VPN 设置可能会有所帮助。然后转到 IPv4 并关闭自动。这似乎取决于 VPN 服务器配置中的设置,但对于某些服务器,在客户端更改此设置可能会阻止通过 VPN 服务器发送所有流量