ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# 如何在局域网的其他主机上中访问本机的WSL2 https://zhuanlan.zhihu.com/p/593263088 2023/9/19 更新: WSL 2 发布了最新版本 2.0.0,这个版本开始,自带支持新的镜像网络解决所有的网络相关问题。 你需要做的就是: 1. 加入 Windows Insider,选择 Release Preview Channel (发布预览通道)然后更新系统。如果不想加入 insider 的话可以等待过几天的 23h2 更新,反正也快了。 2. 更新 WSL:`wsl --update --pre-release` 3. 在用户目录`%USERPROFILE%`下面创建一个配置文件`.wslconfig`,写入以下内容: ~~~text [experimental] networkingMode=mirrored dnsTunneling=true firewall=true autoProxy=true ~~~ 搞定。 https://learn.microsoft.com/zh-cn/windows/wsl/networking https://zhuanlan.zhihu.com/p/425312804 ### 从局域网 (LAN) 访问 WSL 2 分发版 当使用 WSL 1 分发版时,如果计算机设置为可供 LAN 访问,那么在 WSL 中运行的应用程序也可供在 LAN 中访问。 这不是 WSL 2 中的默认情况。 WSL 2 有一个带有其自己独一无二的 IP 地址的虚拟化以太网适配器。 目前,若要启用此工作流,你需要执行与常规虚拟机相同的步骤。 (我们正在寻找改善此体验的方法。) 下面是使用[Netsh 接口 portproxy](https://learn.microsoft.com/zh-cn/windows-server/networking/technologies/netsh/netsh-interface-portproxy)Windows 命令添加端口代理的示例,该代理侦听主机端口并将该端口代理连接到 WSL 2 VM 的 IP 地址。 ``` netsh interface portproxy add v4tov4 listenport=<yourPortToForward> listenaddress=0.0.0.0 connectport=<yourPortToConnectToInWSL> connectaddress=(wsl hostname -I) ``` ``` netsh interface portproxy add v4tov4 listenport=8090 listenaddress=0.0.0.0 connectport=8090 connectaddress=localhost ``` 解释 **listenport**, 表示要监听的 Windows 端口 **listenaddress**, 表示监听地址, 0.0.0.0 表示匹配所有地址, 比如Windows 既有Wifi网卡, 又有有线网卡, 那么访问任意两个网卡, 都会被监听到,当然也可以指定其中之一的IP的地址 **connectaddress** ,要转发的地址, 这里设置为localhost, 是因为,我们可以通过localhost来访问WSL2, 如果暂不支持, 这里需要指定为 WSL2的IP地址 **connectport**, 要转发到的端口