使用 WSL1 的时候 用公网 IP 能进 WEB 服务, WSL2 只能本地 win10 本地使用 ip 连接, 公网连不上 这个有什么办法么
使用 WSL1 的时候 用公网 IP 能进 WEB 服务, WSL2 只能本地 win10 本地使用 ip 连接, 公网连不上 这个有什么办法么
1
Nasei Jul 27, 2019 via Android
没用过预览版,我猜正式版的时候怎么都得解决这些问题才有人用。现在临时用本地反向代理一下?
|
2
rayhy Jul 27, 2019 via Android
想问个不相关的问题?怎么快速升级到支持 wsl2 的版本?我昨天进入 Windows insider,也只是升级了一个版本,一直升级不到最新的那个
|
3
Qzier Jul 27, 2019 via iPhone
wsl2 使用的是单独分配的 IP,和虚拟机的 nat 模式一样,因为底层就是 hyper-v,而且还会和 vmware 冲突。wsl1 直接是共享的主机 IP。
|
6
Cy86 OP @Nasei
搜索 10 个小时文档的结果: 可以在 CMD 使用 win10 的 端口映射来搞定 netsh interface portproxy add v4tov4 listenport=22 connectaddress=127.0.0.1 listenaddress=* protocol=tcp 我看 还有网桥什么的, 不会用... 不知道能不能更方便: https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2003/cc781877(v=ws.10) |
8
rayhy Jul 27, 2019 via Android
|
9
okampfer Jul 27, 2019
wsl2 因为要用原生 linux 内核而改成 hyper-v 上的虚拟机,所以必然会有网络隔离。
这么看的话 wsl2 系统的网络连接方式现在还不能选择桥接? |
10
Cy86 OP @okampfer 没看懂桥接的文档,但感觉应该可以, 微软的官方文档: https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2003/cc778925%28v%3dws.10%29
目前使用的是 : win10 监听 80 端口 --> win10 的 portproxy --> 自定义域名 -->HOSTS 文件 --> 虚拟机地址 然后 任何访问 80 的流量都 转到 虚拟机里,但虚拟机 ip 会变, 目前看别人的 Python 改了改,能每次都自动更换 HOSTS 自定义域名对应的 IP 坏处就是 任何 导入 虚拟机的流量, 显示的 IP 都是 自己本地的 求桥接的方式或者教程 |
12
Rimifon Jan 4, 2020
WSL2 默认只将端口绑定了 ::1。可能是微软不想大家用 Win10 做 Linux 服务器而特意做的限制。如果大家都用 WSL 做服务器,对 IIS 有威胁啊。Windows 实现 WSL 也是绕了个大弯,WSL1 花了好大力气做 Linux 底层兼容。到了 WSL2 直接跑虚拟机糊弄人了。
|
14
Cy86 OP |