今天在用WSL的时候突然网络抽风,域名解析出了问题,apt update都用不了
在这里插入图片描述
网上查了很多方法,什么vEthernet的IP啊,ifconfigip啊,ip route add default啥的,都不管用。最后还是看了一下/etc/resolv.conf的配置,里面的nameserver字段显然是不对的,另外上面的注释提示了说这个文件是由WSL自动生成的,如果不希望自动生成,则请在/etc/wsl.conf里面设置一下:
在这里插入图片描述
我就按照配置文件的说法在/etc/wsl.conf中写下了这行,然后打开powershell输入wsl.exe --shutdown来关机。
重启WSL之后,发现原本的/etc/resolv.conf是一个软连接,已经变红(失效)了,于是手动输入/etc/resolv.conf,如下

# /etc/resolv.conf
nameserver 223.5.5.5
nameserver 223.6.6.6

然后保存。
ping一下某网络检测url,成功!
在这里插入图片描述
在这里插入图片描述
就是如此的轻松简单。总结一下:

  1. /etc/wsl.conf中加入:
[network]
generateResolvConf = false
  1. PowerShell重启WSL
wsl.exe --shutdown
  1. 修改/etc/resolv.conf
nameserver 223.5.5.5
nameserver 223.6.6.6

三步就搞定。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐