Estou executando o ubuntu xenial 16.04
Estamos usando o openvpn para conectar-se a uma nuvem privada virtual. Essa nuvem possui seu próprio servidor DNS (assim como nossa rota local - casa ou escritório).
Quando eu me conecto à VPN, todos os IPs dessa rede estão disponíveis, mas não consigo acessar nenhum pelo nome do host. O motivo é simples: o arquivo resolv.conf ainda mostra o servidor de nomes do escritório local. Se eu sobrescrever manualmente o resolv.conf para ter o servidor de nomes correto, tudo ficará bem.
Então, como posso reconfigurar automaticamente o resolv.conf ao conectar-me à VPN?
Posso conectar-me a um evento do sistema e executar um script?
--register-dns
opção? Como alternativa, existem opções do lado do cliente que você pode definir, como dhcp-options (o outro lado das instruções aqui: openvpn.net/index.php/open-source/documentation/howto.html#dhcp )Respostas:
O pacote OpenVPN possui um script para isso em
/etc/openvpn/update-resolv-conf
. Você precisa configurá-lo com:Isso buscará os endereços do servidor DNS das
dhcp-option DNS
opções passadas pelo servidor / ponto OpenVPN e configurará deresolvconf
acordo. Ele lidadhcp-option DOMAIN
também.No entanto, não é perfeito, porque isso anexará esses servidores de nomes à lista de servidores de nomes existentes, em vez de sobrescrever a lista de servidores de nomes. Se você estiver usando
openresolv
o-x
pode ser usado para substituir a configuração de DNS em vez de preprending a ele.Se você estiver usando
systemd-resolved
, poderá usar o/etc/openvpn/update-systemd-resolved
que se encaixa emsystemd-revolved
vez deresolvconf
.No Debian, esse script está no
openvpn-systemd-resolved
.fonte
script-security 2
ou executar o seuopenvpn
com--script-security 2
Aqui está a solução que eu encontrei: Existe uma opção que permite executar um script quando o túnel está em funcionamento. Eu uso a opção para substituir essencialmente o arquivo resolv.conf por um que eu sei que está correto. É um truque total, eu sei.
o script (reset-dns):
Além disso, para aqueles que dizem "OMG! Você está executando esse túnel como root!" Não vai funcionar de outra maneira; mesmo antes do meu hack do DNS.
Definitivamente, estou aberto a um caminho melhor. O gerenciador de rede do ubuntu simplesmente não funciona. Eu cortei tickets para o ubuntu neste repetidamente
fonte