WSL2 今天史诗级更新

2023 年 9 月 19 日
 hez2010

今天 WSL2 更新了 2.0.0 版本,详细更新内容见: https://github.com/microsoft/WSL/releases/tag/2.0.0

总结一下主要是:

  1. 支持自动回收内存
  2. 支持自动释放 WSL2 虚拟硬盘空间
  3. 支持和 Windows 使用相同的网络(镜像网络)
  4. 支持 DNS Tunneling
  5. 支持 Windows 设置的代理
  6. 支持 Windows 防火墙
  7. 支持 Multicast

需要至少 Windows 11 23H2 ,目前还没有发布正式版本,不过可以考虑加入 Insider 的 Release Preview 或者 Beta 通道,更新系统之后运行 wsl --update --pre-release 升级 WSL ,然后就可以在 %userprofile%\.wslconfig 里面设置以下内容:

[experimental]
autoMemoryReclaim=gradual # 可以在 gradual 、dropcache 、disabled 之间选择
networkingMode=mirrored
dnsTunneling=true
firewall=true
autoProxy=true

然后你会发现,WSL2 和 Windows 主机的网络互通而且 IP 地址相同了,还支持 IPv6 了,并且从外部(比如局域网)可以同时访问 WSL2 和 Windows 的网络。这波升级彻底带回以前 WSL1 那时候的无缝网络体验了,并且 Windows 防火墙也能过滤 WSL 里的包了,再也不需要什么桥接网卡、端口转发之类的操作了。

47372 次点击
所在节点    程序员
194 条回复
hades97
2023 年 9 月 21 日
想问一下,这个要怎么更新呀?
BurgerTown
2023 年 9 月 21 日
@well775397252 #158 看具体情况吧 我这边是可以 localhost:xx 访问的 但是不知道为什么 VSCode 就超级慢...
34
2023 年 9 月 21 日
@jokcylou 要加个配置,op 说过了,然后重启下 wsl 就生效了。
well775397252
2023 年 9 月 21 日
@BurgerTown #162 能看一下你预览版的版本吗?我怀疑是版本不是最新?
jokcylou
2023 年 9 月 21 日
@Taosky 加了的来着,.wslconfig ,我都怀疑是不是配置文件没生效,还重启了电脑
haolongsun
2023 年 9 月 21 日
g 不是 beta 或者 pre release 版本的 win 更新完直接代理炸了 wsl 内怎么也连不上网 又不想升级系统 操了
haolongsun
2023 年 9 月 21 日
@leeyuzhe 你怎么解决的呀
well775397252
2023 年 9 月 21 日
@magicedy #95 docker 端口那个 mirror 用不了
Alraemon
2023 年 9 月 21 日
@wildman9527 哈哈哈哈,懂不懂 Windows 最为最佳 Linux distro 的实力啊
ThisDay
2023 年 9 月 22 日
@haolongsun #167 换回桥联啊,把 networkingMode 改成 nat 然后正常在 wls2 节点下面配置桥连
cloud2000
2023 年 9 月 22 日
我也遇到和上面几位一样的:

wsl: Hyper-V 防火墙不受支持
wsl: 不支持镜像网络模式,正在回退到 NAT 网络
wsl: DNS 隧道不受支持

正式的解决办法是:
要切换到最“激进”的 Win 11 Canary 通道才行,滞后的 Beta 等通道不行。
即使升级了 wsl2,也不行。
500
2023 年 9 月 24 日
@mingwiki
@TsubasaHanekaw
@dingwen07
别吹了,别吹了,一直拿用户做测试,不完成的作品拿出来吹,还有一些问题至今没解决呢,要省心还不如虚拟机装原生 Linux ,WSLg 一直不稳定也有问题
jiangyingjuner
2023 年 9 月 24 日
@default996 衷心请问怎么解决的问题,msstore 前两天自动给我更新了 WSL ,现在出现这个错误打不开了
hez2010
2023 年 9 月 24 日
@paulluis2dev WSL2 大概是唯一的自带丝滑的双显卡支持、四家显卡( NVIDIA 、AMD 、INTEL 、高通)的 Wayland 支持( WSL only )的同时还有 GUI 硬件加速的 Linux 发行版。
BurgerTown
2023 年 9 月 25 日
@well775397252 #164 版本
Windows 11 专业版
版本 23H2
安装日期 ‎2022/‎5/‎14
操作系统版本 22631.2338
体验 Windows Feature Experience Pack 1000.22674.1000.0
default996
2023 年 9 月 25 日
@jiangyingjuner #173 我是卸载了系统里面的“适用 windows 的 Linux 子系统”,然后重装 wsl
worldquant
2023 年 9 月 27 日
挺坑的,需要更新到 25×××
hez2010
2023 年 9 月 27 日
@worldquant 不需要的,已经推送给 Release Preview 了。
worldquant
2023 年 9 月 27 日
tsanie
2023 年 10 月 10 日
@well775397252 #168 我试了下可以,我在 docker 里跑了个 iperf3 server ,用局域网另外一个设备连接可以跑通,不过 windows 要设置下防火墙,打开 5201 端口。

[ 5] local 10.0.10.100 port 55670 connected to 10.0.10.20 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 283 MBytes 2.37 Gbits/sec 0 3.15 MBytes
[ 5] 1.00-2.00 sec 280 MBytes 2.35 Gbits/sec 0 3.15 MBytes
...


Accepted connection from 10.0.10.100, port 35084
[ 5] local 10.0.10.20 port 5201 connected to 10.0.10.100 port 55670
[ ID] Interval Transfer Bandwidth
[ 5] 0.00-1.00 sec 273 MBytes 2.29 Gbits/sec
[ 5] 1.00-2.00 sec 281 MBytes 2.35 Gbits/sec
...

系统版本是 23H2 22631.2361 ,wsl 是 2.0.4.0

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/975098

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX