我有一個 ovpn 配置來從 Ubuntu 20.04 LTS 連接到專用網路。但每次啟動VPN後我都必須執行這些命令
resolvectl dns tun0 10.0.0.255
resolvectl domain tun0 "~domain1.com"
resolvectl domain tun0 "~domain2.com"
使 dns 與私有子網域一起工作。當我連接到此 VPN 時,是否可以將這些命令包含到 ovpn 設定中並自動執行它們?
答案1
如果你像我一樣使用 network-manager-openvpn,這可能有助於持續解決問題:
sudo nmcli connection modify VPN_NAME \
ipv4.dns-search '~domain1.com, ~domain2.com' ipv6.dns-search '~domain1.com, ~domain2.com' ipv4.dns 10.0.0.255
來源:https://ask.fedoraproject.org/t/systemd-resolved-not-querying-dns-server-set-by-openvpn/9696/9
我沒有嘗試有關 dns 伺服器的部分。當心。這會覆蓋推送的設定。如果您想使用某些網域作為搜尋網域,只需省略「~」即可。
答案2
您可以使用--up
和--down
參數(或up
/down
配置指令)來指向腳本,該腳本將在建立/關閉連線後執行。您可以不是使用 shell 表達式(如--up 'resolvectl dns tun0 10.0.0.255 && resolvectl domain tun0 "~domain1.com"'
) - 它不起作用。
另外,要允許 OpenVPN 呼叫外部腳本,請傳遞--script-security 2
.
請閱讀OpenVPN 官方文檔您還有什麼問題嗎?