Existe um comando para listar servidores dns usados pelo meu sistema?
Eu tentei
$ cat /etc/resolv.conf # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTENnameserver 127.0.0.1$ cat /etc/network/interfaces # interfaces(5) file used by ifup(8) and ifdown(8)auto loiface lo inet loopback
Mas não Lista nenhum servidor, Se eu for para "Network Manager GUI Tool", na seção Sem Fio ele lista "DNS 192.168.1.1 8.8.8.8 8.8.4.4"
Posso obter as mesmas informações da linha de comando?
resolv.conf não é mais usado, a menos que você mesmo o implemente. O gerente de rede faz isso agora. Criei um alias para listar os servidores DNS no meu sistema, pois às vezes mudo do OpenDNS para o DNS aberto do Google.
>Ubuntu = 15
nmcli device show <interfacename> | grep IP4.DNS
Ubuntu <= 14
nmcli dev list iface <interfacename> | grep IP4
No meu caso, <interfacename> e eth0, o que é comum, mas nem sempre é o caso.
Veja se é isso que você quer.
EDITAR:
Acho que resolv.conf é realmente usado indiretamente, porque o Gerenciador de rede cria o servidor que escuta em 127.0.0.1, mas me disseram que este é um detalhe de implementação que não deve ser contado. Acho que se você inserir endereços DNS antes dessa entrada, eles podem ser usados, mas não tenho certeza exatamente como isso funciona. Eu acho que é melhor usar o Gerenciador de rede na maioria dos casos, quando possível.
As duas respostas com melhor pontuação, nmcli dev list iface <interfacename> | grep IP4 e nm-tool ambos assumem que o network-manager está no controle. O que é - em máquinas desktop na maioria das vezes, pelo menos. Mas a resposta mais completa é que às vezes o network-manager não está no controle. Por exemplo. vpnc mexe com /etc/resolv.conf directamente.
Então: Primeiro verifique se 127.0.0.1 / localhost é usado. Isso poderia ser feito com dig:
Aqui, dig está correto e nm-toola informação é enganosa. Na realidade, os endereços locais para o ambiente em que fiz a VPN são resolvidos corretamente. Todos os quais o DNS do Google 8.8.8.8nao conhecer.
Isso ocorre porque depois de se conectar a uma VPN com vpnc, coloca uma linha em /etc/resolv.conf então parece que:
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTENnameserver 1.2.3.4nameserver 127.0.0.1search MyDomain
cat /etc/resolv.conf deve mostrar seus servidores DNS.
Você não pode modificar o resolv.conf diretamente com o Ubuntu 12.04. Se você precisar alterá-los, poderá adicionar novos servidores DNS ao seu /etc/network/interfaces arquivo adicionando o seguinte:
dns-nameservers x.x.x.x x.x.x.x
onde x são os servidores DNS que você deseja usar.
Se eu fosse você, eu desinstalaria network-manager. Na minha opinião, é uma pilha de porcaria.
Você pode realizar tudo o que precisa fazer manualmente sem se preocupar em Alterar suas configurações, especialmente se tiver várias NICs no computador.
Incrível quantas maneiras existem para fazer isso. Em um servidor Ubuntu 18.04, se você não quiser instalar nada extra como nm-tool, entao systemd-resolve --status vai funcionar fora da caixa para informações de DNS.
Se você estiver interessado em obter não apenas seus servidores DNS, mas também gateway padrão, endereço IP, máscara de rede, etc, então netplan ip leases eth0 lhe dará todas essas informações de uma forma fácil de ler (supondo que você esteja interessado no eth0 interface).
systemd-resolve --status | grep -B 9 -A 6 "Current DNS Server"
me deu um resultado claro sobre qual DNS estava em uso para cada adaptador usando DNS.
Para reconfigurar o DNS
man systemd-resolved
revela que os servidores DNS contatados são determinados por configurações globais em /etc/systemd/resolved.conf.
Sudo editar esse arquivo e descomentar e definir DNS= e FallbackDNS= para os servidores DNS IPv4 que você deseja.Por exemplo, DNS=8.8.8.8 e FallbackDNS=8.8.4.4 usaria DNS público do Google.Reinicie a máquina para aplicar a alteração.
@ PLA, obrigado por isso resposta o que me levou por esse caminho.