
En casi cualquier acción que realizo en el Subsistema de Windows para Linux, recibo una notificación "Cómo resolver el nombre de host". ¿Por qué sucedería esto en cada nueva instalación y cómo solucionarlo?
Respuesta1
- compruebe si existe un enlace simbólico y un archivo resolv.conf:
cd /etc
ls -lha
stat resolv.conf
Deberías ver un enlace simbólico que apunta a:
File: resolv.conf -> ../run/resolvconf/resolv.conf
Size: 29 Blocks: 0 IO Block: 4096 symbolic link
El archivo original en ../run/resolvconf/resolv.conf se creará recientemente al iniciar WSL Ubuntu y tiene el siguiente contenido:
# This file was automatically generated by WSL. To stop automatic generation of this file, add the following entry to /etc/wsl.conf:>
# [network]
# generateResolvConf = false
nameserver 172.23.0.1
la dirección del servidor de nombres puede diferir en su caso
- cree un archivo wsl.conf en la carpeta raíz, etc. (es posible que necesite sudo):
sudo nano /etc/wsl.conf
- pegue las siguientes líneas en el archivo y salga guardándolo (Ctrl+X):
[network]
generateResolvConf = false
- eliminar el enlace simbólico al archivo resolv.conf
cd /etc
sudo rm resolv.conf
- cree un nuevo archivo resolv.conf en /etc
sudo nano resolv.conf
y pegue el siguiente contenido guardándolo con (Ctrl+O y Ctrl+X):
# This file was automatically generated by WSL. To stop automatic generation of this file,
# add the following entry to /etc/wsl.conf:>
# [network]
# generateResolvConf = false
# nameserver 172.23.0.1
nameserver 8.8.8.8
Respuesta2
No sé por qué sucede (mejore la respuesta con una explicación), aquí hay una solución funcional para este problema:
1. Ejecutar:
nano /etc/hostname
Escriba el nombre de su máquina en letras mayúsculas (sería algo así como DESKTOP-SOMETHING). Elimine todo lo que no sea el nombre de su máquina.
Guardar y Salir.
2. Luego, ejecute:
nano /etc/hosts
Luego, asegúrese de que las dos primeras filas del archivo tengan el siguiente aspecto:
127.0.0.1 localhost.localdomain localhost
127.0.1.1 DESKTOP-SOMETHING
Guardar y Salir.
Respuesta3
En mi caso, el comando útil fue:
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf > /dev/null
Respuesta4
Lo que funcionó para mí para resolver hosts de red locales de Windows dentro de WSL2 fue agregar las siguientes entradas de resolución DNS internas (servidores de nombres) en /etc/resolv.config
:
search <name-of-my-internal-ad-domain.net>
nameserver 10.0.xx.xxx # local WAN DNS server
nameserver 10.0.xx.xxx # local WAN DNS server
nameserver 1.1.1.1
sudo tee /etc/resolv.conf << EOF
search <name-of-my-internal-ad-domain.net>
nameserver 10.0.xx.xxx
nameserver 10.0.xx.xxx
nameserver 1.1.1.1