OpenVPN e resolvido pelo sistema


9

Como alguém usa o dns enviado por um servidor openvpn com systemd-resolved?

Antes de eu decidir 'atualizar' para systemd-networkd. Eu poderia usar alguma variante do script openvpn-resolv-conf para chamar resolvconf para gerenciar entradas no /etc/resolv.conf ao estabelecer com êxito um túnel vpn.

Isso me permitiria resolver nomes na extremidade remota do túnel VPN.

Agora que o resolvido pelo sistema gerencia o /run/systemd/resolved/resolv.conf, é possível adicionar automaticamente o DNS enviado por uma conexão openvpn à lista de servidores de nomes usados ​​para resolução?

Respostas:



2

Edit : a partir de hoje, esta solução é principalmente obsoleta. Usuários de versões mais recentes do systemd devem consultar a solução fornecida pelo Piotr Dobrogost.

O truque é criar um arquivo de configuração de rede temporário com as configurações de DNS e, em seguida, reiniciar systemd-networkpara aplicar as configurações globais de DNS.

Eu escrevi um script modificado que faz exatamente isso. Você pode conferir aqui: update-systemd-network.sh


Eu acho que há uma condição de corrida com a criação de rotas enviadas através da configuração do openvpn no reinício do systemd-networkd. No entanto, em vez de criar uma nova configuração de rede e reiniciar systemd-networké possível criar um arquivo muito semelhante em /run/systemd/resolved-conf.d/e, em seguida, reiniciar systemd-resolvedque parece funcionar
sw1nn

parece que os recursos acima em systemd-resolved foram adicionados em 229 após a minha pergunta original.
sw1nn

De acordo com @grawity de #systemd - a maneira correta de fazê-lo funcionar é chamar org.freedesktop.resolve1.Manager.SetLinkDNS()via DBus
Piotr Dobrogost
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.