Ubuntu 22.04.3 Server配置VPN分流后VPN用户无网络连接求助
Ubuntu 22.04.3 Server配置VPN分流后VPN用户无网络连接求助
大家好,我是刚接触Homelab和Linux的新手,现在遇到了VPN分流配置的棘手问题,想请各位大佬帮忙指点一下。
我的需求
我想在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
我已经尝试过的操作
最初跟着一份很棒的指南配置,基本框架能跑起来,但遇到了评论里提到的DNS问题。后来尝试了评论区的建议:
- 安装相关组件:
sudo apt install openvpn-systemd-resolved - 调整openvpn.conf里的Up/Down脚本配置:
up /etc/openvpn/update-resolv-conf down /etc/openvpn/update-resolv-conf
但这么操作后,
vpn用户还是完全没有网络连通性。- 安装相关组件:
后续又尝试了一堆排查方法,都没能解决问题:
- 移除openvpn.conf里对
/etc/openvpn/update-resolv-conf的所有引用,排除老旧DNS脚本的干扰 - 确认
/etc/resolv.conf指向../run/systemd/resolve/stub-resolv.conf的软链接始终保持完好 - 在
/etc/systemd/resolved.conf中添加DNSOverTLS=opportunistic配置 - 在ovpn配置文件里强制指定第三方DNS服务器:
pull-filter ignore "dhcp-option DNS" dhcp-option DNS 9.9.9.9 dhcp-option DNS 149.112.112.112 - 还有一些奇奇怪怪的思路,就不一一列举了...
- 移除openvpn.conf里对
已确认的正常状态
我已经验证过tun0接口本身是正常工作的:把ovpn配置里的route-noexec注释掉后,直接执行curl ipinfo.io能成功返回VPN的IP信息,说明VPN连接本身没有问题。
另外,我也完整跟着@mpboden在另一个问题里给出的解决方案一步步操作了,但问题依旧存在。
真心希望各位能给我一些方向或者排查建议,谢谢大家!
备注:内容来源于stack exchange,提问作者BlueisDue
相关产品推荐
相关产品推荐

