WSL无法访问网络的解决办法

今天在用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,如下

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

  1. /etc/wsl.conf中加入:
  1. PowerShell重启WSL
  1. 修改/etc/resolv.conf

三步就搞定。