如何从手机访问WSL中运行的Ionic开发服务器?
解决WSL中Ionic开发服务器手机访问问题
方法一:端口转发(最简便)
WSL默认采用NAT网络模式,需将WSL内的端口转发到Windows主机,同时开放防火墙权限:
- 在WSL终端执行
ip a,找到WSL的内网IP(通常为172.x.x.x段,比如你的172.21.17.144),记录端口8100。 - 打开Windows管理员权限的PowerShell,执行端口转发命令:
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=8100 connectaddress=172.21.17.144 connectport=8100 - 开放Windows防火墙的8100端口:
netsh advfirewall firewall add rule name="Ionic Dev Server" dir=in action=allow protocol=TCP localport=8100 - 手机连接与笔记本同一WiFi/热点后,直接访问笔记本主机的WiFi/热点IP:8100,比如热点IP是
192.168.37.1,就访问http://192.168.37.1:8100。
方法二:切换WSL为桥接模式
让WSL直接使用Windows的网络适配器,获取同网段IP:
- 先关闭WSL:
wsl --shutdown - 在管理员PowerShell中执行:
wsl --set-version <你的WSL发行版名称> 2 wsl --set-default-version 2 - 打开Windows「Hyper-V管理器」,找到对应的WSL虚拟机,右键选择「设置」→「网络适配器」,将网络连接方式改为「桥接网络」,并选择当前使用的WiFi或热点适配器。
- 重启WSL,执行
ip a即可看到与Windows同网段的IP,手机直接访问该IP加8100端口即可。
方法三:调整Ionic启动参数
启动服务器时强制监听所有网络接口:
ionic serve --host=0.0.0.0 --port=8100 --external
再配合上述端口转发或桥接模式,即可实现手机访问。
内容的提问来源于stack exchange,提问作者1uk
相关产品推荐
相关产品推荐

