一、问题描述
Manjaro gnome 自带 openvpn 命令,sudo openvpn uat.ovpn 连接,windows 平台下连接正常,内网域名可解析,使用 linux 平台,dns 服务失效。
二、问题排查
定位日志
Sun Nov 17 12:10:11 2019 PUSH: Received control message: ‘PUSH_REPLY,redirect-gateway def1 bypass-dhcp,dhcp-option DNS 192.168.1.253,dhcp-option DNS 111.111.0.20,route-gateway 10.8.0.1,topology subnet,ping 10,ping-restart 120,ifconfig 10.8.0.10 255.255.255.0,peer-id 0,cipher AES-256-GCM’
Sun Nov 17 12:10:11 2019 OPTIONS IMPORT: timers and/or timeouts modified
Sun Nov 17 12:10:11 2019 OPTIONS IMPORT: –ifconfig/up options modified
Sun Nov 17 12:10:11 2019 OPTIONS IMPORT: route options modified
Sun Nov 17 12:10:11 2019 OPTIONS IMPORT: route-related options modified
Sun Nov 17 12:10:11 2019 OPTIONS IMPORT: –ip-win32 and/or –dhcp-option options modified
Sun Nov 17 12:10:11 2019 OPTIONS IMPORT: peer-id set
Sun Nov 17 12:10:11 2019 OPTIONS IMPORT: adjusting link_mtu to 1624
Sun Nov 17 12:10:11 2019 OPTIONS IMPORT: data channel crypto options modified
dns 地址已经探测到,但非 win32 平台自动配置失败手动配置/etc/resolv.conf,添加 nameserver 就可以了到第一个就可以了😒
emmm…
有没有自动配置方案呢?
二、解决方案
- 下载移动重命名脚本/etc/openvpn/update-resolv-conf.sh
git clone http://www.github.com/masterkorp/openvpn-update-resolv-conf - 修改配置 uat.ovpn 文件,在文件末尾追加内容
script-security 2
up /etc/openvpn/update-resolv-conf.sh
down /etc/openvpn/update-resolv-conf.sh
安装 openresolv
#yum、apt-get、yay均可
启动 openvpn 客户端
sudo openvpn /etc/openvpn/client/uat.ovpn
#输入root密码及私钥后即可连接
- 浏览器测试 dns 效果吧