As duas respostas com maior pontuação, nmcli dev list iface <interfacename> | grep IP4
e nm-tool
ambas assumem que o gerenciador de rede está no controle. Qual é - nas máquinas de mesa, na maioria das vezes, pelo menos. Mas a resposta mais completa é que às vezes o gerenciador de rede não está no controle. Por exemplo, vpnc
mexe /etc/resolv.conf
diretamente.
Portanto: verifique primeiro se 127.0.0.1/localhost está sendo usado. Isso pode ser feito com dig
:
> dig something.unknown | grep SERVER:
;; SERVER: 127.0.0.1#53(127.0.0.1)
Agora você sabe que está usando localhost. Vá em frente com uma das respostas populares. Eu gosto:
> nm-tool | grep DNS:
DNS: 8.8.8.8
Mas se 127.0.0.1/localhost não for usado, a saída de nm-tool
s e nmcli
será enganosa:
> dig something.unknown | grep SERVER:
;; SERVER: 172.22.216.251#53(172.22.216.251)
> nm-tool | grep DNS:
DNS: 8.8.8.8
Aqui, dig
está correto e nm-tool
as informações são enganosas. Na realidade, os endereços locais para o ambiente em que eu tenho VPN são resolvidos corretamente. Tudo sobre o qual o DNS do Google 8.8.8.8
não conhece.
Isso ocorre porque, após conectar-se a uma VPN vpnc
, ela coloca uma linha /etc/resolv.conf
para que se pareça com:
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 1.2.3.4
nameserver 127.0.0.1
search MyDomain