Estou usando o Network Manager (1.18.0-1) no sistema Arch Linux onde
resolvconf
também está presente (do openresolv
qual é uma netctl
dependência de pacote base).
Quando estou me conectando ao servidor VPN via NetworkManager, estou tendo um problema com o registro DNS duradouro após desconectar a VPN. Eu descobri parcialmente o porquê:
- após a conexão, o processo NetworkManager inclui o servidor de nomes VPN no
resolv.conf
- em relação a
/etc/ppp/ip-up.d/00-dns.sh
(abaixo) e válidoUSEPEERDNS=1
oresolvconf
é chamado; ele fará backupresolv.conf
e substituirá pelo próprio registro do servidor de nomes - após a VPN desconectar
/etc/ppp/ip-down.d/00-dns.sh
chamadasresolvconf
para excluir o registro do servidor de nomes e recuperar o registro do servidor de nomesresolv.conf
deresolv.conf.bak
onde está (neste momento) inacessível
O hotfix sujo é desabilitar /etc/ppp/ip-up.d/00-dns.sh
(ou apenas comentar a /usr/bin/resolvconf ...
linha). Não quero desinstalar openresolv
porque isso quebrará uma netctl
dependência e também quero este pacote básico.
Como o NetworkManager não é uma ferramenta de rede "estoque" no Arch Linux, não tenho certeza se isso é um tipo de bug ou quais configurações estão faltando. Qual seria a maneira correta de resolver isso?
/etc/ppp/ip-up.d/00-dns.sh:
#!/bin/sh
if [ "$USEPEERDNS" = "1" -a -f /etc/ppp/resolv.conf ]; then
if [ -x /usr/bin/resolvconf ]; then
/usr/bin/resolvconf -a ${IFNAME} </etc/ppp/resolv.conf
else
[ -e /etc/resolv.conf ] && mv /etc/resolv.conf /etc/resolv.conf.backup.${IFNAME}
mv /etc/ppp/resolv.conf /etc/resolv.conf
chmod 644 /etc/resolv.conf
fi
fi