最新桥接模式弃用状态说明
在 Windows 11 23H2 及更新版本中,执行桥接模式相关命令时会出现提示:
wsl: 网桥网络模式已弃用。
原因在于微软将网络管理重心转向 镜像模式(networkingMode=mirrored),其优势包括:
自动同步 Windows 主机的网络配置(IP、DNS、防火墙规则等);
无需手动创建虚拟交换机,降低配置复杂度。
替代方案:配置镜像模式
启用镜像模式
在用户目录下创建或修改 .wslconfig 文件,添加以下内容:
[experimental]
networkingMode=mirrored
dnsTunneling=true
firewall=true
autoProxy=true
hostAddressLoopback=true
执行 wsl --shutdown 重启 WSL2 生效。
====================================================================================================
1.准备工作(本次配置wsl2子系统以ubuntu20为例)
1.1确认自己的windows版本
确定自己的windows版本是win11 22h2以上版本的
1.2更新至最新的wsl2版本
更新wsl2命令如下所示:
wsl --update
wsl --version
1.3安装hyper-v虚拟机
2.在设备管理器中安装本地环回测试网卡
安装完成后可以在网络连接里面看到新加的网卡(可以用win+r打开运行界面,输入ncpa.cpl打开下面界面查看)
3.在hyper管理器上添加新的虚拟交换机并桥接到环回网卡,设置桥接后的网关ip
以下图为例添加了一个WSL2Bridge的虚拟交换机,并设置与刚刚创建的环回网卡进行桥接
添加完毕后,在网络连接界面设置虚拟交换机网卡的ip,设置入下图所示
4.配置wsl2配置文件.wslconfig
在个人目录下新建.wslconfig文件
对.wslconfig文件进行配置,配置如下所示,注意vmSwitch配置的值为刚刚创建的虚拟交换机的名字
[wsl2]
networkingMode=bridged
vmSwitch=WSL2Bridge
dhcp=false
5.在wsl2子系统上的/lib/systemd/network目录下添加wsl_external.network文件并配置
配置如下所示,注意修改对应的网卡ip和网关,已经需要修改的网卡的名称(一般都是eth0)
[Match]
Name=eth0
[Network]
Description=bridge
DHCP=false
Address=192.168.150.150/24
gateway=192.168.150.1
配置dns解析ip
sudo vim /etc/resolv.conf
6.默认路由可能不生效,可以手动添加下默认路由
在用户目录下,vim .bashrc,将以下配置添加到自启动脚本中,注意修改对应的网关ip
if [ "192.168.150.1" != "`route -n|grep eth0|head -1|awk '{print $2}'`" ]
then
sudo route add default gw 192.168.150.1
fi
7.windows上配置nat上网
以管理员模式打开powershell,输入以下命令添加nat配置,注意修改对应的网段
New-NetNat -Name wslnat -InternalIPInterfaceAddressPrefix 192.168.150.0/24
创建完成后可以使用 Get-NetNat查看配置,如果要删除配置可以使用以下命令
Remove-NetNat -Name wslnat
8.至此,配置就全部完成了,重启wsl2
wsl --shutdown
wsl
重启后即可查看到网卡的ip已经改变了,如果配置没有生效可以考虑重启windows。
ok之后测试下网络,有什么其他的问题可以留言