页首Html代码

返回顶部

WSL connect: Network is unreachable解决方案

环境

windows10 21H2
wsl2 下面安装的centos7

问题

进入wsl环境,就是没有网络,包括ping localhost都是显示WSL connect: Network is unreachable

输入 ifconfig 没有任何输出.
输入 ip addr ,eth0 下面没有任何ip 地址

尝试失败的解决方案

1 卸载wsl,重新安装; 没用
2 windows下重置网络;没用

wsl --shutdown
netsh winsock reset
netsh int ip reset all
netsh winhttp reset proxy
ipconfig /flushdns

3 转换为 wsl1
wsl --set-version centos7 1
的确,有网络了,但是我想要 vhdx 单文件系统,文件IO性能真的 wsl1 太差劲,wsl2 最看中这一点.

最终解决方案

看到 WSL issue5437 讨论

Thanks for reporting, looks like if there are issues creating the swap file we skip network initialization too. I've submited a fix to resolve this issue. In the meantime you can work around this by disabling swap file via .wslconfig.

I'd suggest disabling swap in the meantime:

%userprofile%\.wslconfig
[wsl2]
swap=0

只要在win下 创建 .wslconfig 并输入 上面内容,关闭swap ,然后再次进入wsl 就有ip了.

由于我会远程,%temp%也会有不一样的目录,可能对wsl造成影响,
另外,我的确对磁盘NTFS进行了压缩, 也有关系,只能说明wsl2 对windows的支持,还存在缺陷.

重要参考连接

[1]: No network if %temp% moved #5437

wsl2 network unreachable问题,手动设置IP
WSL2莫名其妙的连不上网了
一口气搞定 WSL2 的网络问题
WSL 2 自定义安装目录和网络配置

posted @ 2022-06-08 17:34  ayanmw  阅读(2777)  评论(0编辑  收藏  举报

页脚Html代码