我有一个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 却不可以。
知道为什么这不起作用以及如何解决这个问题吗?
担