系统相关
首页 > 系统相关> > wsl 2 设置静态 DNS 服务地址及 Linux 和 Windows 主机网络互相访问设置

wsl 2 设置静态 DNS 服务地址及 Linux 和 Windows 主机网络互相访问设置

作者:互联网

 

来源:https://blog.niekun.net/archives/1801.html

 

在升级到 wsl 2 后发现一些网络问题和之前的 wsl 不一样了,主要是 DNS 解析和 wsl 和 Windows 网络互访问题,这里介绍如何处理。

DNS 解析

wsl 2 使用的 DNS 解析服务器设置在文件:/etc/resolv.conf 内设置,这是一个 link 文件,真正的文件路径是:/run/resolvconf/resolv.conf,这个文件是每次 wsl 启动时自动生成的,内容如下:

# 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.24.144.1

nameserver 后面的就是指定的 DNS 服务器地址。我发现有时候分配的服务器地址是无效的,如:127.0.0.53,使用 ping 来测试发现提示无法解析地址。需要设置一个固定的 DNS 地址,方法如下:

以上配置好就不会自动创建 /run/resolvconf/resolv.conf 文件了。

退出 wsl,关机然后重新启动:

exit
wsl --shutdown
wsl

删除 link 文件:/etc/resolv.conf:

rm /etc/resolv.conf

然后新建 /etc/resolv.conf 文件,内容如下,可自定义 nameserver 地址:

nameserver 114.114.114.114

再次退出 wsl,关机然后重新启动:

exit
wsl --shutdown
wsl

查看 /etc/resolv.conf 文件是否是之前自定义的地址:

cat /etc/resolv.conf

测试网络服务:

ping niekun.net

参考链接:https://github.com/microsoft/WSL/issues/5256#issuecomment-666545999

 

标签:文件,设置,Windows,wsl,resolv,etc,DNS,conf
来源: https://www.cnblogs.com/liujiaxin2018/p/16200315.html