Il remplace le serveur de noms (DNS) utilisé sur votre machine par le service DNS public de Google . Si l'exécution de cette commande vous aide, vous rencontrez probablement des problèmes DNS dans les paramètres par défaut fournis par votre réseau (DHCP). Bien qu'il soit préférable de résoudre la cause première du problème, il s'agit d'une réponse générale à votre question.
Explication de la commande
sudo echo nameserver 8.8.8.8 > /etc/resolv.conf
sudo élève les privilèges pour être root dans ce cas.
echosort juste les arguments suivants à la sortie standard (dans ce cas, il sort nameserver 8.8.8.8)
> redirige la sortie standard vers un fichier (l'écrase) dans un shell Unix standard.
/etc/resolv.conf est le fichier dans lequel la sortie est écrite.
- Avoir une ligne
nameserver 8.8.8.8en /etc/resolv.confrend le système en utilisant le serveur de noms dont l' adresse IP 8.8.8.8pour la résolution des noms de domaine aux adresses IP. (version très courte de ce qui se passe réellement)
8.8.8.8est l'une des adresses publiées par Google pour savoir où leurs services DNS publics écoutent.
sudo erreur
Bien que cette explication semble plausible, cela ne fonctionnera pas, en raison d'une erreur que vous obtiendrez:
bash: /etc/resolv.conf: Permission denied
Pourquoi? La redirection de sortie est gérée par votre shell (ici: Bash) et n'est pas prise en compte pour la commande utilisée pour sudo. Similaire à la façon dont la multiplication en mathématiques a priorité sur l'ajout. Donc, c'est juste echoqu'il a des privilèges élevés, mais pas votre shell! Pour résoudre ce problème, il faut exécuter cette commande comme
sudo sh -c "echo nameserver 8.8.8.8 > /etc/resolv.conf"
ou, en utilisant un tube et teeen le sortant dans un fichier:
echo nameserver 8.8.8.8 | sudo tee /etc/resolv.conf #prints to screen as well
Ubuntu et Network Manager
Sur Ubuntu, ce n'est qu'un changement temporaire, car Network Manager "gère" le /etc/resolv.conffichier. Les modifications locales seront écrasées. C'est pourquoi vous devez configurer cela dans Network Manager pour qu'il soit persistant.
Configuration à l'aide de Network Manager
Je recommanderais de configurer correctement votre PC à l'aide de Network Manager. Je suppose que vous utilisez DHCP sur votre réseau ici (le plus courant). Ensuite, effectuez la même opération que l'équivalent de la commande que vous utilisiez:
Ouvrez Modifier les connexions :

Modifiez le profil de connexion que vous utilisez.

Sur l' onglet Paramètres IPv4 :
Méthode: adresses automatiques (DHCP) uniquement
Ce paramètre lui permet d'effectuer une demande DHCP régulière pour la configuration de l'adresse IP de votre hôte, mais il ignorera les autres options non obligatoires comme les serveurs DNS suggérées.
- Serveurs DNS:
8.8.8.8
- Appuyez sur Enregistrer

Terminé.
Notes IMPORTANTES
Dans un réseau local ou d'entreprise, le serveur DNS local peut être utilisé pour les hôtes locaux. Vous perdrez cette fonctionnalité en demandant directement aux serveurs de Google de résoudre les noms pour vous. Ainsi, si par exemple le serveur DNS local sait ce qu'est une «imprimante», vous perdrez l'utilisation de votre imprimante sous ce nom.
Veuillez donc plutôt réparer votre serveur DNS local. Si c'est juste un simple redirecteur vers un serveur DNS cassé de votre FAI et que vous ne pouvez pas changer cela (routeur tout-en-un géré par FAI par exemple), alors cette 8.8.8.8solution pourrait être votre seule option.