y at-il un moyen que je peux changer le serveur DNS sur la ligne de commande sans avoir à changer quoi que ce soit sur le disque?
j'ai récemment démarré la session de secours et j'ai obtenu une adresse IP (avec DHCP) mais pas de serveur DNS. comme ma configuration réseau est généralement effectuée avec le nm-applet
dans la session de bureau et non dans /etc/network/interfaces
, j'aimerais pouvoir fournir un serveur DNS uniquement pour cette session de secours et ne rien écrire sur le disque.
cela est généralement possible en éditant /run/resolvconf/resolv.conf
. mais resolvconf
ne semble pas fonctionner dans la session de secours d'ubuntu 14.04.
j'espérais qu'il y avait quelque chose de similaire à la configuration du réseau où je peux configurer une interface sans avoir à éditer un fichier:
# ifconfig eth0 192.168.2.5 netmask 255.255.255.0
# route add default gw 192.168.2.1
y a-t-il un moyen de faire cela pour DNS dans une session de secours sur Ubuntu 14.04?
j'ai trouvé un moyen de le faire:
tuer le service DNS (il peut y avoir une manière plus subtile?)
# killall dnsmasq
redémarrez le service en utilisant le serveur en amont souhaité:
# dnsmasq --server=192.168.2.1
sur un ubuntu plus récent (un avec systemd
), ce serait:
# systemd-resolve -i enp0s31f6 --set-dns=192.168.2.1 # --set-dnssec=true
vérifier avec:
# systemd-resolve --status
Naviguez vers ce répertoire /etc/resolvconf/resolv.conf.d
éditez le fichier de tête en utilisant vi ou vim avec privilège su
Sudo vi /etc/resolvconf/resolv.conf.d/head
ajouter les lignes suivantes au fichier
nameserver *DNS server IP*
enregistrez le fichier et utilisez l'utilitaire resolvconf pour définir l'adresse du serveur DNS statique que vous avez entrée à l'aide de la commande suivante
Sudo resolvconf -u
Pour que cela fonctionne, j'ai ajouté au.archive.ubuntu.com
au fichier /etc/hosts
avec une adresse IP que j'ai obtenue en envoyant une commande ping sur mon PC.
Ensuite, apt update
s'est résolu.