Reemplaza el servidor de nombres (DNS) utilizado en su máquina por el servicio DNS público de Google . Si ejecutar ese comando lo ayuda, está teniendo problemas de DNS en la configuración predeterminada provista por su red probablemente (DHCP). Si bien sería mejor resolver la causa raíz del problema, esta es una respuesta general a su pregunta.
Explicación del comando
sudo echo nameserver 8.8.8.8 > /etc/resolv.conf
sudo
eleva los privilegios para ser root en este caso.
echo
solo muestra los argumentos que siguen a la salida estándar (en este caso, genera nameserver 8.8.8.8
)
>
redirige la salida estándar a un archivo (lo sobrescribe) en un shell normal de Unix.
/etc/resolv.conf
es el archivo donde se escribe la salida.
- Tener una línea
nameserver 8.8.8.8
de entrada /etc/resolv.conf
hace que el sistema use el servidor de nombres que tiene una dirección IP 8.8.8.8
para resolver nombres de dominio en direcciones IP. (versión muy corta de lo que realmente sucede)
8.8.8.8
es una de las direcciones publicadas por Google sobre dónde escuchan sus servicios públicos de DNS.
sudo
Error
Si bien esta explicación parece plausible, esto no funcionará, debido a un error que obtendrá:
bash: /etc/resolv.conf: Permission denied
¿Por qué? La redirección de salida es manejada por su shell (aquí: Bash) y no se tiene en cuenta para el comando utilizado sudo
. Similar a cómo multiplicar en matemáticas tiene prioridad sobre sumar. Entonces, es solo echo
que tiene privilegios elevados, ¡pero su shell no! Para resolver esto, uno debe ejecutar este comando como
sudo sh -c "echo nameserver 8.8.8.8 > /etc/resolv.conf"
o, usando una tubería y tee
para enviarlo a un archivo:
echo nameserver 8.8.8.8 | sudo tee /etc/resolv.conf #prints to screen as well
Ubuntu y administrador de red
En Ubuntu esto es solo un cambio temporal, ya que Network Manager "administra" el /etc/resolv.conf
archivo. Las modificaciones locales se sobrescribirán. Es por eso que debe configurar esto en Network Manager para que sea persistente.
Configuración usando Network Manager
Recomendaría configurar su PC correctamente utilizando Network Manager. Supongo que está utilizando DHCP en su red aquí (lo más común). Luego haga esto para realizar lo mismo que el equivalente al comando que estaba usando:
Abrir Editar conexiones :
Edite el perfil de conexión que está utilizando.
En la pestaña Configuración de IPv4 :
Método: solo direcciones automáticas (DHCP)
Esta configuración hace que realice una solicitud DHCP regular para la configuración de la dirección IP de su host, pero ignorará otras opciones no obligatorias como los servidores DNS sugeridos.
- Servidores DNS:
8.8.8.8
- Presiona Guardar
Hecho.
Notas importantes
En una red local o corporativa, el servidor DNS local puede usarse para hosts locales. Perderá esta funcionalidad pidiendo directamente a los servidores de Google que resuelvan los nombres por usted. Entonces, si por ejemplo el servidor DNS local sabría qué es "impresora", perderá el uso de su impresora con ese nombre.
Entonces, por favor, arregle su servidor DNS local. Si es solo un reenviador simple a un servidor DNS roto de su ISP y no puede cambiar eso (por ejemplo, un enrutador todo en uno administrado por ISP), entonces esta 8.8.8.8
solución podría ser su única opción.