在Parallels苹果硅设备的WSL1模式Ubuntu系统中创建网桥遇“No such device”错误的解决方法
在Parallels苹果硅设备的WSL1模式Ubuntu系统中创建网桥遇“No such device”错误的解决方法
兄弟,这个报错的核心原因其实是WSL 1的架构硬限制——WSL1根本没有真正的Linux内核,它是靠翻译层模拟Linux系统调用的,像网桥(bridge)这类需要内核模块支持的网络功能,WSL1完全不支持,这就是你执行sudo ip link add br0 type bridge时报错的根源。
下面给你两个可行的解决方向:
方案一:升级到WSL 2(最推荐)
WSL2有完整的Linux内核,原生支持网桥这类网络功能,步骤如下:
- 先确认你的Win11版本满足要求:打开Windows终端执行
winver,你用的22H2完全符合WSL2的版本要求。 - 切换Ubuntu发行版到WSL2模式:
- 以管理员权限打开Windows终端,执行
wsl --list --verbose,找到你的Ubuntu发行版名称(比如Ubuntu-20.04)。 - 执行
wsl --set-version Ubuntu-20.04 2,等待系统完成转换(时间取决于你的系统文件大小,可能需要几分钟)。 - 再次执行
wsl --list --verbose,看到对应发行版的版本列显示为2,就说明切换成功了。
- 以管理员权限打开Windows终端,执行
- 切换完成后,重新打开Ubuntu终端,再执行
sudo ip link add br0 type bridge,就能正常创建网桥了。
方案二:利用Parallels虚拟机的桥接网络(无法升级WSL2时的替代)
如果因为某些限制没法升级到WSL2,可以直接借助Parallels的网络设置间接实现类似效果:
- 打开Parallels中Win11虚拟机的设置界面,找到「网络」选项。
- 把网络模式设置为「桥接网络」,选择你的Mac物理网卡(比如Wi-Fi或以太网)。
- 这样WSL里的Ubuntu会共享Win11虚拟机的桥接网络,不需要在WSL内部手动创建网桥,也能获得类似的网络连通效果。
额外注意点
- 升级到WSL2后,执行
uname -a会看到内核版本变成类似Linux USER 5.15.xx-microsoft-standard-WSL2的样式,而不是你现在的4.4.0版本(这个是WSL1的模拟内核)。 - 如果切换WSL2时遇到问题,可以先执行
wsl --update更新WSL组件,再尝试转换。
备注:内容来源于stack exchange,提问作者awattar




