从 hyper-v 主机到 linux 客户机的 ssh 不起作用。从其他机器可以完美运行。如何修复?

从 hyper-v 主机到 linux 客户机的 ssh 不起作用。从其他机器可以完美运行。如何修复?

我有一个Linux的在 hyper-v 上启用了 ssh 的客户机主持人

根据分配的 vSwitch(默认或外部),我可以从 hyper-v 主机通过 ssh 进入 linux,但不能从其他系统通过 ssh 进入,或者我无法从 hyper-v 主机通过 ssh 进入 linux,但我可以从其他系统通过 ssh 进入。在这两种情况下,linux 都可以访问互联网。

主持人的 IP 地址是 192.168.1.204。其他测试机器的IP地址是192.168.1.7。

情况1: 默认 vSwitch 上的 Linux,分配地址 172.23.174.5

  • 来自主持人Linux的- 作品
  • ssh 来自主持人Linux的- 有效(因为网络 172.23.160/20 通过 Hyper-V 设置直接连接到主机)
  • 来自测试Linux的- 不起作用,因为它位于另一个子网上
  • ssh 来自测试Linux的- 不起作用,因为它位于另一个子网上
  • 来自Linux的升级至 8.8.8.8 - 有效

案例 2: 外部 vSwitch 上的 Linux,分配地址 192.168.1.214

  • 来自主持人Linux的-作品!!
  • ssh 来自主持人Linux的-“连接被拒绝”<<<---这就是罪魁祸首
  • 来自测试Linux的- 作品
  • ssh 来自测试Linux的- 作品
  • 来自Linux的升级至 8.8.8.8 - 有效

显然,我可以选择方案 1 (NAT) 并在主机上使用端口转发 (netsh interface portproxy..)。但我更想了解为什么方案 2 不起作用。特别是为什么从主机到 Linux 的 ping 可以起作用,而 ssh 却不可以。

知道为什么这不起作用以及如何解决这个问题吗?

相关内容