2021年3月

解决局域网无法访问 WSL2 端口的问题

背景

WSL 升级到 WSL2 架构后,网络栈也变成虚拟机的 NAT 网卡实现了。这会导致虚拟机外的设备无法直接访问在 WSL2 里监听的端口。Microsoft 为了方便开发者在 Windows 端访问 WSL2 里的端口,基于 vsock 实现了一个支持 TCP 的端口转发逻辑。

然而可能因为安全等方面的因素,微软限制这个转发出来的端口仅能在本机访问,这可就有点不太行了。虽说这个监听在本地的端口转发已经能够满足开发者的日常使用和调试等工作了,但总会在某些时候有些特殊需求,想要能在局域网等设备上访问 WSL2 里的端口。

虽然在 GitHub 上的 issue 4150 创建了快两年,有 400 条评论,但微软这家伙还是迟迟不肯修改。没辙,咱们弱小又无助的开发者只能靠自己解决问题啦。

- 阅读剩余部分 -