Hyper-V 和 WSL2 网络无法通信

Hyper-V 和 WSL2 网络无法通信

我有一台 Windows 10 Pro(版本 20H2)计算机,情况如下: 在此处输入图片描述

主机、Hyper-V VM 和 WSL2 均可访问 Internet,它们均可相互通信,但 wsl2 和 VM 则不能(红色箭头)。

我的问题是我无法从 VM ping 或 ssh wsl2,反之亦然。

Hyper-V VM 使用“默认交换机”vNet:172.29.96.1,网络掩码:255.255.240.0,连接类型为内部

WSL2 使用“WSL”vNet:172.23.240.1,网络掩码:255.255.240.0,连接类型:内部

有第三个 vNet,名为“nat”,我可以使用“ipconfig”看到它,但它未在 Hyper-V 虚拟交换机管理器中列出:172.25.128.1,网络掩码 255.255.240.0,连接类型:?

有人能帮帮我吗?谢谢

答案1

我几乎是偶然发现的,但它在我的计算机上运行正常。我在 Windows 10 22H2 上的 Hyper-V 虚拟机中运行 Raspberry Pi Desktop

  1. 在 Hyper-v 中创建 RPi 桌面,注意我的 RPi 安装会循环进行,除非我选择跳过更新。安装后,编辑 Hyper-v VM 设置并将网络适配器设置为“默认交换机”。然后,您可以打开终端并 sudo apt upgrade sudo apt install
  2. 启动并连接到VM
  3. 启用 SSH——对于 RPi 桌面,您可以在首选项 -> RPi 配置中执行此操作
  4. 查找 ipaddress(VM 命令行中的 ifconfig)
  5. 在 Windows 上从 PowerShell 对 IP 地址执行 ping 操作。

应该可以 ping 通

我的主要目的是与虚拟机交换文件。为此,我使用 WinSCP,一切正常。这一切都在同一台机器上。我无法从网络上的其他机器访问它。我只是运行 WinSCP 和/或 WSL2 Linux 终端和/或 PowerShell 的多个实例。

显然,Windows 将 IP 地址识别为 VM 的 IP 地址并转移流量,但仅限于同一台机器。

这仅是一种解决方法,而不是完整的解决方案,但我希望它可以对某些人有所帮助。

答案2

我最终找到了解决方案。

基本上我需要的只是设置端口转发。

看看这里:https://github.com/microsoft/WSL/issues/4150

相关内容