有人有在以上 Linux 发行版上运行的 VPN 拆分隧道吗?我已关注此(优秀)指南这在某种程度上似乎起了作用。
问题是,正如评论中列出的,vpn 用户似乎有与 DNS 相关的问题,这基本上使整个设置无效。评论中有人建议以下方法可以解决:
sudo apt install openvpn-systemd-resolved
然后在 openvpn.conf 中重新配置 Up/Down 以使用以下内容:
up /etc/openvpn/update-resolv-conf
down /etc/openvpn/update-resolv-conf
但我的 vpn 用户仍然没有任何连接。
不用说,这是我第一次接触家庭实验室/Linux,因此,任何能帮我解决这个问题的帮助都将不胜感激。
编辑
我正在尝试做的事情:
我正在尝试在我的 Ubuntu 22.04 服务器上配置一个 vpn 用户,以使用接口 tun0 上的 VPN 连接,同时允许所有其他流量使用接口 enp89s0 上的主家庭以太网连接。
问题是什么:
VPN 用户无法访问互联网,而其他用户仍保持完全连接。例如,运行以下命令时
sudo -u vpn -i -- curl ipinfo.io
请求最终超时并出现以下错误:
curl: (28) Failed to connect to ipinfo.io port 80 after 130351 ms: Connection timed out
我已尝试过:
删除对 /etc/openvpn/update-resolv-conf 的引用以排除不良/过时的 DNS 脚本。
确保符号链接 /etc/resolv.conf -> ../run/systemd/resolve/stub-resolv.conf 在我执行所有操作后保持完好
在 /etc/systemd/resolved.conf 中添加以下行
DNSOverTLS=opportunistic
通过在我的 opvn 配置中添加以下 3 行来强制使用特定的 DNS 服务器
拉动过滤器忽略“dhcp 选项 DNS”dhcp 选项 DNS 9.9.9.9 dhcp 选项 DNS 149.112.112.112
除此之外,还有疯狂和牵强的想法...没有任何一个是奏效的。
为了确认,我的 tun0 接口工作正常,我已通过从 ovpn 配置中删除以下行来验证这一点:
route-noexec
然后
curl ipinfo.io
成功返回VPN连接ip信息。
@mpboden 我已按照你解决方案中的所有步骤进行了操作您列出的问题,问题仍然存在。
谢谢