从主机连接到 HyperV 来宾

O.O*_*.O. 5 hyper-v windows-10

我\xe2\x80\x99m 想知道是否可以从主机连接到HyperV Guest。来宾是 Linux 机器,主机是 Win 10 Pro。

\n\n

具体来说,我无法ssh从主机连接到 Linux 来宾。我可以ssh从本地来宾到自身,所以我知道ssh服务器在来宾上正确设置。我在来宾上设置了一些其他服务器,但我无法从主机访问它们中的任何一个,而只能从来宾本地访问它们。(我还将这些其他服务器绑定到 0.0.0.0)

\n\n

主机上的所有防火墙均已关闭,因此这不是问题。(Linux esp. Ubuntu 默认情况下有防火墙吗?我不记得\xe2\x80\x99 不记得设置过任何东西。)在来宾上,我可以访问互联网。我还可以从主机 ping 访客。除此之外,没有其他工作,即 nosshtelnet

\n\n
ssh 192.168.0.5\nssh: connect to host 192.168.0.5 port 22: Connection refused\n\ntelnet 192.168.0.5 22\nConnecting To 192.168.0.5...Could not open connection to the host, on port 22: Connect failed\n
Run Code Online (Sandbox Code Playgroud)\n\n

对于来宾,我完全按照使用 Hyper-V 管理器创建虚拟交换机(即该页面的上半部分)中提到的方式设置了虚拟交换机。虚拟交换机上的设置如下所示:

\n\n

VM虚拟交换机的设置

\n\n

访客网络适配器上的设置如下所示:

\n\n

访客网络适配器的设置

\n\n

我没有在任何地方设置 VLAN ID。我已经在 Linux Guest 上安装了 XRDP,并且可以通过 RDP 连接到它,没有任何问题。除了这些之外,我认为我没有任何异常,即我为所有内容(即主机操作系统、来宾操作系统等)选择了默认设置。

\n\n
\n\n

可能的解决方案:

\n\n

由于我无法从主机进行连接,因此我通过在虚拟机上添加网络适配器并将其连接到默认交换机来解决此问题,如Windows 10 Fall Creators Update 的 Hyper-V 中的 What\xe2\x80\x99s 新增功能?- 默认交换机现在我在虚拟机上有两个网络适配器,从主机到虚拟机的连接通过此交换机。我不确定这是否是最好的解决方案,但至少它有效。

\n

小智 3

根据您的需要,我们可以尝试另一种方法,即Win10 和 Windows Server 2016 中新引入的PowerShell Direct。PowerShell Direct 允许您远程连接到在 Hyper-V 主机上运行的 Windows 虚拟机,而无需虚拟机内部的任何网络连接。PowerShell Direct 使用 Hyper-V VMBus 在虚拟机内部进行连接。HVC SSH 基本上是 Linux VM 的 SSH Direct。它允许通过 Hyper-V VMBus 使用 SSH 连接到 Linux VM。您还可以使用 scp 在虚拟机内复制文件。详情请参阅以下链接。 https://www.thomasmaurer.ch/2018/04/hvc-ssh-direct-for-linux-vms-on-hyper-v/