overview
这个主要是扼要地讲解一下配置wsl网络能被局域网中其它主机访问的流程和注意点。其实网上有很多关于这方面的配置,但是操作流程都大差不差,主要是有时候一些步骤并没有起到效果,所以我想直接将其中需要注意的提出来,希望对遇到有同样问题的人有所帮助。
我写得比较简要,方便读者清楚重点步骤,但是可能太过简要,现提供参考链接:
从局域网访问WSL2 | 青训营笔记
如何在局域网的其他主机上中访问本机的WSL2
配置流程
查看wsl的ip地址
使用ifconfig
在windows主机上配置关于wsl的端口转换规则
以管理员运行powershell
- 添加端口转换规则
netsh interface portproxy add v4tov4 listenport=4000 listenaddress=0.0.0.0 connectport=8001 connectaddress=192.168.226.105
- 删除端口转换规则
netsh interface portproxy delete v4tov4 listenport=4000 listenaddress=0.0.0.0
配置防火墙规则
-
way1【最简单暴力】:
直接将windows主机的防火墙关了 -
way2【也不算复杂,但是比较安全】:
配置防火墙的入规则。
防火墙–》高级配置,将相应的端口允许通过防火墙。
查看端口转换规则是否生效
1.打开powershell,输入下面的命令看自己设定的规则有没有:
netsh interface portproxy show all
2.看设定的端口有没有被监听,或者使用nc、telnet、curl等命令工具看一下对应的wsl端口是不是开启了
netstat -a -n -p tcp
如果都没有,那么你可以关注一下下面notice部分的内容。
notice
如果没有生效,肯能需要重启一下相应的服务:
win+r打开运行窗口,并打开服务程序services.msc
:
重启一下图中的两个服务: