Windows SubSystem for Linux (即 WSL) 是微软在 Windows 10/11 中开发的子系统功能,该功能允许用户在 Windows 上安装 Linux 系统和相关环境,对开发者来说可以构建 Linux 开发环境进行工作。不过 WSL 系统在功能上也有不少缺点,典型的就是默认仅支持 NAT 网络,尽管可以通过某些方式分配 IP 地址但过程复杂还需要对虚拟网卡进行切换。
还有个问题是开发者无法在 WSL 内自定义 DNS 服务器,即默认情况下 WSL 继承 Windows DNS 设置,在企业环境中可能还会受到 DNS 某些安全功能的影响。
现在微软正在改进 WSL 子系统功能,解决开发者们吐槽的这些问题,包括 NAT 网络和 DNS 设置,让 WSL 可以配置为镜像宿主机网络并通过路由器和交换机进行管理,同时也可以自定义 DNS 服务器用于测试或解决内部 DNS 的安全限制等。
尤其是网络问题,接下来开发者们可以将 WSL 配置为镜像网络后选择网络出口、支持 IPv6 地址和 LAN 服务,甚至针对特定的应用程序还可以同时使用两种模式并进行切换。
DNS 方面的改进主要是新增支持 DNS 隧道 (Tunneling),这可以使用访客网络服务设置外部 DNS 地址,这样可以自定义为任意 DNS 绕开某些安全策略限制。
这些新功能将在接下来推出的 WSL 更新中发布,有兴趣的开发者建议关注微软开发者博客获取这几天 Build 2024 上的新消息。