如何在WSL中配置使用自定义选择的网络交换机
WSL 2绑定现有Hyper-V桥接交换机解决方案
该需求可通过WSL原生全局配置实现,无需反复手动调整网络参数,具体方案如下:
前置要求
- 系统版本为Windows 10 21H2 / Windows 11 22H2及以上,WSL版本号≥0.67.6
- 已提前在Hyper-V管理器中创建可正常使用的桥接模式交换机,该交换机可正常为现有虚拟机分配局域网IP
配置步骤
- 关闭所有运行中的WSL实例,执行PowerShell命令:
wsl --shutdown - 进入Windows当前用户根目录(路径为
C:\Users\你的系统用户名\),新建无后缀的配置文件.wslconfig - 在文件中写入以下配置,替换对应参数为你的实际环境值:
[wsl2] networkingMode=bridged vmSwitch=你已创建的桥接交换机名称 dhcp=true ipv6=true # 如不需要IPv6可删除该行
- 保存配置文件后重新启动WSL,实例将直接挂载指定的桥接交换机,不会再自动生成默认的内部WSL交换机。
异常处理
- 若启动WSL提示找不到交换机,检查Hyper-V中桥接交换机的名称拼写是否和配置完全一致,确认交换机处于运行状态
- 若WSL无法正常获取DHCP地址,可进入WSL执行
sudo dhclient eth0手动请求IP,也可直接在.wslconfig中配置静态IP避免DHCP分配问题:
[wsl2] networkingMode=bridged vmSwitch=你已创建的桥接交换机名称 dhcp=false ipAddress=192.168.xx.xx/24 # 替换为局域网段内的空闲IP,掩码按实际网络调整 gateway=192.168.xx.1 # 替换为局域网实际网关地址 dnsServer=192.168.xx.1 # 替换为实际使用的DNS服务器地址 ipv6=true # 按需保留
配置完成后WSL实例将直接获得局域网同网段IP,支持mDNS广播、局域网入站访问,也不会和现有桥接虚拟机产生交换机占用冲突。
内容的提问来源于stack exchange,提问作者Lawrence Kok
相关产品推荐
相关产品推荐

