转载地址:https://www.xieshasha.love/wsldns.iiMemory
WSL2 用着是挺好的,就是发现了一个问题,郁闷了好久,修改/etc/resolv.conf
可以自己设置 dns,但重启 WSL 以后,手动设置的 DNS 就会被重置为默认的,细心看了一下默认的文件以后发现了问题的关键。WSL 自动在启动时自动根据系统的虚拟交换机WSL
生成 /etc/resolv.conf
文件。如下为默认的/etc/resolv.conf
文件的内容
# 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.27.96.1
根据默认文件的描述,首先sudo vim /etc/wsl.conf
添加etc/wsl.conf
文件,文件内容为:
[network]
generateResolvConf = false
保存以后 Powershell 或 Windows Terminal 内wsl --shutdown
关机 WSL,然后重新打开 WSL
手动编辑 /etc/resolv.conf
文件,手动设置新的 DNS 即可,例如:
nameserver 8.8.8.8
重启试一下,手动设置的 DNS 已经生效