existe uma maneira de alterar o servidor DNS na linha de comando sem precisar alterar nada no disco?
Recentemente, iniciei a sessão de resgate e obtive um endereço IP (usando DHCP), mas nenhum servidor DNS. como minha configuração de rede geralmente é feita na nm-applet
sessão de desktop e não em, /etc/network/interfaces
gostaria de poder fornecer um servidor DNS apenas para esta sessão de resgate e não gravar nada no disco.
isso geralmente é possível editando arquivos /run/resolvconf/resolv.conf
. mas resolvconf
parece não estar rodando na sessão de resgate do Ubuntu 14.04.
esperava que houvesse algo semelhante à configuração de rede onde eu pudesse configurar uma interface sem precisar editar um arquivo:
# ifconfig eth0 192.168.2.5 netmask 255.255.255.0
# route add default gw 192.168.2.1
existe uma maneira de fazer isso para DNS em uma sessão de resgate no Ubuntu 14.04?
Responder1
eu encontrei uma maneira de fazer isso:
matar o serviço DNS (pode haver uma maneira mais sutil?)
# killall dnsmasq
reinicie o serviço usando o servidor upstream desejado:
# dnsmasq --server=192.168.2.1
em um Ubuntu mais recente (um com systemd
), isso seria:
# systemd-resolve -i enp0s31f6 --set-dns=192.168.2.1 # --set-dnssec=true
verificar com:
# systemd-resolve --status
Responder2
Navegue para este diretório /etc/resolvconf/resolv.conf.d
e edite o arquivo head usando vi ou vim com privilégio su
sudo vi /etc/resolvconf/resolv.conf.d/head
adicione as seguintes linhas ao arquivo
nameserver *DNS server IP*
salve o arquivo e use o utilitário resolvconf para definir o endereço do servidor DNS estático que você inseriu com o seguinte comando
sudo resolvconf -u
Responder3
Para fazer isso funcionar, adicionei au.archive.ubuntu.com
ao /etc/hosts
arquivo um endereço IP obtido ao fazer ping no meu PC.
Então fiz apt update
e resolveu.