如何將resolvctl指令放入ovpn設定檔?

如何將resolvctl指令放入ovpn設定檔?

我有一個 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 官方文檔您還有什麼問題嗎?

相關內容