局域网设备访问WSL项目

在WSL项目启动后确认项目访问的地址和端口,使用 ip addr 来查看当前WSL的ip地址
在windows宿主机器上找到防火墙设置,新建入站规则,设置一个没有被占用的端口号的规则
在windows宿主机器上使用 netsh interface portproxy 做端口映射
举个例子
我的项目启动的地址是 172.22.76.223:5173
第一步,冒号前半段是WSL的ip地址,后面半段是端口号
第二步,新建入站规则的时候,填入的端口号为8080
第三步,命令应该是
局域网设备访问项目的地址就是 windows宿主机的ip地址:设置的listenport
windows宿主机的ip地址获取方式 ipconfig /all,一般为192.168.1.xxx
比如 192.168.1.6:8080

查询 netsh interface portproxy show all
新增 netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 protocol=tcp listenport=8080 connectport=5173 connectaddress=172.22.76.223
删除 netsh interface portproxy delete v4tov4 listenaddress=0.0.0.0 listenport=8080
修改是直接在新增的基础上,不改listenaddres和listenport即视为修改
总结
v4tov4 就是ipv4地址的映射,xxx.xxx.xxx.xxx,官方文档说了目前不支持v6,所以也只能写v4
listenaddress windos宿主机的监听ip地址
listenport windos宿主机的监听端口,也可以理解为对外暴露的端口
connectaddress wsl里的ip地址
connectport wsl里对windows宿主机暴露的端口
protocol 目前貌似只支持tcp,所以可写可不写